view src/main/java/org/mpi/openmind/scheduling/utils/Scheduling.java @ 20:688fd0330bad

clean up.
author casties
date Mon, 30 Nov 2015 17:42:33 +0100
parents 615d27dce9b3
children 2f19cdf8e60b
line wrap: on
line source

package org.mpi.openmind.scheduling.utils;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.mpi.openmind.configuration.ConfigurationService;
import org.mpi.openmind.repository.services.PersistenceService;
import org.mpi.openmind.repository.utils.OM4StreamWriter;


public class Scheduling {
	
	private static Logger logger = Logger.getLogger(Scheduling.class);
	
	private PersistenceService persistenceService;
	private ConfigurationService configurationService;

	public synchronized void dailyKickOff(){
		if(configurationService.isSchedulingEnable() && StringUtils.isNotEmpty(configurationService.getSchedulingPath())){
			
			String schedulingPath = configurationService.getSchedulingPath();
			if(schedulingPath.charAt(schedulingPath.length() - 1) != '/'){
				schedulingPath += "/";
			}
			
			
			Date now = new Date();
			DateFormat formatter = new SimpleDateFormat("yyyy.MM.dd[HH.mm]");
			
			logger.info("Backup Definitions as: " + schedulingPath + formatter.format(now) + "-DEF.xml");
			OM4StreamWriter.backupDefinitions(schedulingPath + formatter.format(now) + "-DEF.xml" , persistenceService);
			logger.info("Backup Entities as: " + schedulingPath + formatter.format(now) + "-ENT.xml");
			OM4StreamWriter.backupEntities(schedulingPath + formatter.format(now) + "-ENT.xml", persistenceService);
			
		}
	}
	

	public ConfigurationService getConfigurationService() {
		return configurationService;
	}
	public void setConfigurationService(ConfigurationService configurationService) {
		this.configurationService = configurationService;
	}

	public PersistenceService getPersistenceService() {
		return persistenceService;
	}


	public void setPersistenceService(PersistenceService persistenceService) {
		this.persistenceService = persistenceService;
	}


}