Example #1
0
 public override void postProcessEngineBuild(ProcessEngine processEngine)
 {
     foreach (ProcessEnginePlugin plugin in plugins)
     {
         plugin.postProcessEngineBuild(processEngine);
     }
 }
Example #2
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Before public void setEngines()
        public virtual void setEngines()
        {
            ProcessEngineService engineService = BpmPlatform.ProcessEngineService;

            engine1 = engineService.getProcessEngine("engine1");
            engine1Configuration = ((ProcessEngineImpl)engine1).ProcessEngineConfiguration;
        }
Example #3
0
 public DecisionDefinitionResourceImpl(ProcessEngine engine, string decisionDefinitionId, string rootResourcePath, ObjectMapper objectMapper)
 {
     this.engine = engine;
     this.decisionDefinitionId = decisionDefinitionId;
     this.rootResourcePath     = rootResourcePath;
     this.objectMapper         = objectMapper;
 }
Example #4
0
        /// <summary>
        /// closes all process engines.  This method should be called when the server shuts down. </summary>
        public static void destroy()
        {
            lock (typeof(ProcessEngines))
            {
                if (isInitialized)
                {
                    IDictionary <string, ProcessEngine> engines = new Dictionary <string, ProcessEngine>(processEngines);
                    processEngines = new Dictionary <string, ProcessEngine>();

                    foreach (string processEngineName in engines.Keys)
                    {
                        ProcessEngine processEngine = engines[processEngineName];
                        try
                        {
                            processEngine.close();
                        }
                        catch (Exception e)
                        {
                            LOG.exceptionWhileClosingProcessEngine(string.ReferenceEquals(processEngineName, null) ? "the default process engine" : "process engine " + processEngineName, e);
                        }
                    }

                    processEngineInfosByName.Clear();
                    processEngineInfosByResourceUrl.Clear();
                    processEngineInfos.Clear();

                    isInitialized = false;
                }
            }
        }
Example #5
0
        /// <summary>
        /// Gets the bytes from a string using the provided process engine's default charset
        /// </summary>
        /// <param name="string"> the string to get the bytes form </param>
        /// <param name="processEngine"> the process engine to use </param>
        /// <returns> the byte array </returns>
        public static sbyte[] toByteArray(string @string, ProcessEngine processEngine)
        {
            ProcessEngineConfigurationImpl processEngineConfiguration = ((ProcessEngineImpl)processEngine).ProcessEngineConfiguration;
            Charset charset = processEngineConfiguration.DefaultCharset;

            return(@string.GetBytes(charset));
        }
Example #6
0
        /// <summary>
        /// converts a byte array into a string using the provided process engine's default charset as
        /// returned by <seealso cref="ProcessEngineConfigurationImpl.getDefaultCharset()"/>
        /// </summary>
        /// <param name="bytes"> the byte array </param>
        /// <param name="processEngine"> the process engine </param>
        /// <returns> a string representing the bytes </returns>
        public static string fromBytes(sbyte[] bytes, ProcessEngine processEngine)
        {
            ProcessEngineConfigurationImpl processEngineConfiguration = ((ProcessEngineImpl)processEngine).ProcessEngineConfiguration;
            Charset charset = processEngineConfiguration.DefaultCharset;

            return(StringHelper.NewString(bytes, charset));
        }
Example #7
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testExecuteJobsForSingleEngine()
        public virtual void testExecuteJobsForSingleEngine()
        {
            // configure and build a process engine
            StandaloneProcessEngineConfiguration standaloneProcessEngineConfiguration = new StandaloneInMemProcessEngineConfiguration();

//JAVA TO C# CONVERTER WARNING: The .NET Type.FullName property will not always yield results identical to the Java Class.getName method:
            standaloneProcessEngineConfiguration.ProcessEngineName         = this.GetType().FullName + "-engine1";
            standaloneProcessEngineConfiguration.JdbcUrl                   = "jdbc:h2:mem:jobexecutor-test-engine";
            standaloneProcessEngineConfiguration.JobExecutorActivate       = false;
            standaloneProcessEngineConfiguration.JobExecutor               = jobExecutor;
            standaloneProcessEngineConfiguration.DbMetricsReporterActivate = false;
            ProcessEngine engine = standaloneProcessEngineConfiguration.buildProcessEngine();

            createdProcessEngines.Add(engine);

            engine.RepositoryService.createDeployment().addClasspathResource(PROCESS_RESOURCE).deploy();

            jobExecutor.shutdown();

            engine.RuntimeService.startProcessInstanceByKey("intermediateTimerEventExample");

            Assert.assertEquals(1, engine.ManagementService.createJobQuery().count());

            DateTime calendar = new DateTime();

            calendar.add(Field.DAY_OF_YEAR.CalendarField, 6);
            ClockUtil.CurrentTime = calendar;
            jobExecutor.start();
            waitForJobExecutorToProcessAllJobs(10000, 100, jobExecutor, engine.ManagementService, true);

            Assert.assertEquals(0, engine.ManagementService.createJobQuery().count());
        }
