From 3615c3483692c6b35a5d5f5683e1126569da9abf Mon Sep 17 00:00:00 2001 From: =?utf8?q?Andreas=20M=C3=BCller?= Date: Mon, 20 Oct 2014 19:14:52 +0000 Subject: [PATCH] allow saving FullDataGenerator data through API (preliminary) --- .../persistence/dao/common/ICdmGenericDao.java | 2 ++ .../hibernate/common/CdmGenericDaoImpl.java | 8 +++++++- .../FullCoverageDataGenerator.java | 18 +++++++++++------- .../cdm/api/service/CommonServiceImpl.java | 8 ++++++-- .../cdm/api/service/ICommonService.java | 7 ++++++- 5 files changed, 32 insertions(+), 11 deletions(-) diff --git a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/common/ICdmGenericDao.java b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/common/ICdmGenericDao.java index d74b432696..41e13990c5 100644 --- a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/common/ICdmGenericDao.java +++ b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/common/ICdmGenericDao.java @@ -206,4 +206,6 @@ public interface ICdmGenericDao { public boolean containsValue(PersistentCollection col, Object element); Set getReferencingObjectsForDeletion(CdmBase referencedCdmBase); + + public void createFullSampleData(); } diff --git a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/common/CdmGenericDaoImpl.java b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/common/CdmGenericDaoImpl.java index e7228924a8..a4dcdf05a5 100644 --- a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/common/CdmGenericDaoImpl.java +++ b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/common/CdmGenericDaoImpl.java @@ -69,6 +69,7 @@ import org.springframework.stereotype.Repository; import eu.etaxonomy.cdm.common.CdmUtils; import eu.etaxonomy.cdm.common.DoubleResult; +import eu.etaxonomy.cdm.datagenerator.FullCoverageDataGenerator; import eu.etaxonomy.cdm.hibernate.DOIUserType; import eu.etaxonomy.cdm.hibernate.EnumUserType; import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper; @@ -1279,7 +1280,12 @@ public class CdmGenericDaoImpl extends CdmEntityDaoBase implements ICdm public boolean containsValue(PersistentCollection col, Object element) { return contains(col, element); } - + + @Override + public void createFullSampleData() { + FullCoverageDataGenerator dataGenerator = new FullCoverageDataGenerator(); + dataGenerator.fillWithData(getSession()); + } } diff --git a/cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/datagenerator/FullCoverageDataGenerator.java b/cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/datagenerator/FullCoverageDataGenerator.java index 32f3a9b45b..25bd5d2019 100644 --- a/cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/datagenerator/FullCoverageDataGenerator.java +++ b/cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/datagenerator/FullCoverageDataGenerator.java @@ -150,6 +150,10 @@ public class FullCoverageDataGenerator { createReference(cdmBases); createTaxon(cdmBases); + + for (CdmBase cdmBase: cdmBases){ + session.save(cdmBase); + } } @@ -174,7 +178,7 @@ public class FullCoverageDataGenerator { contact.addEmailAddress("a@b.de"); contact.addFaxNumber("f:010-123456"); contact.addPhoneNumber("p:090-987654"); - contact.addUrl(URI.create("http:\\\\www.abc.de").toString()); + contact.addUrl(URI.create("http://www.abc.de").toString()); //Address Address address = Address.NewInstance(Country.GERMANY(), "locality", "pobox", "12345", "region", "street", locality); @@ -349,9 +353,9 @@ public class FullCoverageDataGenerator { private void createMedia(List cdmBases){ - AudioFile audioFile = AudioFile.NewInstance(URI.create("http:\\a.b.de"), 22); - ImageFile imageFile = ImageFile.NewInstance(URI.create("http:\\b.c.de"), 44, 467, 55); - MovieFile movieFile = MovieFile.NewInstance(URI.create("http:\\b.c.de"), 67); + AudioFile audioFile = AudioFile.NewInstance(URI.create("http://a.b.de"), 22); + ImageFile imageFile = ImageFile.NewInstance(URI.create("http://b.c.de"), 44, 467, 55); + MovieFile movieFile = MovieFile.NewInstance(URI.create("http://b.c.de"), 67); MediaRepresentation mediaRepresentation = MediaRepresentation.NewInstance("mime", "media"); mediaRepresentation.addRepresentationPart(movieFile); @@ -493,7 +497,7 @@ public class FullCoverageDataGenerator { reference.setInstitution(institution); reference.setIsbn("1234556"); reference.setIssn("issn"); - reference.setDoi(DOI.fromRegistrantCodeAndSuffix("registrantCode", "suffix")); + reference.setDoi(DOI.fromRegistrantCodeAndSuffix("14356", "suffix")); reference.setReferenceAbstract("referenceAbstract"); reference.setOrganization("organization"); reference.setPages("123-134"); @@ -504,7 +508,7 @@ public class FullCoverageDataGenerator { // reference.setSeriesPart("series"); reference.setSeriesPart("seriesPart"); reference.setVolume("vol. 3"); - reference.setUri(URI.create("http:\\rer.abc.de")); + reference.setUri(URI.create("http://rer.abc.de")); Reference journal = ReferenceFactory.newJournal(); reference.setInJournal(journal); @@ -667,7 +671,7 @@ public class FullCoverageDataGenerator { //Rights Rights rights = Rights.NewInstance("right", Language.ENGLISH()); - rights.setUri(URI.create("http:\\rights.abc.de")); + rights.setUri(URI.create("http://rights.abc.de")); rights.setAbbreviatedText("abbrev"); rights.setType(RightsType.COPYRIGHT()); Person owner = Person.NewTitledInstance("Owner"); diff --git a/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/CommonServiceImpl.java b/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/CommonServiceImpl.java index e8c78941e0..9368e169cd 100644 --- a/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/CommonServiceImpl.java +++ b/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/CommonServiceImpl.java @@ -302,6 +302,10 @@ public class CommonServiceImpl extends ServiceBase{ */ public boolean containsValue(PersistentCollection col, Object element); - Set getReferencingObjectsForDeletion(CdmBase referencedCdmBase); + public Set getReferencingObjectsForDeletion(CdmBase referencedCdmBase); + /** + * Preliminary, may be moved to test later + */ + @Deprecated + public void createFullSampleData(); } \ No newline at end of file -- 2.34.1