4 package eu
.etaxonomy
.cdm
.io
.berlinModel
;
6 import java
.sql
.ResultSet
;
7 import java
.sql
.SQLException
;
9 import org
.apache
.log4j
.Logger
;
11 import eu
.etaxonomy
.cdm
.api
.application
.CdmApplicationController
;
12 import eu
.etaxonomy
.cdm
.api
.service
.IAgentService
;
13 import eu
.etaxonomy
.cdm
.io
.source
.Source
;
14 import eu
.etaxonomy
.cdm
.model
.reference
.ReferenceBase
;
15 import eu
.etaxonomy
.cdm
.model
.agent
.Team
;
22 public class BerlinModelAuthorIO
{
23 private static final Logger logger
= Logger
.getLogger(BerlinModelAuthorIO
.class);
25 private static int modCount
= 1000;
27 public static boolean invoke(BerlinModelImportConfigurator bmiConfig
, CdmApplicationController cdmApp
,
28 MapWrapper
<Team
> teamMap
){
30 Source source
= bmiConfig
.getSource();
34 logger
.info("start makeAuthors ...");
35 boolean success
= true ;
37 IAgentService agentService
= cdmApp
.getAgentService();
39 //get data from database
43 ResultSet rs
= source
.getResultSet(strQuery
) ;
50 if ((i
++ % modCount
) == 0){ logger
.info("Authors handled: " + (i
-1));}
52 //create TaxonName element
53 int teamId
= rs
.getInt("AuthorTeamId");
54 //int rankId = rs.getInt("rankFk");
55 //Object nomRefFk = rs.getObject("NomRefFk");
57 Team team
= new Team();
59 dbAttrName
= "AuthorTeamCache";
60 cdmAttrName
= "titleCache";
61 success
&= ImportHelper
.addStringValue(rs
, team
, dbAttrName
, cdmAttrName
);
71 ImportHelper
.setOriginalSource(team
, bmiConfig
.getSourceReference(), teamId
);
73 teamMap
.put(teamId
, team
);
74 } //while rs.hasNext()
75 } catch (SQLException e
) {
76 logger
.error("SQLException:" + e
);
81 logger
.info(i
+ " authors handled");
82 agentService
.saveAgentAll(teamMap
.objects());
84 // makeNameSpecificData(nameMap);
86 logger
.info("end makeTaxonNames ...");