Example #8
0
 private static ProcessEngine BootstrapProcessEngine()
 {
     var engine = new ProcessEngine();
     engine.Add(Calculation.Ema12, new EmaCalculator(12));
     engine.Add(Calculation.Ema13, new EmaCalculator(13));
     engine.Add(Calculation.Ema14, new EmaCalculator(14));
     engine.Add(Calculation.Ema15, new EmaCalculator(15));
     engine.Add(Calculation.Ema26, new EmaCalculator(26));
     engine.Add(Calculation.Ema39, new EmaCalculator(39));
     engine.Add(Calculation.Ema42, new EmaCalculator(42));
     engine.Add(Calculation.Ema45, new EmaCalculator(45));
     engine.Add(Calculation.Ema55, new EmaCalculator(55));
     engine.Add(Calculation.Ema100, new EmaCalculator(100));
     engine.Add(Calculation.MACD12_26, new MacdCalculator(12, 26));
     engine.Add(Calculation.MACDX12_26, new MacdCalculator(12, 26));
     engine.Add(Calculation.MACD13_39, new MacdCalculator(13, 39));
     engine.Add(Calculation.MACDX13_39, new MacdCalculator(13, 39));
     engine.Add(Calculation.MACD14_42, new MacdCalculator(14, 42));
     engine.Add(Calculation.MACDX14_42, new MacdCalculator(14, 42));
     engine.Add(Calculation.MACD15_45, new MacdCalculator(15, 45));
     engine.Add(Calculation.MACDX15_45, new MacdCalculator(15, 45));
     engine.Add(Calculation.MACD15_55, new MacdCalculator(15, 55));
     engine.Add(Calculation.MACDX15_55, new MacdCalculator(15, 55));
     return engine;
 }
Example #9
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test @OperateOnDeployment("engine1") public void testResolveBean() throws Exception
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
        public virtual void testResolveBean()
        {
            //given
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.ProcessEngine processEngine1 = processEngineService.getProcessEngine("engine1");
            ProcessEngine processEngine1 = processEngineService.getProcessEngine("engine1");

            Assert.assertEquals("engine1", processEngine1.Name);
            createAuthorizations(processEngine1);

            //when we operate the process under authenticated user
            processEngine1.IdentityService.setAuthentication("user1", Arrays.asList("group1"));

            processEngine1.RuntimeService.startProcessInstanceByKey("testProcess");
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final java.util.List<org.camunda.bpm.engine.task.Task> tasks = processEngine1.getTaskService().createTaskQuery().list();
            IList <Task> tasks = processEngine1.TaskService.createTaskQuery().list();

            Assert.assertEquals(1, tasks.Count);
            processEngine1.TaskService.complete(tasks[0].Id);

            //then
            //identityService resolution respects the engine, on which the process is being executed
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final java.util.List<org.camunda.bpm.engine.runtime.VariableInstance> variableInstances = processEngine1.getRuntimeService().createVariableInstanceQuery().variableName("changeInitiatorUsername").list();
            IList <VariableInstance> variableInstances = processEngine1.RuntimeService.createVariableInstanceQuery().variableName("changeInitiatorUsername").list();

            Assert.assertEquals(1, variableInstances.Count);
            Assert.assertEquals("user1", variableInstances[0].Value);
        }
