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

org.unlaxer.jaddress.normalizer.VariantNormalizer Maven / Gradle / Ivy

The newest version!
package org.unlaxer.jaddress.normalizer;

public interface VariantNormalizer {

	String normalize(String value);

	String normalizeForAddressAsString(CharSequence charSequence);

	NormalizeResult normalizeForAddress(CharSequence charSequence);

	String normalizeKuromoji(String value);
	
	public static VariantNormalizer get() {
		return SINGLETON;
	}
	
	public static VariantNormalizer getNoEffect() {
		return SINGLETON_NO_EFFECT;
	}
	
	static class NoEffect implements VariantNormalizer{

		@Override
		public String normalize(String value) {
			return value;
		}

		@Override
		public String normalizeForAddressAsString(CharSequence charSequence) {
			return charSequence == null? 
					null:
					charSequence.toString();
		}

		@Override
		public NormalizeResult normalizeForAddress(CharSequence charSequence) {
			
			String value = charSequence == null ?
					null:
					charSequence.toString();
			
			NormalizeResult normalizeResult = new NormalizeResult();
			normalizeResult.source = value;
			normalizeResult.normalized  = value;
			return normalizeResult;
		}

		@Override
		public String normalizeKuromoji(String value) {
			return value;
		}
	}
	
	static VariantNormalizer SINGLETON = new VariantNormalizerImpl();
	static VariantNormalizer SINGLETON_NO_EFFECT = new NoEffect();

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy