\r
import org.apache.log4j.Logger;\r
\r
+import eu.etaxonomy.cdm.common.CdmUtils;\r
import eu.etaxonomy.cdm.io.common.DbImportStateBase;\r
import eu.etaxonomy.cdm.model.common.CdmBase;\r
\r
* @created 25.02.2010\r
* @version 1.0\r
*/\r
-public class DbIgnoreMapper extends DbSingleAttributeImportMapperBase<DbImportStateBase, CdmBase> {\r
- @SuppressWarnings("unused")\r
+public class DbIgnoreMapper extends DbSingleAttributeImportMapperBase<DbImportStateBase<?,?>, CdmBase> {\r
private static final Logger logger = Logger.getLogger(DbIgnoreMapper.class);\r
\r
+//*************************** FACTORY ***************************************************************//\r
+\r
public static DbIgnoreMapper NewInstance(String dbAttributeToIgnore){\r
- return new DbIgnoreMapper(dbAttributeToIgnore, null, null);\r
+ return new DbIgnoreMapper(dbAttributeToIgnore, null, null, null);\r
+ }\r
+ \r
+ public static DbIgnoreMapper NewInstance(String dbAttributeToIgnore, String ignoreReason){\r
+ return new DbIgnoreMapper(dbAttributeToIgnore, null, null, ignoreReason);\r
}\r
\r
+//*************************** VARIABLES ***************************************************************//\r
+ private String ignoreReason;\r
+ \r
+//*************************** CONSTRUCTOR ***************************************************************//\r
+ \r
/**\r
* @param dbAttributString\r
* @param cdmAttributeString\r
* @param defaultValue\r
*/\r
- protected DbIgnoreMapper(String dbAttributString, String cdmAttributeString, Object defaultValue) {\r
+ protected DbIgnoreMapper(String dbAttributString, String cdmAttributeString, Object defaultValue, String ignoreReason) {\r
super(dbAttributString, cdmAttributeString, defaultValue);\r
+ this.ignoreReason = ignoreReason;\r
}\r
\r
/* (non-Javadoc)\r
* @see eu.etaxonomy.cdm.io.common.mapping.DbSingleAttributeImportMapperBase#initialize(eu.etaxonomy.cdm.io.common.DbImportStateBase, java.lang.Class)\r
*/\r
@Override\r
- public void initialize(DbImportStateBase state, Class<? extends CdmBase> destinationClass) {\r
- //super.initialize(state, destinationClass); not needed\r
+ public void initialize(DbImportStateBase<?,?> state, Class<? extends CdmBase> destinationClass) {\r
+ String localIgnoreReason = "";\r
+ if (CdmUtils.isNotEmpty(ignoreReason)){\r
+ localIgnoreReason = "(" + ignoreReason +")";\r
+ }\r
+ logger.warn(this.getSourceAttribute() + " ignored" + localIgnoreReason);\r
}\r
\r
\r