(no commit message)
[cdmlib.git] / cdmlib-io / src / main / java / eu / etaxonomy / cdm / io / berlinModel / BerlinModelOccurrenceIO.java
index 973a2acc1da22c875c33b941c525a0c6b6bbec5e..44296fb711aa80428baeefc8fea5a7a991fdbbf8 100644 (file)
@@ -6,18 +6,23 @@ package eu.etaxonomy.cdm.io.berlinModel;
 import java.sql.ResultSet;\r
 import java.sql.SQLException;\r
 import java.util.HashSet;\r
+import java.util.Map;\r
 import java.util.Set;\r
 \r
 import org.apache.log4j.Logger;\r
 import static eu.etaxonomy.cdm.io.berlinModel.BerlinModelTransformer.*;\r
 import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
 import eu.etaxonomy.cdm.api.service.ITaxonService;\r
+import eu.etaxonomy.cdm.io.common.ICdmIO;\r
+import eu.etaxonomy.cdm.io.common.IImportConfigurator;\r
 import eu.etaxonomy.cdm.io.common.MapWrapper;\r
 import eu.etaxonomy.cdm.io.common.Source;\r
+import eu.etaxonomy.cdm.model.common.CdmBase;\r
 import eu.etaxonomy.cdm.model.common.Language;\r
 import eu.etaxonomy.cdm.model.description.CommonTaxonName;\r
 import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
 import eu.etaxonomy.cdm.model.description.TextData;\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
 import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
 import eu.etaxonomy.cdm.model.taxon.Taxon;\r
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
@@ -27,12 +32,20 @@ import eu.etaxonomy.cdm.model.taxon.TaxonBase;
  * @author a.mueller\r
  *\r
  */\r
-public class BerlinModelOccurrenceIO {\r
+public class BerlinModelOccurrenceIO  extends BerlinModelIOBase {\r
        private static final Logger logger = Logger.getLogger(BerlinModelOccurrenceIO.class);\r
 \r
        private static int modCount = 10000;\r
 \r
-       public static boolean check(BerlinModelImportConfigurator bmiConfig){\r
+       public BerlinModelOccurrenceIO(){\r
+               super();\r
+       }\r
+       \r
+       /* (non-Javadoc)\r
+        * @see eu.etaxonomy.cdm.io.common.CdmIoBase#doCheck(eu.etaxonomy.cdm.io.common.IImportConfigurator)\r
+        */\r
+       @Override\r
+       protected boolean doCheck(IImportConfigurator config){\r
                boolean result = true;\r
                logger.warn("Checking for Occurrence not yet implemented");\r
                //result &= checkArticlesWithoutJournal(bmiConfig);\r
@@ -41,8 +54,16 @@ public class BerlinModelOccurrenceIO {
                return result;\r
        }\r
 \r
-       public static boolean invoke(BerlinModelImportConfigurator bmiConfig, CdmApplicationController cdmApp, \r
-                       MapWrapper<TaxonBase> taxonMap, MapWrapper<ReferenceBase> referenceMap){\r
+       /* (non-Javadoc)\r
+        * @see eu.etaxonomy.cdm.io.common.CdmIoBase#doInvoke(eu.etaxonomy.cdm.io.common.IImportConfigurator, eu.etaxonomy.cdm.api.application.CdmApplicationController, java.util.Map)\r
+        */\r
+       @Override\r
+       protected boolean doInvoke(IImportConfigurator config, CdmApplicationController cdmApp, \r
+                       Map<String, MapWrapper<? extends CdmBase>> stores){\r
+               \r
+               MapWrapper<TaxonBase> taxonMap = (MapWrapper<TaxonBase>)stores.get(ICdmIO.TAXON_STORE);\r
+               MapWrapper<ReferenceBase> referenceMap = (MapWrapper<ReferenceBase>)stores.get(ICdmIO.REFERENCE_STORE);\r
+               BerlinModelImportConfigurator bmiConfig = (BerlinModelImportConfigurator)config;\r
                \r
                if (true){\r
                        return false;\r
@@ -136,5 +157,12 @@ public class BerlinModelOccurrenceIO {
 \r
        }\r
 \r
+       /* (non-Javadoc)\r
+        * @see eu.etaxonomy.cdm.io.common.CdmIoBase#isIgnore(eu.etaxonomy.cdm.io.common.IImportConfigurator)\r
+        */\r
+       protected boolean isIgnore(IImportConfigurator config){\r
+               return ! config.isDoOccurrence();\r
+       }\r
+\r
        \r
 }\r