package org.orienteer.bpm.camunda.handler; import org.camunda.bpm.engine.impl.persistence.entity.EventSubscriptionEntity; import org.camunda.bpm.engine.impl.persistence.entity.PropertyEntity; import org.orienteer.bpm.camunda.OPersistenceSession; import org.orienteer.core.util.OSchemaHelper; import com.orientechnologies.orient.core.db.document.ODatabaseDocument; import com.orientechnologies.orient.core.metadata.schema.OType; import com.orientechnologies.orient.core.record.impl.ODocument;import ru.ydn.wicket.wicketorientdb.model.OPropertiesDataProvider; /** * {@link IEntityHandler} for {@link PropertyEntity} */ public class PropertyEntityHandler extends AbstractEntityHandler<PropertyEntity> { public static final String OCLASS_NAME = "BPMProperty"; public PropertyEntityHandler() { super(OCLASS_NAME); } @Override public void applySchema(OSchemaHelper helper) { super.applySchema(helper); helper.oProperty("value", OType.STRING, 40).markDisplayable(); } @Override protected void initMapping(OPersistenceSession session) { super.initMapping(session); mappingFromDocToEntity.put("id", "name"); } @Statement public void lockDeploymentLockProperty(OPersistenceSession session, Object param) { PropertyEntity lockEntry = read("deployment.lock", session); if(lockEntry==null) { lockEntry = new PropertyEntity("deployment.lock", "true"); create(lockEntry, session); } } }