All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.pepstock.charba.client.dom.safehtml.SafeHtmlString Maven / Gradle / Ivy

There is a newer version: 6.5-gwt
Show newest version
/**
    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at
    
      http://www.apache.org/licenses/LICENSE-2.0
    
    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
*/
package org.pepstock.charba.client.dom.safehtml;

import org.pepstock.charba.client.commons.Checker;

/**
 * Implements a simple {@link SafeHtml} wrapping a string.
 * 
 * @author Andrea "Stock" Stocchero
 *
 */
final class SafeHtmlString implements SafeHtml {

	// html wrapped string
	private String html;

	/**
	 * Creates an object from a string.
	 *
	 * @param html the string to be wrapped
	 */
	SafeHtmlString(String html) {
		// checks if html is consistent
		// stores it
		this.html = Checker.checkAndGetIfValid(html, "HTML argument");
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see org.pepstock.charba.client.dom.SafeHtml#asString()
	 */
	@Override
	public String asString() {
		return html;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see java.lang.Object#hashCode()
	 */
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + html.hashCode();
		return result;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see java.lang.Object#equals(java.lang.Object)
	 */
	@Override
	public boolean equals(Object obj) {
		// checks if is the same object
		if (this == obj) {
			return true;
		}
		// checks if argument is null
		if (obj == null) {
			return false;
		}
		// checks if the class is the same
		if (getClass() != obj.getClass()) {
			return false;
		}
		// casts to a safe html string
		SafeHtmlString other = (SafeHtmlString) obj;
		// compares and returns if html wrapped string is equals
		return html.equals(other.html);
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy