/* Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.activiti.crystalball.simulator.impl.persistence.entity; import org.activiti.crystalball.simulator.impl.SimulationInstanceQueryImpl; import org.activiti.crystalball.simulator.impl.context.SimulationContext; import org.activiti.crystalball.simulator.impl.persistence.AbstractManager; import org.activiti.engine.impl.Page; import org.activiti.engine.impl.cfg.IdGenerator; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; public class SimulationInstanceEntityManager extends AbstractManager { public SimulationInstanceEntity createSimulationInstance(String name, String description, String author, Date start, Date end, int replication, Long seed, String simulationConfigUrl) { IdGenerator idGenerator = SimulationContext.getSimulationEngineConfiguration() .getIdGenerator(); SimulationInstanceEntity simulationInstance = new SimulationInstanceEntity(); simulationInstance.setId(idGenerator.getNextId()); simulationInstance.setName(name); simulationInstance.setDescription(description); simulationInstance.setAuthor(author); simulationInstance.setStart(start); simulationInstance.setEnd(end); simulationInstance.setReplication(replication); simulationInstance.setSeed(seed); simulationInstance.setSimulationConfigUrl(simulationConfigUrl); getDbSqlSession().insert(simulationInstance); return simulationInstance; } public SimulationInstanceEntity findSimulationInstanceById(String simulationInstanceId) { Map<String, Object> parameters = new HashMap<String, Object>(); parameters.put("simulationInstanceId", simulationInstanceId); return (SimulationInstanceEntity) getDbSqlSession().selectOne( "selectSimulationInstanceById", parameters); } public long findSimulationInstanceCountByQueryCriteria( SimulationInstanceQueryImpl executionQuery) { return (Long) getDbSqlSession().selectOne( "selectSimulationInstanceCountByQueryCriteria", executionQuery); } @SuppressWarnings("unchecked") public List<SimulationInstanceEntity> findSimulationInstancesByQueryCriteria(SimulationInstanceQueryImpl executionQuery, Page page) { return getDbSqlSession().selectList("selectSimulationInstancesByQueryCriteria", executionQuery, page); } public void update(SimulationInstanceEntity simulationInstanceEntity) { getDbSqlSession().update( simulationInstanceEntity); } }