storm-apt/impl/src/main/java/com/turbomanage/storm/apt/StormEnvironment.java
public boolean addConverter(ConverterModel converter) {
		if (converters.contains(converter))
			return true;
		for (String type : converter.getConvertibleTypes()) {
			// TODO what if already put the 1st type?
			if (typeMap.containsKey(type)
					&& !typeMap.get(type).equals(converter))
				return false;
			typeMap.put(type, converter);
		}
		converters.add(converter);
		logger.info("Added " + converter.getQualifiedClassName());
		return true;
	}
public boolean addConverter(ConverterModel converter) {
		if (converters.contains(converter))
			return true;
		for (String type : converter.getConvertibleTypes()) {
			// TODO what if already put the 1st type?
			if (typeMap.containsKey(type)
					&& !typeMap.get(type).equals(converter))
				return false;
			typeMap.put(type, converter);
		}
		converters.add(converter);
		logger.info("Added " + converter.getQualifiedClassName());
		return true;
	}
Register a custom {@link TypeConverter} for a given data (field) type.
This method is called at compile time by the annotation processor. In
order for the TypeConverter to be visible, it must be in a jar on the
client project's annotation factory classpath.

@param converter
@return true if successful, false if converter was already registered for
type