Example #10
0
        /// <summary>
        /// this method add threadEvent for each type of event but it depend on event type.
        /// </summary>
        /// <param name="_event">if event is start one ,it will add it after calling ProcessEngine.ContinueProcess method, because start event should add after condition time ad continue immediately but other events just add before condition time to execute after schedule executing .</param>
        public ResultOperation NextTimerExecuteDate(sysBpmsEvent _event, Guid?threadTaskId)
        {
            ResultOperation resultOperation = new ResultOperation();

            if (_event.SubTypeTimerEventModel != null && base.EngineSharedModel.CurrentProcessID.HasValue)
            {
                sysBpmsThreadEvent newThreadEvent = new sysBpmsThreadEvent()
                {
                    StartDate    = DateTime.Now,
                    EventID      = _event.ID,
                    StatusLU     = (int)sysBpmsThreadEvent.e_StatusLU.InProgress,
                    ThreadID     = base.EngineSharedModel.CurrentThreadID.Value,
                    ThreadTaskID = threadTaskId
                };
                ThreadEventService threadEventService = new ThreadEventService(base.UnitOfWork);
                sysBpmsThreadEvent lastExecutedThreadEvent;
                switch ((SubTypeTimerEventModel.e_Type)_event.SubTypeTimerEventModel.Type)
                {
                case SubTypeTimerEventModel.e_Type.Interval:
                    lastExecutedThreadEvent = this.GetLastExecutedThreadEventForInterval(_event);
                    this.SetThreadEventOnInterval(_event, newThreadEvent, lastExecutedThreadEvent);
                    break;

                case SubTypeTimerEventModel.e_Type.WaitFor:
                    lastExecutedThreadEvent = this.GetLastExecutedThreadEvent(_event);
                    this.SetThreadEventOnWaitFor(_event, newThreadEvent);
                    break;

                case SubTypeTimerEventModel.e_Type.WaitUntil:
                    lastExecutedThreadEvent = this.GetLastExecutedThreadEvent(_event);
                    this.SetThreadEventOnWaitUntil(_event, newThreadEvent);
                    break;

                default:
                    return(resultOperation);
                }
                if (_event.TypeLU == (int)sysBpmsEvent.e_TypeLU.StartEvent)
                {
                    //if threadEvent prevoiusly was created , it would not create new one.
                    if (newThreadEvent.ExecuteDate > DateTime.Now ||
                        (lastExecutedThreadEvent != null && newThreadEvent.ExecuteDate == lastExecutedThreadEvent.ExecuteDate))
                    {
                        return(resultOperation);
                    }
                    else
                    {
                        resultOperation = new ProcessEngine(base.EngineSharedModel, base.UnitOfWork).ContinueProcess(newThreadEvent, false).Item1;
                        if (!resultOperation.IsSuccess)
                        {
                            return(resultOperation);
                        }
                        newThreadEvent.ThreadID = base.EngineSharedModel.CurrentThreadID.Value;
                        newThreadEvent.StatusLU = (int)sysBpmsThreadEvent.e_StatusLU.Done;
                    }
                }
                threadEventService.Add(newThreadEvent);
            }
            return(resultOperation);
        }
Example #11
0
        public static void Main(string[] args)
        {
            ProcessEngine engine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("camunda.cfg.xml").buildProcessEngine();

            UpgradedDBDropper fixture = new UpgradedDBDropper();

            fixture.cleanDatabase(engine);
        }
 public CompleteActivityMessage(ProcessEngine engine, SysActivityInstance ai) : base(engine)
 {
     if (ai == null)
     {
         throw new ArgumentNullException("ai");
     }
     this._ai = ai;
 }
Example #13
0
 private void Process(ProcessEngine engine)
 {
     var sma12 = new SmaCalculator(12);
     foreach(var quote in this.ProcessedQuotes)
     {
         engine.Process(quote);
     }
 }
 public ActivityInstanceCreatedMessage(ProcessEngine engine, SysActivityInstance activityInstance) : base(engine)
 {
     if (activityInstance == null)
     {
         throw new ArgumentNullException("ai");
     }
     this._ai = activityInstance;
 }
Example #15
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @After public void tearDown()
        public virtual void tearDown()
        {
            if (engine != null)
            {
                engine.close();
                engine = null;
            }
        }
