/** * Copyright 2007-2010 非也 * All rights reserved. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation。 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see http://www.gnu.org/licenses. * */ package org.fireflow.engine.modules.persistence; import org.fireflow.engine.context.AbsEngineModule; import org.fireflow.engine.context.RuntimeContext; import org.fireflow.engine.modules.processlanguage.ProcessLanguageManager; /** * @author 非也 * @version 2.0 */ public class PersistenceServiceDefaultImpl extends AbsEngineModule implements PersistenceService { TokenPersister tokenPersister = null; ActivityInstancePersister activityInstancePersister = null; ProcessInstancePersister processInstancePersister = null; VariablePersister variablePersister = null; ProcessPersister processPersister = null; ScheduleJobPersister scheduleJobPersister = null; WorkItemPersister workItemPersister = null; ReassignConfigPersister reassignConfigPersister = null; // ServicePersister servicePersister = null; // // ResourcePersister resourcePersister = null; FireflowConfigPersister fireflowConfigPersister = null; RuntimeContext ctx = null; /** * @return the reassignConfigPersister */ public ReassignConfigPersister getReassignConfigPersister() { return reassignConfigPersister; } /** * @param reassignConfigPersister the reassignConfigPersister to set */ public void setReassignConfigPersister( ReassignConfigPersister reassignConfigPersister) { this.reassignConfigPersister = reassignConfigPersister; this.reassignConfigPersister.setPersistenceService(this); } /* (non-Javadoc) * @see org.fireflow.engine.persistence.PersistenceStrategy#getActivityInstancePersistenceService() */ public ActivityInstancePersister getActivityInstancePersister() { return activityInstancePersister; } public void setActivityInstancePersister(ActivityInstancePersister persister){ this.activityInstancePersister = persister; this.activityInstancePersister.setPersistenceService(this); } /* (non-Javadoc) * @see org.fireflow.engine.persistence.PersistenceStrategy#getTokenPersistenceService() */ public TokenPersister getTokenPersister() { return tokenPersister; } public void setTokenPersister(TokenPersister persister){ this.tokenPersister = persister; this.tokenPersister.setPersistenceService(this); } public ProcessInstancePersister getProcessInstancePersister(){ return processInstancePersister; } public void setProcessInstancePersister(ProcessInstancePersister persister){ processInstancePersister = persister; this.processInstancePersister.setPersistenceService(this); } public VariablePersister getVariablePersister() { return variablePersister; } public void setVariablePersister(VariablePersister variablePersister) { this.variablePersister = variablePersister; this.variablePersister.setPersistenceService(this); } public ProcessPersister getProcessPersister(){ return processPersister; } public void setProcessPersister(ProcessPersister persister){ processPersister = persister; this.processPersister.setPersistenceService(this); } public ScheduleJobPersister getScheduleJobPersister(){ return this.scheduleJobPersister; } public void setScheduleJobPersister(ScheduleJobPersister persister){ this.scheduleJobPersister = persister; this.scheduleJobPersister.setPersistenceService(this); } /** * @return the workItemPersister */ public WorkItemPersister getWorkItemPersister() { return workItemPersister; } /** * @param workItemPersister the workItemPersister to set */ public void setWorkItemPersister(WorkItemPersister workItemPersister) { this.workItemPersister = workItemPersister; this.workItemPersister.setPersistenceService(this); } /* (non-Javadoc) * @see org.fireflow.engine.context.RuntimeContextAware#getRuntimeContext() */ public RuntimeContext getRuntimeContext() { return ctx; } /* (non-Javadoc) * @see org.fireflow.engine.context.RuntimeContextAware#setRuntimeContext(org.fireflow.engine.context.RuntimeContext) */ public void setRuntimeContext(RuntimeContext ctx) { this.ctx = ctx; } // /** // * @return the servicePersister // */ // public ServicePersister getServicePersister() { // return servicePersister; // } // // /** // * @param servicePersister the servicePersister to set // */ // public void setServicePersister(ServicePersister servicePersister) { // this.servicePersister = servicePersister; // this.servicePersister.setPersistenceService(this); // } // // /** // * @return the resourcePersister // */ // public ResourcePersister getResourcePersister() { // return resourcePersister; // } // // /** // * @param resourcePersister the resourcePersister to set // */ // public void setResourcePersister(ResourcePersister resourcePersister) { // this.resourcePersister = resourcePersister; // this.resourcePersister.setPersistenceService(this); // } public FireflowConfigPersister getFireflowConfigPersister(){ return fireflowConfigPersister; } public void setFireflowConfigPersister(FireflowConfigPersister fireflowConfigPersister){ this.fireflowConfigPersister = fireflowConfigPersister; this.fireflowConfigPersister.setPersistenceService(this); } public ProcessLanguageManager getProcessLanguageManager(String processType){ if (this.ctx==null) return null; ProcessLanguageManager util = this.ctx.getEngineModule(ProcessLanguageManager.class, processType); return util; } }