Exemple #1
0
        public virtual void configureConditionalEventSubscriptionQuery(ListQueryParameterObject query)
        {
            configureQuery(query);
            CompositePermissionCheck permissionCheck = (new PermissionCheckBuilder()).atomicCheck(PROCESS_DEFINITION, "P.KEY_", READ).build();

            addPermissionCheck(query.AuthCheck, permissionCheck);
        }
Exemple #2
0
        public virtual IList <ExternalTaskEntity> selectExternalTasksForTopics(ICollection <TopicFetchInstruction> queryFilters, int maxResults, bool usePriority)
        {
            if (queryFilters.Count == 0)
            {
                return(new List <ExternalTaskEntity>());
            }

            IDictionary <string, object> parameters = new Dictionary <string, object>();

            parameters["topics"]        = queryFilters;
            parameters["now"]           = ClockUtil.CurrentTime;
            parameters["applyOrdering"] = usePriority;
            IList <QueryOrderingProperty> orderingProperties = new List <QueryOrderingProperty>();

            orderingProperties.Add(EXT_TASK_PRIORITY_ORDERING_PROPERTY);
            parameters["orderingProperties"] = orderingProperties;

            ListQueryParameterObject parameter = new ListQueryParameterObject(parameters, 0, maxResults);

            configureQuery(parameter);

            DbEntityManager manager = DbEntityManager;

            return(manager.selectList("selectExternalTasksForTopics", parameter));
        }
Exemple #3
0
        /// <returns> the conditional start event subscriptions (from any tenant)
        ///  </returns>
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @SuppressWarnings("unchecked") public java.util.List<EventSubscriptionEntity> findConditionalStartEventSubscription()
        public virtual IList <EventSubscriptionEntity> findConditionalStartEventSubscription()
        {
            ListQueryParameterObject parameter = new ListQueryParameterObject();

            configurParameterObject(parameter);
            return(DbEntityManager.selectList("selectConditionalStartEventSubscription",parameter));
        }
Exemple #4
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void shouldCacheCheck()
        public virtual void shouldCacheCheck()
        {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.impl.db.ListQueryParameterObject query = new org.camunda.bpm.engine.impl.db.ListQueryParameterObject();
            ListQueryParameterObject query = new ListQueryParameterObject();
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.impl.db.AuthorizationCheck authCheck = query.getAuthCheck();
            AuthorizationCheck authCheck = query.AuthCheck;

//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final java.util.HashMap<String, Object> expectedQueryParams = new java.util.HashMap<String, Object>();
            Dictionary <string, object> expectedQueryParams = new Dictionary <string, object>();

            expectedQueryParams["userId"]       = AUTHENTICATED_USER_ID;
            expectedQueryParams["authGroupIds"] = AUTHENTICATED_GROUPS;

            // given
            when(mockedConfiguration.AuthorizationCheckRevokes).thenReturn(ProcessEngineConfiguration.AUTHORIZATION_CHECK_REVOKE_AUTO);
            when(mockedEntityManager.selectBoolean(eq("selectRevokeAuthorization"), eq(expectedQueryParams))).thenReturn(true);

            // if
            authorizationManager.configureQuery(query);
            authorizationManager.configureQuery(query);

            // then
            assertEquals(true, authCheck.RevokeAuthorizationCheckEnabled);
            verify(mockedEntityManager, times(1)).selectBoolean(eq("selectRevokeAuthorization"), eq(expectedQueryParams));
        }
Exemple #5
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @SuppressWarnings("unchecked") public DecisionDefinitionEntity findDecisionDefinitionByKeyVersionTagAndTenantId(String decisionDefinitionKey, String decisionDefinitionVersionTag, String tenantId)
        public virtual DecisionDefinitionEntity findDecisionDefinitionByKeyVersionTagAndTenantId(string decisionDefinitionKey, string decisionDefinitionVersionTag, string tenantId)
        {
            IDictionary <string, object> parameters = new Dictionary <string, object>();

            parameters["decisionDefinitionVersionTag"] = decisionDefinitionVersionTag;
            parameters["decisionDefinitionKey"]        = decisionDefinitionKey;
            parameters["tenantId"] = tenantId;

            ListQueryParameterObject parameterObject = new ListQueryParameterObject();

            parameterObject.Parameter = parameters;

            IList <DecisionDefinitionEntity> decisionDefinitions = DbEntityManager.selectList("selectDecisionDefinitionByKeyVersionTag", parameterObject);

            if (decisionDefinitions.Count == 1)
            {
                return(decisionDefinitions[0]);
            }
            else if (decisionDefinitions.Count == 0)
            {
                return(null);
            }
            else
            {
                throw LOG.multipleDefinitionsForVersionTagException(decisionDefinitionKey, decisionDefinitionVersionTag);
            }
        }
