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

base.template.StringAttributeRenderer Maven / Gradle / Ivy

/**
 * Creative commons Attribution-NonCommercial license.
 *
 * http://creativecommons.org/licenses/by-nc/2.5/au/deed.en_GB
 *
 * NO WARRANTY IS GIVEN OR IMPLIED, USE AT YOUR OWN RISK.
 */
package base.template;

import java.util.Locale;
import org.stringtemplate.v4.AttributeRenderer;
import base.text.StringHelper;

public class StringAttributeRenderer implements AttributeRenderer {

	public String toString(Object o, String format, Locale locale) {
		if(format == null || o == null) {
			return (String)o;
		}

		if(format.equals("html")) {
			return StringHelper.escapeHtml((String)o);
		}

		if(format.equals("uppercase")) {
			return ((String)o).toUpperCase();
		}

		if(format.equals("lowercase")) {
			return ((String)o).toLowerCase();
		}

		if(format.equals("url")) {
			return StringHelper.urlEscape((String)o);
		}

		if(format.startsWith("max")) {
			return StringHelper.maxLength((String)o, Integer.parseInt(format.substring(3)));
		}

		if(format.startsWith("htmlmax")) {
			return StringHelper.escapeHtml(StringHelper.maxLength((String)o, Integer.parseInt(format.substring(7))));
		}

		if(format.equals("xml")) {
			return StringHelper.escapeXml((String)o);
		}

		return (String)o;
	}

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy