class XssCleanDeserializerBase extends JsonDeserializer<String> {

	@Override
	public String deserialize(JsonParser p, DeserializationContext ctx) throws IOException {<FILL_FUNCTION_BODY>}

	/**
	 * 清理 xss
	 * @param name name
	 * @param text text
	 * @return String
	 */
	public abstract String clean(String name, String text) throws IOException;

}

		JsonToken jsonToken = p.getCurrentToken();
		if (JsonToken.VALUE_STRING != jsonToken) {
			throw MismatchedInputException.from(p, String.class,
					"mica-xss: can't deserialize value of type java.lang.String from " + jsonToken);
		}
		// 解析字符串
		String text = p.getValueAsString();
		if (text == null) {
			return null;
		}

		// xss 配置
		return this.clean(p.getCurrentName(), text);
	
<methods>public void <init>() ,public abstract java.lang.String deserialize(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext) throws java.io.IOException, com.fasterxml.jackson.core.JacksonException,public java.lang.String deserialize(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext, java.lang.String) throws java.io.IOException, com.fasterxml.jackson.core.JacksonException,public java.lang.Object deserializeWithType(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.jsontype.TypeDeserializer) throws java.io.IOException, com.fasterxml.jackson.core.JacksonException,public java.lang.Object deserializeWithType(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.jsontype.TypeDeserializer, java.lang.String) throws java.io.IOException, com.fasterxml.jackson.core.JacksonException,public com.fasterxml.jackson.databind.deser.SettableBeanProperty findBackReference(java.lang.String) ,public java.lang.Object getAbsentValue(com.fasterxml.jackson.databind.DeserializationContext) throws com.fasterxml.jackson.databind.JsonMappingException,public JsonDeserializer<?> getDelegatee() ,public com.fasterxml.jackson.databind.util.AccessPattern getEmptyAccessPattern() ,public java.lang.Object getEmptyValue() ,public java.lang.Object getEmptyValue(com.fasterxml.jackson.databind.DeserializationContext) throws com.fasterxml.jackson.databind.JsonMappingException,public Collection<java.lang.Object> getKnownPropertyNames() ,public com.fasterxml.jackson.databind.util.AccessPattern getNullAccessPattern() ,public java.lang.String getNullValue() ,public java.lang.String getNullValue(com.fasterxml.jackson.databind.DeserializationContext) throws com.fasterxml.jackson.databind.JsonMappingException,public com.fasterxml.jackson.databind.deser.impl.ObjectIdReader getObjectIdReader() ,public Class<?> handledType() ,public boolean isCachable() ,public com.fasterxml.jackson.databind.type.LogicalType logicalType() ,public JsonDeserializer<?> replaceDelegatee(JsonDeserializer<?>) ,public java.lang.Boolean supportsUpdate(com.fasterxml.jackson.databind.DeserializationConfig) ,public JsonDeserializer<java.lang.String> unwrappingDeserializer(com.fasterxml.jackson.databind.util.NameTransformer) <variables>