new source SQLServer2008 added
[cdmlib.git] / cdmlib-io / src / main / java / eu / etaxonomy / cdm / io / tcsrdf / TcsRdfTaxonNameRelationsImport.java
index 7dbb191eccc4c5091bbd2737fa59aaeb9c6451f5..9c9d9e5c7552074bd5d58ebe89a309e0c38e7419 100644 (file)
@@ -11,7 +11,6 @@ package eu.etaxonomy.cdm.io.tcsrdf;
 \r
 import java.util.HashSet;\r
 import java.util.List;\r
-import java.util.Map;\r
 import java.util.Set;\r
 \r
 import org.apache.log4j.Logger;\r
@@ -20,13 +19,9 @@ import org.jdom.Element;
 import org.jdom.Namespace;\r
 import org.springframework.stereotype.Component;\r
 \r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
 import eu.etaxonomy.cdm.api.service.INameService;\r
-import eu.etaxonomy.cdm.io.common.CdmIoBase;\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.model.common.CdmBase;\r
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
 import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
 \r
@@ -36,7 +31,7 @@ import eu.etaxonomy.cdm.model.reference.ReferenceBase;
  * @version 1.0\r
  */\r
 @Component\r
-public class TcsRdfTaxonNameRelationsImport extends CdmIoBase<IImportConfigurator> implements ICdmIO<IImportConfigurator> {\r
+public class TcsRdfTaxonNameRelationsImport extends TcsRdfImportBase implements ICdmIO<TcsRdfImportState> {\r
        private static final Logger logger = Logger.getLogger(TcsRdfTaxonNameRelationsImport.class);\r
 \r
        private static int modCount = 5000;\r
@@ -46,7 +41,7 @@ public class TcsRdfTaxonNameRelationsImport extends CdmIoBase<IImportConfigurato
        }\r
        \r
        @Override\r
-       public boolean doCheck(IImportConfigurator config){\r
+       public boolean doCheck(TcsRdfImportState state){\r
                boolean result = true;\r
                logger.warn("Checking for TaxonNameRelations not yet implemented");\r
                //result &= checkArticlesWithoutJournal(tcsConfig);\r
@@ -56,10 +51,10 @@ public class TcsRdfTaxonNameRelationsImport extends CdmIoBase<IImportConfigurato
        }\r
        \r
        @Override\r
-       public boolean doInvoke(IImportConfigurator config, Map<String, MapWrapper<? extends CdmBase>> stores){\r
+       public boolean doInvoke(TcsRdfImportState state){\r
                \r
-               MapWrapper<TaxonNameBase> taxonNameMap = (MapWrapper<TaxonNameBase>)stores.get(ICdmIO.TAXONNAME_STORE);\r
-               MapWrapper<ReferenceBase> referenceMap = (MapWrapper<ReferenceBase>)stores.get(ICdmIO.REFERENCE_STORE);\r
+               MapWrapper<TaxonNameBase> taxonNameMap = (MapWrapper<TaxonNameBase>)state.getStore(ICdmIO.TAXONNAME_STORE);\r
+               MapWrapper<ReferenceBase> referenceMap = (MapWrapper<ReferenceBase>)state.getStore(ICdmIO.REFERENCE_STORE);\r
                \r
                String tcsElementName;\r
                Namespace tcsNamespace;\r
@@ -67,19 +62,19 @@ public class TcsRdfTaxonNameRelationsImport extends CdmIoBase<IImportConfigurato
                String value;\r
 \r
                Set<TaxonNameBase> nameStore = new HashSet<TaxonNameBase>();\r
-               TcsRdfImportConfigurator tcsConfig = (TcsRdfImportConfigurator)config;\r
-               Element source = tcsConfig.getSourceRoot();\r
+               TcsRdfImportConfigurator config = state.getConfig();\r
+               Element source = config.getSourceRoot();\r
                \r
                logger.info("start makeNameRelationships ...");\r
                INameService nameService = getNameService();\r
 \r
 //             <tn:hasBasionym rdf:resource="palm_tn_14530"/>\r
                \r
-               Element root = tcsConfig.getSourceRoot();\r
+               Element root = config.getSourceRoot();\r
                boolean success =true;\r
                \r
-               Namespace rdfNamespace = tcsConfig.getRdfNamespace();\r
-               Namespace taxonNameNamespace = tcsConfig.getTnNamespace();\r
+               Namespace rdfNamespace = config.getRdfNamespace();\r
+               Namespace taxonNameNamespace = config.getTnNamespace();\r
                \r
                List<Element> elTaxonNames = root.getChildren("TaxonName", taxonNameNamespace);\r
                \r
@@ -123,7 +118,9 @@ public class TcsRdfTaxonNameRelationsImport extends CdmIoBase<IImportConfigurato
                                        }\r
                                }\r
                                String ruleConcidered = null; //TODO\r
-                               fromName.addBasionym(basionym, ruleConcidered);\r
+                               String microCitation = null; //TODO;\r
+                               ReferenceBase citation = null; //TODO;\r
+                               fromName.addBasionym(basionym, citation, microCitation, ruleConcidered);\r
                                nameStore.add(fromName);\r
 \r
                        }\r
@@ -133,7 +130,7 @@ public class TcsRdfTaxonNameRelationsImport extends CdmIoBase<IImportConfigurato
                //TODO\r
                \r
                logger.info(nameRelCount + " nameRelations handled");\r
-               nameService.saveTaxonNameAll(nameStore);\r
+               nameService.save(nameStore);\r
                logger.info("end makeNameRelationships ...");\r
                return success;\r
        }\r
@@ -141,8 +138,8 @@ public class TcsRdfTaxonNameRelationsImport extends CdmIoBase<IImportConfigurato
        /* (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.isDoRelNames();\r
+       protected boolean isIgnore(TcsRdfImportState state){\r
+               return ! state.getConfig().isDoRelNames();\r
        }\r
 \r
 }\r