protected internal virtual ExpressionFactory CreateExpressionFactory() { Bpm.Engine.Impl.Core.Model.Properties properties = new Bpm.Engine.Impl.Core.Model.Properties(); properties.properties.Add("camundafeel.javax.el.cacheSize", Convert.ToString(this.expressionCacheSize)); try { return(new ExpressionFactoryImpl(properties, this.CreateTypeConverter())); } catch (ELException var3) { throw LOG.unableToInitializeFeelEngine(var3); } }
protected internal override IList <DecisionDefinitionEntity> TransformDefinitions(DeploymentEntity deployment, ResourceEntity resource, Bpm.Engine.Impl.Core.Model.Properties properties) { IList <DecisionDefinitionEntity> decisions = new List <DecisionDefinitionEntity>(); // get the decisions from the deployed drd instead of parse the DMN again DecisionRequirementsDefinitionEntity deployedDrd = FindDeployedDrdForResource(deployment, resource.Name); if (deployedDrd == null) { throw Log.ExceptionNoDrdForResource(resource.Name); } ICollection <IDmnDecision> decisionsOfDrd = deployedDrd.Decisions; foreach (IDmnDecision decisionOfDrd in decisionsOfDrd) { DecisionDefinitionEntity decisionEntity = (DecisionDefinitionEntity)decisionOfDrd; if (DecisionRequirementsDefinitionDeployer.IsDecisionRequirementsDefinitionPersistable(deployedDrd)) { decisionEntity.DecisionRequirementsDefinitionId = deployedDrd.Id; decisionEntity.DecisionRequirementsDefinitionKey = deployedDrd.Key; } decisions.Add(decisionEntity); } if (!DecisionRequirementsDefinitionDeployer.IsDecisionRequirementsDefinitionPersistable(deployedDrd)) { deployment.RemoveArtifact(deployedDrd); } return(decisions); }
protected internal override IList <DecisionRequirementsDefinitionEntity> TransformDefinitions(DeploymentEntity deployment, ResourceEntity resource, Bpm.Engine.Impl.Core.Model.Properties properties) { byte[] bytes = resource.Bytes; System.IO.MemoryStream inputStream = new System.IO.MemoryStream(bytes); try { DecisionRequirementsDefinitionEntity drd = transformer.createTransform().modelInstance(inputStream).transformDecisionRequirementsGraph <DecisionRequirementsDefinitionEntity>(); return(new List <DecisionRequirementsDefinitionEntity>() { drd }); } catch (System.Exception e) { throw Log.ExceptionParseDmnResource(resource.Name, e); } }