29
|
1 package org.mpi.openmind.scripts;
|
|
2
|
|
3 import java.text.DateFormat;
|
|
4 import java.text.SimpleDateFormat;
|
|
5 import java.util.Date;
|
|
6
|
|
7 import org.apache.log4j.ConsoleAppender;
|
|
8 import org.apache.log4j.Level;
|
|
9 import org.apache.log4j.Logger;
|
|
10 import org.apache.log4j.PatternLayout;
|
|
11 import org.mpi.openmind.cache.WrapperService;
|
|
12 import org.mpi.openmind.configuration.ConfigurationService;
|
|
13 import org.mpi.openmind.repository.services.PersistenceService;
|
|
14 import org.mpi.openmind.repository.services.ServiceRegistry;
|
|
15 import org.mpi.openmind.repository.utils.OM4StreamWriter;
|
|
16
|
|
17
|
|
18 public class IsmiXmlExport {
|
|
19
|
|
20
|
|
21
|
|
22 private static Logger logger;
|
|
23 private static ConfigurationService configurationService;
|
|
24 private static PersistenceService persistenceService;
|
|
25
|
|
26
|
|
27 static {
|
|
28
|
|
29 ConsoleAppender console = new ConsoleAppender(); // create appender
|
|
30 // configure the appender
|
|
31 String PATTERN = "%d [%p|%c|%C{1}] %m%n";
|
|
32 console.setLayout(new PatternLayout(PATTERN));
|
|
33 console.setThreshold(Level.INFO);
|
|
34 console.activateOptions();
|
|
35 // add appender to any Logger (here is root)
|
|
36 //Logger.getRootLogger().addAppender(console);
|
|
37
|
|
38 logger = Logger.getLogger(OM4StreamWriter.class);
|
|
39 logger.setLevel(Level.DEBUG);
|
|
40 }
|
|
41
|
|
42 public static void execute(){
|
|
43 ServiceRegistry services = new ServiceRegistry();
|
|
44 configurationService = services.getConfigurationService();
|
|
45 persistenceService = services.getPS();
|
|
46 exportXml(services.getWrapper());
|
|
47 }
|
|
48
|
|
49 private static void exportXml(WrapperService omService){
|
|
50 // get path from configuration service
|
|
51 String schedulingPath = configurationService.getSchedulingPath();
|
|
52 if(schedulingPath.charAt(schedulingPath.length() - 1) != '/'){
|
|
53 schedulingPath += "/";
|
|
54 }
|
|
55 // add date
|
|
56 Date now = new Date();
|
|
57 DateFormat formatter = new SimpleDateFormat("yyMMdd-HHmm");
|
|
58 String defFn = "openmind-defs-" + formatter.format(now) + ".xml";
|
|
59 String entFn = "openmind-data-" + formatter.format(now) + ".xml";
|
|
60 // export XML
|
|
61 logger.info("Backup Definitions as: " + defFn);
|
|
62 OM4StreamWriter.backupDefinitions(schedulingPath + defFn, persistenceService);
|
|
63 logger.info("Backup Entities as: " + entFn);
|
|
64 OM4StreamWriter.backupEntities(schedulingPath + entFn, persistenceService);
|
|
65 }
|
|
66
|
|
67
|
|
68 public static void main(String[] args){
|
|
69 execute();
|
|
70 System.exit(0);
|
|
71 }
|
|
72 }
|