Example #16
0
 public virtual void createInstances(ProcessEngine engine, IDictionary <string, Scenario> scenarios)
 {
     for (int i = 1; i <= times; i++)
     {
         string scenarioInstanceName = name + "." + i;
         create(engine, scenarios, scenarioInstanceName);
     }
 }
 public object GetListProcess([System.Web.Http.FromUri] GetListProcessSearchDTO indexSearchVM)
 {
     using (ProcessEngine processEngine = new ProcessEngine(new EngineSharedModel(currentThread: null, currentProcessID: Guid.Empty, baseQueryModel: base.MyRequest.GetList(false, base.ApiSessionId).ToList(), currentUserName: base.ClientUserName, apiSessionId: base.ApiSessionId)))
     {
         List <KartableProcessDTO> list = processEngine.GetAvailableProccess(this.MyUser.ID).Select(c => new KartableProcessDTO(c)).ToList();
         indexSearchVM.Update(list);
         return(indexSearchVM);
     }
 }
Example #18
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @After public void closeProcessEngine()
        public virtual void closeProcessEngine()
        {
            // Required, since all the other tests seem to do a specific drop on the end
            processEngine.close();
            processEngine      = null;
            runtimeService     = null;
            taskService        = null;
            activitiSpringRule = null;
        }
Example #19
0
        public static void assertProcessEnded(ProcessEngine processEngine, string processInstanceId)
        {
            ProcessInstance processInstance = processEngine.RuntimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult();

            if (processInstance != null)
            {
                throw new AssertionFailedError("expected finished process instance '" + processInstanceId + "' but it was still in the db");
            }
        }
Example #20
0
        private static bool historyLevelCheck(ProcessEngine processEngine, RequiredHistoryLevel annotation)
        {
            ProcessEngineConfigurationImpl processEngineConfiguration = (ProcessEngineConfigurationImpl)processEngine.ProcessEngineConfiguration;

            HistoryLevel requiredHistoryLevel = getHistoryLevelForName(processEngineConfiguration.HistoryLevels, annotation.value());
            HistoryLevel currentHistoryLevel  = processEngineConfiguration.HistoryLevel;

            return(currentHistoryLevel.Id >= requiredHistoryLevel.Id);
        }
Example #21
0
        private ProcessEngine mockProcessEngine(string engineName)
        {
            ProcessEngine engine = mock(typeof(ProcessEngine));

            when(engine.Name).thenReturn(engineName);
            mockServices(engine);
            mockProcessEngineConfiguration(engine);
            return(engine);
        }
 public CompleteWorkItemMessage(ProcessEngine engine, SysWorkItem wi) : base(engine)
 {
     if (wi == null)
     {
         throw new ArgumentNullException("wi");
     }
     this._wi = wi;
     this._ai = wi.ActivityInstance;
 }
Example #23
0
            public void execute(ProcessEngine engine, string scenarioName)
            {
                engine.RuntimeService.startProcessInstanceByKey("ParallelMultiInstanceCompensationSingleActivityHandlerScenario", scenarioName);

                // complete two out of three MI tasks
                IList <Task> miTasks = engine.TaskService.createTaskQuery().processInstanceBusinessKey(scenarioName).list();

                engine.TaskService.complete(miTasks[0].Id);
                engine.TaskService.complete(miTasks[1].Id);
            }
Example #24
0
        public virtual void afterPass(PerfTestPass pass)
        {
            ProcessEngine  processEngine  = PerfTestProcessEngine.Instance;
            HistoryService historyService = processEngine.HistoryService;

            foreach (PerfTestRun run in pass.Runs.Values)
            {
                logActivityResults(pass, run, historyService);
            }
        }
Example #25
0
//JAVA TO C# CONVERTER WARNING: 'final' parameters are not available in .NET:
//ORIGINAL LINE: public static ExecutionTree forExecution(final String executionId, org.camunda.bpm.engine.ProcessEngine processEngine)
        public static ExecutionTree forExecution(string executionId, ProcessEngine processEngine)
        {
            ProcessEngineConfigurationImpl configuration = (ProcessEngineConfigurationImpl)processEngine.ProcessEngineConfiguration;

            CommandExecutor commandExecutor = configuration.CommandExecutorTxRequired;

            ExecutionTree executionTree = commandExecutor.execute(new CommandAnonymousInnerClass(executionId));

            return(executionTree);
        }
Example #26
0
            public void execute(ProcessEngine engine, string scenarioName)
            {
                ProcessInstance procInst = engine.RuntimeService.startProcessInstanceByKey(PROCESS_DEF_KEY, scenarioName);
                IList <Task>    tasks    = engine.TaskService.createTaskQuery().processInstanceId(procInst.Id).list();

                foreach (Task task in tasks)
                {
                    engine.TaskService.complete(task.Id);
                }
            }
