code: private static PrefsTransform getTransform(TypeName typeName) {
  		if (typeName.isPrimitive()) {
  			return getPrimitiveTransform(typeName);
  		}
  
  		if (typeName instanceof ArrayTypeName) {
  			ArrayTypeName typeNameArray = (ArrayTypeName) typeName;
  			TypeName componentTypeName = typeNameArray.componentType;
  
  			if (TypeUtility.isEquals(componentTypeName, Byte.TYPE.toString())) {
  				return new ByteArrayPrefsTransform();
  			} else {
  				return new ArrayPrefsTransform();
  			}
  		} else if (typeName instanceof ParameterizedTypeName) {
  			ParameterizedTypeName parameterizedTypeName = (ParameterizedTypeName) typeName;
  			if (TypeUtility.isList(parameterizedTypeName)) {
  				return new ListPrefsTransformation();
  			} else if (TypeUtility.isSet(parameterizedTypeName)) {
  				return new SetPrefsTransformation();
  			} else if (TypeUtility.isMap(parameterizedTypeName)) {
  				return new MapPrefsTransformation();
  			}
  		}
  
  		PrefsTransform transform;
  
  		transform = getLanguageTransform(typeName);
  		if (transform != null) {
  			return transform;
  		}
  
  		transform = getUtilTransform(typeName);
  		if (transform != null) {
  			return transform;
  		}
  
  		transform = getMathTransform(typeName);
  		if (transform != null) {
  			return transform;
  		}
  
  		transform = getNetTransform(typeName);
  		if (transform != null) {
  			return transform;
  		}
  
  		transform = getSqlTransform(typeName);
  		if (transform != null) {
  			return transform;
  		}
  
  		if (TypeUtility.isEnum(typeName)) {
  			return new EnumPrefsTransform(typeName);
  		}
  
  		return new ObjectPrefsTransform();
  	}
docs: Gets the transform.
  
  @param typeName the type name
  @return the transform