コード例 #1
0
        public virtual void testListJsonProperty()
        {
            JsonListSerializable <string> list = new JsonListSerializable <string>();

            list.addElement("foo");

            ObjectValue objectValue = Variables.objectValue(list).serializationDataFormat(DataFormats.JSON_DATAFORMAT_NAME).create();

            VariableMap variables = Variables.createVariables().putValueTyped("input1", objectValue);

            decisionService.evaluateDecisionTableByKey("testDecision", variables);

            HistoricDecisionInstance testDecision = historyService.createHistoricDecisionInstanceQuery().decisionDefinitionKey("testDecision").includeInputs().includeOutputs().singleResult();

            assertNotNull(testDecision);

            IList <HistoricDecisionInputInstance> inputs = testDecision.Inputs;

            assertEquals(1, inputs.Count);

            HistoricDecisionInputInstance inputInstance = inputs[0];

            assertEquals(list.ListProperty, inputInstance.Value);

            IList <HistoricDecisionOutputInstance> outputs = testDecision.Outputs;

            assertEquals(1, outputs.Count);

            HistoricDecisionOutputInstance outputInstance = outputs[0];

            assertEquals(list.ListProperty, outputInstance.Value);
        }
コード例 #2
0
        public virtual void decisionInputInstanceProperties()
        {
            // given start process and evaluate decision
            VariableMap variables = Variables.createVariables();

            variables.put("input1", null);
            runtimeService.startProcessInstanceByKey("testProcess", variables);

            // when
            IList <HistoricDecisionInstance> decisionInstances = optimizeService.getHistoricDecisionInstances(pastDate(), null, 10);

            // then
            assertThat(decisionInstances.Count, @is(1));
            HistoricDecisionInstance decisionInstance    = decisionInstances[0];
            IList <HistoricDecisionInputInstance> inputs = decisionInstance.Inputs;

            assertThat(inputs, @is(notNullValue()));
            assertThat(inputs.Count, @is(1));

            HistoricDecisionInputInstance input = inputs[0];

            assertThat(input.DecisionInstanceId, @is(decisionInstance.Id));
            assertThat(input.ClauseId, @is("in"));
            assertThat(input.ClauseName, @is("input"));
        }
コード例 #3
0
 public virtual void addInput(HistoricDecisionInputInstance decisionInputInstance)
 {
     if (inputs == null)
     {
         inputs = new List <HistoricDecisionInputInstance>();
     }
     inputs.Add(decisionInputInstance);
 }
コード例 #4
0
        public virtual void testDisableDecisionInputInstanceByteValue()
        {
            sbyte[] bytes = "object".GetBytes();
            startProcessInstanceAndEvaluateDecision(bytes);

            HistoricDecisionInstance historicDecisionInstance = historyService.createHistoricDecisionInstanceQuery().includeInputs().disableBinaryFetching().singleResult();
            IList <HistoricDecisionInputInstance> inputs      = historicDecisionInstance.Inputs;

            assertThat(inputs.Count, @is(1));

            HistoricDecisionInputInstance input = inputs[0];

            assertThat(input.TypeName, @is("bytes"));
            assertThat(input.Value, @is(nullValue()));
        }
コード例 #5
0
        public virtual void testDecisionInputInstanceProperties()
        {
            startProcessInstanceAndEvaluateDecision();

            HistoricDecisionInstance historicDecisionInstance = historyService.createHistoricDecisionInstanceQuery().includeInputs().singleResult();
            IList <HistoricDecisionInputInstance> inputs      = historicDecisionInstance.Inputs;

            assertThat(inputs, @is(notNullValue()));
            assertThat(inputs.Count, @is(1));

            HistoricDecisionInputInstance input = inputs[0];

            assertThat(input.DecisionInstanceId, @is(historicDecisionInstance.Id));
            assertThat(input.ClauseId, @is("in"));
            assertThat(input.ClauseName, @is("input"));
        }
コード例 #6
0
        public virtual void decisionInputInstanceValue()
        {
            SimpleDateFormat sdf       = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss.SSS");
            DateTime         fixedDate = sdf.parse("01/01/2001 01:01:01.000");

            ClockUtil.CurrentTime = fixedDate;

            startProcessInstanceAndEvaluateDecision(inputValue);

            HistoricDecisionInstance historicDecisionInstance    = engineRule.HistoryService.createHistoricDecisionInstanceQuery().includeInputs().singleResult();
            IList <HistoricDecisionInputInstance> inputInstances = historicDecisionInstance.Inputs;

            assertThat(inputInstances.Count, @is(1));

            HistoricDecisionInputInstance inputInstance = inputInstances[0];

            assertThat(inputInstance.TypeName, @is(valueType));
            assertThat(inputInstance.Value, @is(inputValue));
            assertThat(inputInstance.CreateTime, @is(fixedDate));
        }
コード例 #7
0
        public static HistoricDecisionInputInstanceDto fromHistoricDecisionInputInstance(HistoricDecisionInputInstance historicDecisionInputInstance)
        {
            HistoricDecisionInputInstanceDto dto = new HistoricDecisionInputInstanceDto();

            dto.id = historicDecisionInputInstance.Id;
            dto.decisionInstanceId    = historicDecisionInputInstance.DecisionInstanceId;
            dto.clauseId              = historicDecisionInputInstance.ClauseId;
            dto.clauseName            = historicDecisionInputInstance.ClauseName;
            dto.createTime            = historicDecisionInputInstance.CreateTime;
            dto.removalTime           = historicDecisionInputInstance.RemovalTime;
            dto.rootProcessInstanceId = historicDecisionInputInstance.RootProcessInstanceId;

            if (string.ReferenceEquals(historicDecisionInputInstance.ErrorMessage, null))
            {
                VariableValueDto.fromTypedValue(dto, historicDecisionInputInstance.TypedValue);
            }
            else
            {
                dto.errorMessage = historicDecisionInputInstance.ErrorMessage;
                dto.type         = VariableValueDto.toRestApiTypeName(historicDecisionInputInstance.TypeName);
            }

            return(dto);
        }
コード例 #8
0
 protected internal virtual bool isBinaryValue(HistoricDecisionInputInstance decisionInputInstance)
 {
     return(AbstractTypedValueSerializer.BINARY_VALUE_TYPES.Contains(decisionInputInstance.TypeName));
 }