Example #27
0
 protected internal override void closeDownProcessEngine()
 {
     base.closeDownProcessEngine();
     if (otherProcessEngine != null)
     {
         otherProcessEngine.close();
         ProcessEngines.unregister(otherProcessEngine);
         otherProcessEngine = null;
     }
 }
Example #28
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Before public void init()
        public virtual void init()
        {
            processEngine = rule.ProcessEngine;

            folderContents = new Dictionary <string, IList <string> >();
            foreach (string folder in SCRIPT_FOLDERS)
            {
                folderContents[folder] = readFolderContent(folder);
            }
        }
Example #29
0
        public override void applyTo <T1>(InstantiationBuilder <T1> builder, ProcessEngine engine, ObjectMapper mapper)
        {
            checkValidity();

            builder.startAfterActivity(activityId);
            if (builder is ProcessInstantiationBuilder)
            {
                applyVariables((ProcessInstantiationBuilder)builder, engine, mapper);
            }
        }
Example #30
0
        public virtual CountResultDto getBatchesCount(UriInfo uriInfo)
        {
            ProcessEngine processEngine = ProcessEngine;
            BatchQueryDto queryDto      = new BatchQueryDto(ObjectMapper, uriInfo.QueryParameters);
            BatchQuery    query         = queryDto.toQuery(processEngine);

            long count = query.count();

            return(new CountResultDto(count));
        }
Example #31
0
//JAVA TO C# CONVERTER WARNING: 'final' parameters are not available in .NET:
//ORIGINAL LINE: public void execute(org.camunda.bpm.engine.ProcessEngine engine, final String scenarioName)
            public void execute(ProcessEngine engine, string scenarioName)
            {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.impl.cfg.ProcessEngineConfigurationImpl engineConfiguration = (org.camunda.bpm.engine.impl.cfg.ProcessEngineConfigurationImpl) engine.getProcessEngineConfiguration();
                ProcessEngineConfigurationImpl engineConfiguration = (ProcessEngineConfigurationImpl)engine.ProcessEngineConfiguration;
                CommandExecutor commandExecutor = engineConfiguration.CommandExecutorTxRequired;

                // create a job with the scenario name as id and a null suspension state
                commandExecutor.execute(new CommandAnonymousInnerClass(this, scenarioName, engineConfiguration));
            }
Example #32
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Before public void setUpRuntimeData()
        public virtual void setUpRuntimeData()
        {
            mockedOptimizeService = mock(typeof(OptimizeService));
            ProcessEngineConfigurationImpl mockedConfig = mock(typeof(ProcessEngineConfigurationImpl));


            namedProcessEngine = getProcessEngine(MockProvider.EXAMPLE_PROCESS_ENGINE_NAME);
            when(namedProcessEngine.ProcessEngineConfiguration).thenReturn(mockedConfig);
            when(mockedConfig.OptimizeService).thenReturn(mockedOptimizeService);
        }
Example #33
0
        public Share(string id, IEnumerable<IQuote> quotes, ProcessEngine engine)
        {
            this.Id = id;

            this.ProcessedQuotes =
                quotes
                .Clean()
                .Order()
                .ToProcessableStock();

            this.Calculations = engine.Keys.ToList().AsReadOnly();

            this.Process(engine);
        }
 public void TestInitialize()
 {
     _ProcessEngine = new ProcessEngine(serveruri, applicationName);
 }
 public void LoginWithInvalidUri()
 {
     ProcessEngine processEngine = new ProcessEngine(new Uri("http://www.example.com/invalid-uri"), "InvalidClient");
     try
     {
         processEngine.Login("wrongusername", "1234");
     }
     catch (Exception ex)
     {
         Assert.IsNotNull(processEngine);
         Assert.IsTrue(ex.Message == "Response status code does not indicate success: 404 (Not Found).");
     }
 }
 public ShareImporter(IShareRepository repo, ProcessEngine engine)
 {
     this.repo = repo;
     this.engine = engine;
 }
Example #37
0
 public static void TestCompensation(ProcessEngine pr)
 {
     var proc = pr.StartProcess("Test2.Compensation.1", new Dictionary<string, object> { });
     Console.WriteLine("Enter to cancel the process {0}", proc);
     Console.ReadLine();
     pr.CancelTask(proc, "Testing");
     Console.WriteLine("Cancelling");
     Console.ReadLine();
 }