public void process(DatabaseMapping mapping, MappingAccessor accessor, MetadataClass referenceClass, boolean isForMapKey) {
// Set the field classification type on the mapping based on the
// referenceClass type.
if (isValidClobType(referenceClass)) {
setFieldClassification(mapping, java.sql.Clob.class, isForMapKey);
setConverter(mapping, new TypeConversionConverter(mapping), isForMapKey);
} else if (isValidBlobType(referenceClass)) {
setFieldClassification(mapping, java.sql.Blob.class, isForMapKey);
setConverter(mapping, new TypeConversionConverter(mapping), isForMapKey);
} else if (referenceClass.extendsInterface(Serializable.class)) {
setFieldClassification(mapping, java.sql.Blob.class, isForMapKey);
setConverter(mapping, new SerializedObjectConverter(mapping), isForMapKey);
} else {
// The referenceClass is neither a valid BLOB or CLOB attribute.