Exemple #6
0
        public virtual void configureExternalTaskFetch(ListQueryParameterObject parameter)
        {
            configureQuery(parameter);

            CompositePermissionCheck permissionCheck = newPermissionCheckBuilder().conjunctive().composite().disjunctive().atomicCheck(PROCESS_INSTANCE, "RES.PROC_INST_ID_", READ).atomicCheck(PROCESS_DEFINITION, "RES.PROC_DEF_KEY_", READ_INSTANCE).done().composite().disjunctive().atomicCheck(PROCESS_INSTANCE, "RES.PROC_INST_ID_", UPDATE).atomicCheck(PROCESS_DEFINITION, "RES.PROC_DEF_KEY_", UPDATE_INSTANCE).done().build();

            addPermissionCheck(parameter.AuthCheck, permissionCheck);
        }
Exemple #7
0
        public virtual ListQueryParameterObject configureQuery(ListQueryParameterObject query)
        {
            TenantCheck tenantCheck = query.TenantCheck;

            configureTenantCheck(tenantCheck);

            return(query);
        }
Exemple #8
0
        public virtual ListQueryParameterObject configureQuery(object parameters)
        {
            ListQueryParameterObject queryObject = new ListQueryParameterObject();

            queryObject.Parameter = parameters;

            return(configureQuery(queryObject));
        }
Exemple #9
0
        public virtual void configureQueryHistoricFinishedInstanceReport(ListQueryParameterObject query, Resource resource)
        {
            configureQuery(query);

            CompositePermissionCheck compositePermissionCheck = (new PermissionCheckBuilder()).conjunctive().atomicCheck(resource, "RES.KEY_", READ).atomicCheck(resource, "RES.KEY_", READ_HISTORY).build();

            query.AuthCheck.PermissionChecks = compositePermissionCheck;
        }
Exemple #10
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @SuppressWarnings("unchecked") public java.util.List<org.camunda.bpm.engine.task.Event> findEventsByTaskId(String taskId)
        public virtual IList <Event> findEventsByTaskId(string taskId)
        {
            checkHistoryEnabled();

            ListQueryParameterObject query = new ListQueryParameterObject();

            query.Parameter = taskId;
            query.OrderingProperties.Add(new QueryOrderingProperty(new QueryPropertyImpl("TIME_"), Direction.DESCENDING));

            return(DbEntityManager.selectList("selectEventsByTaskId", query));
        }
Exemple #11
0
        public virtual void updateBatchSuspensionStateById(string batchId, SuspensionState suspensionState)
        {
            IDictionary <string, object> parameters = new Dictionary <string, object>();

            parameters["batchId"]         = batchId;
            parameters["suspensionState"] = suspensionState.StateCode;

            ListQueryParameterObject queryParameter = new ListQueryParameterObject();

            queryParameter.Parameter = parameters;

            DbEntityManager.update(typeof(BatchEntity), "updateBatchSuspensionStateByParameters", queryParameter);
        }
Exemple #12
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @SuppressWarnings("unchecked") public java.util.List<String> findHistoricProcessInstanceIdsForCleanup(System.Nullable<int> batchSize, int minuteFrom, int minuteTo)
        public virtual IList <string> findHistoricProcessInstanceIdsForCleanup(int?batchSize, int minuteFrom, int minuteTo)
        {
            IDictionary <string, object> parameters = new Dictionary <string, object>();

            parameters["currentTimestamp"] = ClockUtil.CurrentTime;
            if (minuteTo - minuteFrom + 1 < 60)
            {
                parameters["minuteFrom"] = minuteFrom;
                parameters["minuteTo"]   = minuteTo;
            }
            ListQueryParameterObject parameterObject = new ListQueryParameterObject(parameters, 0, batchSize.Value);

            return((IList <string>)DbEntityManager.selectList("selectHistoricProcessInstanceIdsForCleanup", parameterObject));
        }
