import java.util.Set;
import java.util.UUID;
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.hibernate.Session;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.security.authentication.AuthenticationCredentialsNotFoundException;
import eu.etaxonomy.cdm.model.agent.Institution;
import eu.etaxonomy.cdm.model.name.NomenclaturalStatus;
import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;
-import eu.etaxonomy.cdm.model.name.Rank;
+import eu.etaxonomy.cdm.model.name.RankClass;
import eu.etaxonomy.cdm.model.name.TaxonName;
import eu.etaxonomy.cdm.model.permission.CRUD;
import eu.etaxonomy.cdm.model.permission.GrantedAuthorityImpl;
import eu.etaxonomy.cdm.model.term.DefinedTerm;
import eu.etaxonomy.cdm.model.term.DefinedTermBase;
import eu.etaxonomy.cdm.model.term.TermVocabulary;
+import eu.etaxonomy.cdm.persistence.dao.common.IPreferenceDao;
import eu.etaxonomy.cdm.persistence.dao.hibernate.taxonGraph.AbstractHibernateTaxonGraphProcessor;
import eu.etaxonomy.cdm.persistence.dao.taxonGraph.TaxonGraphException;
-import eu.etaxonomy.cdm.persistence.hibernate.permission.CdmAuthority;
-import eu.etaxonomy.cdm.persistence.hibernate.permission.Role;
+import eu.etaxonomy.cdm.persistence.permission.CdmAuthority;
+import eu.etaxonomy.cdm.persistence.permission.Role;
import eu.etaxonomy.cdm.vaadin.model.registration.KindOfUnitTerms;
import eu.etaxonomy.cdm.vaadin.permission.RolesAndPermissions;
*/
public class RegistrationRequiredDataInserter extends AbstractDataInserter {
+ private static final Logger logger = LogManager.getLogger();
+
// protected static final String PARAM_NAME_CREATE = "registrationCreate";
//
// protected static final String PARAM_NAME_WIPEOUT = "registrationWipeout";
private static final EnumSet<CRUD> CREATE_READ = EnumSet.of(CRUD.CREATE, CRUD.READ);
private static final EnumSet<CRUD> CREATE_READ_UPDATE_DELETE = EnumSet.of(CRUD.CREATE, CRUD.READ, CRUD.UPDATE, CRUD.DELETE);
- private static final Logger logger = Logger.getLogger(RegistrationRequiredDataInserter.class);
// private ExtensionType extensionTypeIAPTRegData;
- Map<String, Institution> instituteMap = new HashMap<>();
+ private Map<String, Institution> instituteMap = new HashMap<>();
public static boolean commandsExecuted = false;
@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
-
if(hasRun){
return;
}
-
runAsAuthentication(Role.ROLE_ADMIN);
-
insertRequiredData();
executeSuppliedCommands();
-
restoreAuthentication();
-
hasRun = true;
}
repo.getGroupService().saveOrUpdate(groupSubmitter);
TermVocabulary<DefinedTerm> kindOfUnitVocabulary = repo.getVocabularyService().find(KindOfUnitTerms.KIND_OF_UNIT_VOCABULARY().getUuid());
- if(repo.getVocabularyService().find(KindOfUnitTerms.KIND_OF_UNIT_VOCABULARY().getUuid()) == null){
+ if(kindOfUnitVocabulary == null){
kindOfUnitVocabulary = repo.getVocabularyService().save(KindOfUnitTerms.KIND_OF_UNIT_VOCABULARY());
}
return ga;
}
- /**
- *
- */
private void executeSuppliedCommands() {
if(commandsExecuted){
String taxonGraphCreate = System.getProperty(TAXON_GRAPH_CREATE);
if(taxonGraphCreate != null){
- AbstractHibernateTaxonGraphProcessor processor = new AbstractHibernateTaxonGraphProcessor() {
+ IPreferenceDao prefDao = (IPreferenceDao) repo.getBean("preferenceDao");
+ AbstractHibernateTaxonGraphProcessor processor = new AbstractHibernateTaxonGraphProcessor(prefDao) {
@Override
public Session getSession() {
return repo.getSession();
}
};
- logger.setLevel(Level.DEBUG);
+
int chunksize = 1000;
int pageIndex = 0;
TransactionStatus tx;
repo.commitTransaction(tx);
break;
}
- logger.debug(TAXON_GRAPH_CREATE + ": chunk " + pageIndex + "/" + Math.ceil(page.getCount() / chunksize));
+ if (logger.isDebugEnabled()){logger.debug( TAXON_GRAPH_CREATE + ": chunk " + pageIndex + "/" + Math.ceil(page.getCount() / chunksize));}
taxa = new ArrayList<>();
for(TaxonName name : page.getRecords()){
- if(name.getRank() != null && name.getRank().isLower(Rank.GENUS())){
+ if(name.getRank() != null && name.getRank().isLowerThan(RankClass.Genus)){
NomenclaturalStatusType illegitimType = findILegitimateStatusType(name);
if(illegitimType == null){
Taxon taxon;
try {
- logger.debug("Processing name: " + name.getTitleCache() + " [" + name.getRank().getLabel() + "]");
+ if (logger.isDebugEnabled()){logger.debug("Processing name: " + name.getTitleCache() + " [" + name.getRank().getLabel() + "]");}
taxon = processor.assureSingleTaxon(name);
processor.updateEdges(taxon);
taxa.add(taxon);
logger.error(e.getMessage());
}
} else {
- logger.debug("Skipping illegitimate name: " + name.getTitleCache() + " " + illegitimType.getLabel() + " [" + name.getRank().getLabel() + "]");
+ if (logger.isDebugEnabled()){logger.debug("Skipping illegitimate name: " + name.getTitleCache() + " " + illegitimType.getLabel() + " [" + name.getRank().getLabel() + "]");}
}
} else {
- logger.debug("Skipping name: " + name.getTitleCache() + " [" + (name.getRank() != null ? name.getRank().getLabel() : "NULL") + "]");
+ if (logger.isDebugEnabled()){logger.debug("Skipping name: " + name.getTitleCache() + " [" + (name.getRank() != null ? name.getRank().getLabel() : "NULL") + "]");}
}
}
repo.getTaxonService().saveOrUpdate(taxa);
private NomenclaturalStatusType findILegitimateStatusType(TaxonName name){
for(NomenclaturalStatus status : name.getStatus()){
- if(status.getType() != null && !status.getType().isLegitimateType()){
+ if(status.getType() != null && !status.getType().isLegitimate()){
return status.getType();
}
}