Example #1
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public void execute(org.camunda.bpm.engine.impl.pvm.delegate.ActivityExecution execution) throws Exception
        public virtual void execute(ActivityExecution execution)
        {
            string var = (string)execution.getVariable("var");

            PvmTransition transition = null;

            try
            {
                executeLogic(var);
                transition = execution.Activity.findOutgoingTransition("no-exception");
            }
            catch (Exception)
            {
                transition = execution.Activity.findOutgoingTransition("exception");
            }
            execution.leaveActivityViaTransition(transition);
        }
Example #2
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: protected void handle(org.camunda.bpm.engine.impl.pvm.delegate.ActivityExecution execution, String action) throws Exception
        protected internal virtual void handle(ActivityExecution execution, string action)
        {
            execution.setVariable(action, true);
            string type = (string)execution.getVariable("type");

            if ("error".Equals(type, StringComparison.OrdinalIgnoreCase))
            {
                throw new BpmnError("MyError");
            }
            else if ("exception".Equals(type, StringComparison.OrdinalIgnoreCase))
            {
                throw new MyBusinessException("MyException");
            }
            else if ("leave".Equals(type, StringComparison.OrdinalIgnoreCase))
            {
                execution.setVariable("type", null);
                leave(execution);
            }
        }
Example #3
0
        protected internal virtual void evaluateCollectionVariable(ActivityExecution execution, int loopCounter)
        {
            if (usesCollection() && !string.ReferenceEquals(collectionElementVariable, null))
            {
//JAVA TO C# CONVERTER WARNING: Java wildcard generics have no direct equivalent in .NET:
//ORIGINAL LINE: java.util.Collection<?> collection = null;
                ICollection <object> collection = null;
                if (collectionExpression != null)
                {
//JAVA TO C# CONVERTER WARNING: Java wildcard generics have no direct equivalent in .NET:
//ORIGINAL LINE: collection = (java.util.Collection<?>) collectionExpression.getValue(execution);
                    collection = (ICollection <object>)collectionExpression.getValue(execution);
                }
                else if (!string.ReferenceEquals(collectionVariable, null))
                {
//JAVA TO C# CONVERTER WARNING: Java wildcard generics have no direct equivalent in .NET:
//ORIGINAL LINE: collection = (java.util.Collection<?>) execution.getVariable(collectionVariable);
                    collection = (ICollection <object>)execution.getVariable(collectionVariable);
                }

                object value = getElementAtIndex(loopCounter, collection);
                setLoopVariable(execution, collectionElementVariable, value);
            }
        }
Example #4
0
        // Helpers //////////////////////////////////////////////////////////////////////

        protected internal virtual int resolveNrOfInstances(ActivityExecution execution)
        {
            int nrOfInstances = -1;

            if (loopCardinalityExpression != null)
            {
                nrOfInstances = resolveLoopCardinality(execution);
            }
            else if (collectionExpression != null)
            {
                object obj = collectionExpression.getValue(execution);
                if (!(obj is System.Collections.ICollection))
                {
                    throw LOG.unresolvableExpressionException(collectionExpression.ExpressionText, "Collection");
                }
//JAVA TO C# CONVERTER WARNING: Java wildcard generics have no direct equivalent in .NET:
//ORIGINAL LINE: nrOfInstances = ((java.util.Collection<?>) obj).size();
                nrOfInstances = ((ICollection <object>)obj).Count;
            }
            else if (!string.ReferenceEquals(collectionVariable, null))
            {
                object obj = execution.getVariable(collectionVariable);
                if (!(obj is System.Collections.ICollection))
                {
                    throw LOG.invalidVariableTypeException(collectionVariable, "Collection");
                }
//JAVA TO C# CONVERTER WARNING: Java wildcard generics have no direct equivalent in .NET:
//ORIGINAL LINE: nrOfInstances = ((java.util.Collection<?>) obj).size();
                nrOfInstances = ((ICollection <object>)obj).Count;
            }
            else
            {
                throw LOG.resolveCollectionExpressionOrVariableReferenceException();
            }
            return(nrOfInstances);
        }