Exemple #13
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @SuppressWarnings("unchecked") public java.util.List<String> findHistoricBatchIdsForCleanup(System.Nullable<int> batchSize, java.util.Map<String, int> batchOperationsForHistoryCleanup, int minuteFrom, int minuteTo)
        public virtual IList <string> findHistoricBatchIdsForCleanup(int?batchSize, IDictionary <string, int> batchOperationsForHistoryCleanup, int minuteFrom, int minuteTo)
        {
            IDictionary <string, object> queryParameters = new Dictionary <string, object>();

            queryParameters["currentTimestamp"] = ClockUtil.CurrentTime;
            queryParameters["map"] = batchOperationsForHistoryCleanup;
            if (minuteTo - minuteFrom + 1 < 60)
            {
                queryParameters["minuteFrom"] = minuteFrom;
                queryParameters["minuteTo"]   = minuteTo;
            }
            ListQueryParameterObject parameterObject = new ListQueryParameterObject(queryParameters, 0, batchSize.Value);

            parameterObject.OrderingProperties.Add(new QueryOrderingProperty(new QueryPropertyImpl("END_TIME_"), Direction.ASCENDING));

            return((IList <string>)DbEntityManager.selectList("selectHistoricBatchIdsForCleanup", parameterObject));
        }
Exemple #14
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void shouldUseCfgValue_always()
        public virtual void shouldUseCfgValue_always()
        {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.impl.db.ListQueryParameterObject query = new org.camunda.bpm.engine.impl.db.ListQueryParameterObject();
            ListQueryParameterObject query = new ListQueryParameterObject();
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.impl.db.AuthorizationCheck authCheck = query.getAuthCheck();
            AuthorizationCheck authCheck = query.AuthCheck;

            // given
            when(mockedConfiguration.AuthorizationCheckRevokes).thenReturn(ProcessEngineConfiguration.AUTHORIZATION_CHECK_REVOKE_ALWAYS);

            // if
            authorizationManager.configureQuery(query);

            // then
            assertEquals(true, authCheck.RevokeAuthorizationCheckEnabled);
            verifyNoMoreInteractions(mockedEntityManager);
        }
Exemple #15
0
        // authorization checks on queries ////////////////////////////////

        public virtual void configureQuery(ListQueryParameterObject query)
        {
            AuthorizationCheck authCheck = query.AuthCheck;

            authCheck.PermissionChecks.clear();

            if (AuthCheckExecuted)
            {
                Authentication currentAuthentication = CurrentAuthentication;
                authCheck.AuthUserId   = currentAuthentication.UserId;
                authCheck.AuthGroupIds = currentAuthentication.GroupIds;
                enableQueryAuthCheck(authCheck);
            }
            else
            {
                authCheck.AuthorizationCheckEnabled = false;
                authCheck.AuthUserId   = null;
                authCheck.AuthGroupIds = null;
            }
        }
Exemple #16
0
 public virtual System.Collections.IList selectList(string statement, ListQueryParameterObject parameter, Page page)
 {
     return(selectList(statement, parameter));
 }
Exemple #17
0
 protected internal virtual void configurParameterObject(ListQueryParameterObject parameter)
 {
     AuthorizationManager.configureConditionalEventSubscriptionQuery(parameter);
     TenantManager.configureQuery(parameter);
 }
Exemple #18
0
 protected internal virtual void configureQuery(ListQueryParameterObject parameter)
 {
     AuthorizationManager.configureExternalTaskFetch(parameter);
     TenantManager.configureQuery(parameter);
 }
Exemple #19
0
 public virtual System.Collections.IList selectList(string statement, ListQueryParameterObject parameter)
 {
     return(selectListWithRawParameter(statement, parameter, parameter.FirstResult, parameter.MaxResults));
 }