2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
10 package eu
.etaxonomy
.cdm
.model
;
12 import org
.apache
.log4j
.Logger
;
13 import org
.hibernate
.Session
;
14 import org
.hibernate
.SessionFactory
;
15 import org
.hibernate
.Transaction
;
16 import org
.springframework
.context
.support
.ClassPathXmlApplicationContext
;
18 import eu
.etaxonomy
.cdm
.model
.name
.BotanicalName
;
19 import eu
.etaxonomy
.cdm
.model
.name
.NonViralName
;
20 import eu
.etaxonomy
.cdm
.model
.name
.Rank
;
21 //import eu.etaxonomy.cdm.model.reference.Journal;
22 import eu
.etaxonomy
.cdm
.model
.reference
.IJournal
;
23 import eu
.etaxonomy
.cdm
.model
.reference
.Reference
;
24 import eu
.etaxonomy
.cdm
.model
.reference
.ReferenceFactory
;
25 import eu
.etaxonomy
.cdm
.model
.taxon
.Taxon
;
28 public class DatabaseInitialiser
{
29 private static final Logger logger
= Logger
.getLogger(DatabaseInitialiser
.class);
31 private static SessionFactory factory
;
32 private static ClassPathXmlApplicationContext applicationContext
;
34 public DatabaseInitialiser() {
35 applicationContext
= new ClassPathXmlApplicationContext("appInitContext.xml");
36 factory
= (SessionFactory
)applicationContext
.getBean("sessionFactory");
39 public static Integer
insertTaxon(String speciesname
){
40 logger
.info("Populate database with a taxon");
41 IJournal sec
= ReferenceFactory
.newJournal();
42 NonViralName
<?
> nvName
= BotanicalName
.NewInstance(Rank
.SPECIES());
43 Taxon tax
= Taxon
.NewInstance(nvName
, (Reference
)sec
);
44 //BotanicalName ve = nm.getNextVersion();
45 nvName
.setNameCache(speciesname
);
46 nvName
.setTitleCache(speciesname
, true);
51 private static void save(Object obj
){
52 Session s
= factory
.openSession();
53 Transaction tx
= s
.beginTransaction();
59 public static void main(String
[] args
) {
60 DatabaseInitialiser dbInit
= new DatabaseInitialiser();
61 DatabaseInitialiser
.insertTaxon("Abies alba");
62 DatabaseInitialiser
.insertTaxon("Polygala vulgaris");