some generics
[cdmlib.git] / cdmlib-io / src / main / java / eu / etaxonomy / cdm / io / common / mapping / DbIgnoreMapper.java
index 5986e1af3346ceb0655cbb7d732c615d4a55233e..62f83cdd985e008ddc0eb672aa5ef5cf3f8261de 100644 (file)
@@ -15,6 +15,7 @@ import java.sql.SQLException;
 \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
@@ -25,21 +26,32 @@ import eu.etaxonomy.cdm.model.common.CdmBase;
  * @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
@@ -63,8 +75,12 @@ public class DbIgnoreMapper extends DbSingleAttributeImportMapperBase<DbImportSt
         * @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