
com.moon.mapping.processing.ConvertStrategy Maven / Gradle / Ivy
package com.moon.mapping.processing;
import java.util.Collection;
import java.util.Map;
/**
* @author benshaoye
*/
public enum ConvertStrategy {
/**
* 正向映射
*/
FORWARD {
@Override
public Map> getMethodAttrMap(BaseDefinition definition) {
return definition.getGetterAttrMap();
}
@Override
public String forMethod(
MapMethodFactory factory, String thisClass, String thatClass, Collection fields
) { return factory.unsafeForward(thisClass, thatClass, fields); }
@Override
public boolean isIgnore(PropertyAttr attr) { return attr.isIgnoreForward(); }
},
/**
* 反向映射
*/
BACKWARD {
@Override
public Map> getMethodAttrMap(BaseDefinition definition) {
return definition.getSetterAttrMap();
}
@Override
public String forMethod(
MapMethodFactory factory, String thisClass, String thatClass, Collection fields
) { return factory.unsafeBackward(thisClass, thatClass, fields); }
@Override
public boolean isIgnore(PropertyAttr attr) { return attr.isIgnoreBackward(); }
};
public abstract Map> getMethodAttrMap(BaseDefinition definition);
public abstract String forMethod(
MapMethodFactory factory, String thisClass, String thatClass, Collection fields
);
public abstract boolean isIgnore(PropertyAttr attr);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy