diff --git a/pom.xml b/pom.xml
index 3bb6e85..3b0354b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
io.github.extended-green-cloud
jrba
- 1.3
+ 1.3.1
jar
diff --git a/src/main/java/org/jrba/agentmodel/domain/AbstractAgent.java b/src/main/java/org/jrba/agentmodel/domain/AbstractAgent.java
index 0a74b83..3e3992b 100644
--- a/src/main/java/org/jrba/agentmodel/domain/AbstractAgent.java
+++ b/src/main/java/org/jrba/agentmodel/domain/AbstractAgent.java
@@ -18,8 +18,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.google.common.annotations.VisibleForTesting;
-
import jade.core.Agent;
import jade.core.behaviours.Behaviour;
import lombok.Getter;
@@ -52,7 +50,6 @@ public AbstractAgent() {
/**
* Abstract method used to validate if arguments of the given agent are correct
*/
- @VisibleForTesting
protected void validateAgentArguments() {
if (isNull(properties)) {
logger.warn("Agent properties have not been set!");
@@ -64,7 +61,6 @@ protected void validateAgentArguments() {
*
* @param arguments arguments passed by the user
*/
- @VisibleForTesting
protected void initializeAgent(final Object[] arguments) {
//TO BE OVERRIDDEN BY USER
}
@@ -74,7 +70,6 @@ protected void initializeAgent(final Object[] arguments) {
*
* @return list of behaviours that are to be initially initiated by the Agent
*/
- @VisibleForTesting
protected List prepareStartingBehaviours() {
return emptyList();
}
@@ -83,7 +78,6 @@ protected List prepareStartingBehaviours() {
* Abstract method responsible for running starting behaviours,
* By default
*/
- @VisibleForTesting
protected void runStartingBehaviours() {
addBehaviour(new ListenForControllerObjects(this, prepareStartingBehaviours(), getObjectsNumber()));
}
@@ -91,7 +85,6 @@ protected void runStartingBehaviours() {
/**
* Abstract method responsible for running initial custom behaviours prepared only for selected rule set
*/
- @VisibleForTesting
protected void runInitialBehavioursForRuleSet() {
final RuleSetFacts facts = new RuleSetFacts(rulesController.getLatestLongTermRuleSetIdx().get());
facts.put(RULE_TYPE, INITIALIZE_BEHAVIOURS_RULE);
@@ -151,7 +144,6 @@ protected String getDefaultRuleSet() {
}
@Override
- @VisibleForTesting
protected void setup() {
final Object[] arguments = getArguments();
@@ -161,7 +153,6 @@ protected void setup() {
}
@Override
- @VisibleForTesting
protected void takeDown() {
logger.info("I'm finished. Bye!");
super.takeDown();
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateCallForProposal.java b/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateCallForProposal.java
index d3489ee..275425b 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateCallForProposal.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateCallForProposal.java
@@ -11,12 +11,12 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.CFP_RESULT;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_COMPARE_MESSAGES_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_AVAILABLE_AGENTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_RESPONSES_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_REJECT_PROPOSAL_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_SELECTED_PROPOSAL_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_COMPARE_MESSAGES_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_AVAILABLE_AGENTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_RESPONSES_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_REJECT_PROPOSAL_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_SELECTED_PROPOSAL_STEP;
import static org.jrba.utils.messages.MessageReader.readForPerformative;
import java.util.Vector;
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateProposal.java b/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateProposal.java
index 4f093a4..bd32497 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateProposal.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateProposal.java
@@ -6,9 +6,9 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.PROPOSAL_REJECT_MESSAGE;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_ACCEPT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_REJECT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_ACCEPT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_REJECT_STEP;
import org.jrba.rulesengine.RulesController;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateRequest.java b/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateRequest.java
index faa2c3e..feff0ff 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateRequest.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateRequest.java
@@ -11,11 +11,11 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.REQUEST_REFUSE_MESSAGE;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_ALL_RESULTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_FAILURE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_INFORM_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_REFUSE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_ALL_RESULTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_FAILURE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_INFORM_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_REFUSE_STEP;
import static org.jrba.utils.messages.MessageReader.readForPerformative;
import java.util.Vector;
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateSubscription.java b/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateSubscription.java
index c7c08c1..bba96dc 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateSubscription.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/initiate/InitiateSubscription.java
@@ -8,8 +8,8 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.SUBSCRIPTION_ADDED_AGENTS;
import static org.jrba.rulesengine.constants.FactTypeConstants.SUBSCRIPTION_CREATE_MESSAGE;
import static org.jrba.rulesengine.constants.FactTypeConstants.SUBSCRIPTION_REMOVED_AGENTS;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_HANDLE_AGENTS_RESPONSE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_HANDLE_AGENTS_RESPONSE_STEP;
import static org.jrba.utils.mapper.FactsMapper.mapToRuleSetFacts;
import static org.jrba.utils.yellowpages.YellowPagesRegister.decodeSubscription;
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/listen/ListenForMessages.java b/src/main/java/org/jrba/rulesengine/behaviour/listen/ListenForMessages.java
index 13d5368..8a2e5fa 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/listen/ListenForMessages.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/listen/ListenForMessages.java
@@ -7,8 +7,8 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_SET_IDX;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_CONTENT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_CONTENT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_STEP;
import static org.jrba.utils.mapper.FactsMapper.mapToRuleSetFacts;
import java.util.List;
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/listen/ListenForSingleMessage.java b/src/main/java/org/jrba/rulesengine/behaviour/listen/ListenForSingleMessage.java
index f598f05..7de876f 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/listen/ListenForSingleMessage.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/listen/ListenForSingleMessage.java
@@ -8,8 +8,8 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.RECEIVED_MESSAGE;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_HANDLE_MESSAGE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_HANDLE_MESSAGE_STEP;
import org.jrba.rulesengine.RulesController;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/schedule/ScheduleOnce.java b/src/main/java/org/jrba/rulesengine/behaviour/schedule/ScheduleOnce.java
index 6dacef5..578e767 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/schedule/ScheduleOnce.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/schedule/ScheduleOnce.java
@@ -5,8 +5,8 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
import static org.jrba.rulesengine.constants.FactTypeConstants.TRIGGER_TIME;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SCHEDULED_EXECUTE_ACTION_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SCHEDULED_SELECT_TIME_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SCHEDULED_EXECUTE_ACTION_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SCHEDULED_SELECT_TIME_STEP;
import static org.jrba.utils.mapper.FactsMapper.mapToRuleSetFacts;
import static org.jrba.utils.rules.RuleSetSelector.selectRuleSetIndex;
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/schedule/SchedulePeriodically.java b/src/main/java/org/jrba/rulesengine/behaviour/schedule/SchedulePeriodically.java
index 30d69b3..7268f14 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/schedule/SchedulePeriodically.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/schedule/SchedulePeriodically.java
@@ -3,8 +3,8 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
import static org.jrba.rulesengine.constants.FactTypeConstants.TRIGGER_PERIOD;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PERIODIC_EXECUTE_ACTION_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PERIODIC_SELECT_PERIOD_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PERIODIC_EXECUTE_ACTION_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PERIODIC_SELECT_PERIOD_STEP;
import static org.jrba.utils.mapper.FactsMapper.mapToRuleSetFacts;
import org.jrba.rulesengine.RulesController;
diff --git a/src/main/java/org/jrba/rulesengine/behaviour/search/SearchForAgents.java b/src/main/java/org/jrba/rulesengine/behaviour/search/SearchForAgents.java
index 4a28b49..136b974 100644
--- a/src/main/java/org/jrba/rulesengine/behaviour/search/SearchForAgents.java
+++ b/src/main/java/org/jrba/rulesengine/behaviour/search/SearchForAgents.java
@@ -4,9 +4,9 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.RESULT;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_AGENTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_NO_RESULTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_RESULTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_AGENTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_NO_RESULTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_RESULTS_STEP;
import java.util.Set;
diff --git a/src/main/java/org/jrba/rulesengine/rest/controller/RuleSetControllerExceptionHandler.java b/src/main/java/org/jrba/rulesengine/rest/controller/RuleSetControllerExceptionHandler.java
index c1652b0..aa3bd42 100644
--- a/src/main/java/org/jrba/rulesengine/rest/controller/RuleSetControllerExceptionHandler.java
+++ b/src/main/java/org/jrba/rulesengine/rest/controller/RuleSetControllerExceptionHandler.java
@@ -1,6 +1,5 @@
package org.jrba.rulesengine.rest.controller;
-import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR;
import static org.springframework.http.HttpStatus.NOT_FOUND;
import org.jrba.exception.CannotFindAgentException;
diff --git a/src/main/java/org/jrba/rulesengine/rest/domain/CombinedRuleRest.java b/src/main/java/org/jrba/rulesengine/rest/domain/CombinedRuleRest.java
index 90e490d..e5ac918 100644
--- a/src/main/java/org/jrba/rulesengine/rest/domain/CombinedRuleRest.java
+++ b/src/main/java/org/jrba/rulesengine/rest/domain/CombinedRuleRest.java
@@ -3,7 +3,7 @@
import java.io.Serializable;
import java.util.List;
-import org.jrba.rulesengine.enums.rulecombinationtype.AgentCombinedRuleType;
+import org.jrba.rulesengine.types.rulecombinationtype.AgentCombinedRuleType;
import com.fasterxml.jackson.annotation.JsonInclude;
diff --git a/src/main/java/org/jrba/rulesengine/rule/AgentBasicRule.java b/src/main/java/org/jrba/rulesengine/rule/AgentBasicRule.java
index 30a1f10..3d7eb7e 100644
--- a/src/main/java/org/jrba/rulesengine/rule/AgentBasicRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/AgentBasicRule.java
@@ -10,7 +10,7 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.BASIC;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.BASIC;
import static org.jrba.rulesengine.mvel.MVELObjectType.getObjectForType;
import static org.slf4j.LoggerFactory.getLogger;
@@ -34,6 +34,7 @@
import jade.core.Agent;
import lombok.EqualsAndHashCode;
import lombok.Getter;
+import lombok.NoArgsConstructor;
/**
* Abstract class defining structure of a rule, executed within an agent's behaviour.
@@ -43,6 +44,7 @@
*/
@Getter
@EqualsAndHashCode(callSuper = true)
+@NoArgsConstructor
@SuppressWarnings("unchecked")
public class AgentBasicRule> extends BasicRule
implements AgentRule, Serializable {
diff --git a/src/main/java/org/jrba/rulesengine/rule/AgentRuleDescription.java b/src/main/java/org/jrba/rulesengine/rule/AgentRuleDescription.java
index d24be0b..febe13e 100644
--- a/src/main/java/org/jrba/rulesengine/rule/AgentRuleDescription.java
+++ b/src/main/java/org/jrba/rulesengine/rule/AgentRuleDescription.java
@@ -1,6 +1,6 @@
package org.jrba.rulesengine.rule;
-import org.jrba.rulesengine.enums.rulesteptype.RuleStepType;
+import org.jrba.rulesengine.types.rulesteptype.RuleStepType;
/**
* Class storing common properties which describe a given rule
diff --git a/src/main/java/org/jrba/rulesengine/rule/combined/AgentCombinedRule.java b/src/main/java/org/jrba/rulesengine/rule/combined/AgentCombinedRule.java
index f12b055..45a7c75 100644
--- a/src/main/java/org/jrba/rulesengine/rule/combined/AgentCombinedRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/combined/AgentCombinedRule.java
@@ -2,9 +2,9 @@
import static java.util.Collections.singletonList;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_COMBINED_RULE;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.BASIC;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.COMBINED;
import static org.jrba.rulesengine.mvel.MVELRuleMapper.getRuleForType;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.BASIC;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.COMBINED;
import java.io.Serializable;
import java.util.ArrayList;
@@ -18,13 +18,13 @@
import org.jrba.agentmodel.domain.node.AgentNode;
import org.jrba.agentmodel.domain.props.AgentProps;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.enums.rulecombinationtype.AgentCombinedRuleType;
import org.jrba.rulesengine.rest.domain.CombinedRuleRest;
import org.jrba.rulesengine.rule.AgentBasicRule;
import org.jrba.rulesengine.rule.AgentRule;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSet;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
+import org.jrba.rulesengine.types.rulecombinationtype.AgentCombinedRuleType;
import lombok.Getter;
import lombok.Setter;
@@ -83,6 +83,21 @@ protected AgentCombinedRule(final RulesController controller, final AgentC
this.rulesToCombine = new ArrayList<>(constructRules());
}
+ /**
+ * Constructor
+ *
+ * @param controller rules controller connected to the agent
+ * @param combinationType way in which agent rules are to be combined
+ * @param rulesToCombine list of nested rules
+ */
+ protected AgentCombinedRule(final RulesController controller, final AgentCombinedRuleType combinationType,
+ final List rulesToCombine) {
+ super(controller);
+ this.combinationType = combinationType.getType();
+ this.ruleSet = null;
+ this.rulesToCombine = new ArrayList<>(rulesToCombine);
+ }
+
/**
* Constructor
*
@@ -205,7 +220,7 @@ public boolean evaluate(final Facts facts) {
if (preEvaluated.test((RuleSetFacts) facts)) {
preExecute.accept((RuleSetFacts) facts);
}
- return preEvaluated.test((RuleSetFacts) facts) && AgentCombinedRule.this.evaluate(facts);
+ return preEvaluated.test((RuleSetFacts) facts) && super.evaluate(facts);
}
@Override
@@ -266,7 +281,7 @@ public AgentRuleDescription initializeRuleDescription() {
public boolean evaluate(final Facts facts) {
if (preEvaluated.test((RuleSetFacts) facts)) {
preExecute.accept((RuleSetFacts) facts);
- return AgentCombinedRule.this.evaluate(facts);
+ return super.evaluate(facts);
}
return false;
}
diff --git a/src/main/java/org/jrba/rulesengine/rule/simple/AgentBehaviourRule.java b/src/main/java/org/jrba/rulesengine/rule/simple/AgentBehaviourRule.java
index c4aceb1..5e256a2 100644
--- a/src/main/java/org/jrba/rulesengine/rule/simple/AgentBehaviourRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/simple/AgentBehaviourRule.java
@@ -4,7 +4,7 @@
import static java.util.Objects.nonNull;
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.RuleTypeConstants.INITIALIZE_BEHAVIOURS_RULE;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.BEHAVIOUR;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.BEHAVIOUR;
import java.io.Serializable;
import java.util.ArrayList;
@@ -16,12 +16,10 @@
import org.jrba.agentmodel.domain.node.AgentNode;
import org.jrba.agentmodel.domain.props.AgentProps;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.enums.ruletype.AgentRuleType;
import org.jrba.rulesengine.rest.domain.BehaviourRuleRest;
import org.jrba.rulesengine.rule.AgentBasicRule;
import org.jrba.rulesengine.rule.AgentRule;
import org.jrba.rulesengine.rule.AgentRuleDescription;
-import org.jrba.rulesengine.ruleset.RuleSet;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
import org.mvel2.MVEL;
diff --git a/src/main/java/org/jrba/rulesengine/rule/simple/AgentChainRule.java b/src/main/java/org/jrba/rulesengine/rule/simple/AgentChainRule.java
index 350fbf5..e473c23 100644
--- a/src/main/java/org/jrba/rulesengine/rule/simple/AgentChainRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/simple/AgentChainRule.java
@@ -3,7 +3,7 @@
import static java.util.Objects.isNull;
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_CHAIN_RULE;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.CHAIN;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.CHAIN;
import java.io.Serializable;
@@ -11,7 +11,6 @@
import org.jrba.agentmodel.domain.node.AgentNode;
import org.jrba.agentmodel.domain.props.AgentProps;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.enums.ruletype.AgentRuleType;
import org.jrba.rulesengine.rest.domain.RuleRest;
import org.jrba.rulesengine.rule.AgentBasicRule;
import org.jrba.rulesengine.rule.AgentRule;
@@ -32,7 +31,7 @@
public class AgentChainRule> extends AgentBasicRule implements
Serializable {
- private RuleSet ruleSet;
+ private final RuleSet ruleSet;
/**
* Copy constructor.
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentCFPRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentCFPRule.java
index a547d31..6fc653e 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentCFPRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentCFPRule.java
@@ -17,13 +17,13 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.NEW_PROPOSAL;
import static org.jrba.rulesengine.constants.MVELParameterConstants.PROPOSAL_TO_REJECT;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_CFP_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_COMPARE_MESSAGES_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_AVAILABLE_AGENTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_RESPONSES_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_REJECT_PROPOSAL_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_SELECTED_PROPOSAL_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.CFP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_COMPARE_MESSAGES_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_AVAILABLE_AGENTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_RESPONSES_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_REJECT_PROPOSAL_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_SELECTED_PROPOSAL_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.CFP;
import java.io.Serializable;
import java.util.ArrayList;
@@ -274,8 +274,7 @@ public void executeRule(final RuleSetFacts facts) {
if (nonNull(AgentCFPRule.this.initialParameters)) {
AgentCFPRule.this.initialParameters.replace(FACTS, facts);
}
-
- int result = 0;
+ int result;
if (isNull(expressionCompareProposals)) {
result = compareProposals(facts, bestProposal, newProposal);
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentMessageListenerRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentMessageListenerRule.java
index e6e6910..31741c1 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentMessageListenerRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentMessageListenerRule.java
@@ -13,10 +13,10 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_MESSAGE_LISTENER_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_PROCESS_CONTENT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_CONTENT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.LISTENER;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_PROCESS_CONTENT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_CONTENT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.LISTENER;
import static org.jrba.utils.mapper.FactsMapper.mapToRuleSetFacts;
import static org.jrba.utils.messages.MessageReader.readMessageContent;
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentPeriodicRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentPeriodicRule.java
index ce3abca..383b5a4 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentPeriodicRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentPeriodicRule.java
@@ -7,9 +7,9 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.TRIGGER_PERIOD;
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_PERIODIC_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PERIODIC_EXECUTE_ACTION_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PERIODIC_SELECT_PERIOD_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.PERIODIC;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PERIODIC_EXECUTE_ACTION_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PERIODIC_SELECT_PERIOD_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.PERIODIC;
import java.io.Serializable;
import java.util.ArrayList;
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentProposalRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentProposalRule.java
index aeaf1cd..6203eb8 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentProposalRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentProposalRule.java
@@ -12,10 +12,10 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.REJECT_MESSAGE;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_PROPOSAL_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_ACCEPT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_REJECT_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.PROPOSAL;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_ACCEPT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_REJECT_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.PROPOSAL;
import java.io.Serializable;
import java.util.ArrayList;
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentRequestRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentRequestRule.java
index adf9a73..4badb1e 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentRequestRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentRequestRule.java
@@ -17,12 +17,12 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.INFORM_RESULTS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.REFUSE;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_REQUEST_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_ALL_RESULTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_FAILURE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_INFORM_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_REFUSE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.REQUEST;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_ALL_RESULTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_FAILURE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_INFORM_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_REFUSE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.REQUEST;
import java.io.Serializable;
import java.util.ArrayList;
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentScheduledRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentScheduledRule.java
index be61da7..07992b4 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentScheduledRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentScheduledRule.java
@@ -6,9 +6,9 @@
import static org.jrba.rulesengine.constants.FactTypeConstants.TRIGGER_TIME;
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_SCHEDULE_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SCHEDULED_EXECUTE_ACTION_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SCHEDULED_SELECT_TIME_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SCHEDULED;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SCHEDULED_EXECUTE_ACTION_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SCHEDULED_SELECT_TIME_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SCHEDULED;
import java.io.Serializable;
import java.time.Instant;
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentSearchRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentSearchRule.java
index b584a87..7e7126b 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentSearchRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentSearchRule.java
@@ -7,10 +7,10 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.AGENTS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_SEARCH_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_AGENTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_NO_RESULTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_RESULTS_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SEARCH;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_AGENTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_NO_RESULTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_RESULTS_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SEARCH;
import java.io.Serializable;
import java.util.ArrayList;
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentSingleMessageListenerRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentSingleMessageListenerRule.java
index 4e42437..cac601a 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentSingleMessageListenerRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentSingleMessageListenerRule.java
@@ -10,9 +10,9 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.MESSAGE;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_SINGLE_MESSAGE_LISTENER_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_HANDLE_MESSAGE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.LISTENER_SINGLE;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_HANDLE_MESSAGE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.LISTENER_SINGLE;
import java.io.Serializable;
import java.util.ArrayList;
diff --git a/src/main/java/org/jrba/rulesengine/rule/template/AgentSubscriptionRule.java b/src/main/java/org/jrba/rulesengine/rule/template/AgentSubscriptionRule.java
index bbf4f87..b94a217 100644
--- a/src/main/java/org/jrba/rulesengine/rule/template/AgentSubscriptionRule.java
+++ b/src/main/java/org/jrba/rulesengine/rule/template/AgentSubscriptionRule.java
@@ -12,9 +12,9 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.REMOVED_AGENTS;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_SUBSCRIPTION_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_HANDLE_AGENTS_RESPONSE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SUBSCRIPTION;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_HANDLE_AGENTS_RESPONSE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SUBSCRIPTION;
import java.io.Serializable;
import java.util.ArrayList;
diff --git a/src/main/java/org/jrba/rulesengine/enums/rulecombinationtype/AgentCombinedRuleType.java b/src/main/java/org/jrba/rulesengine/types/rulecombinationtype/AgentCombinedRuleType.java
similarity index 76%
rename from src/main/java/org/jrba/rulesengine/enums/rulecombinationtype/AgentCombinedRuleType.java
rename to src/main/java/org/jrba/rulesengine/types/rulecombinationtype/AgentCombinedRuleType.java
index d4578b3..c71e6d2 100644
--- a/src/main/java/org/jrba/rulesengine/enums/rulecombinationtype/AgentCombinedRuleType.java
+++ b/src/main/java/org/jrba/rulesengine/types/rulecombinationtype/AgentCombinedRuleType.java
@@ -1,4 +1,4 @@
-package org.jrba.rulesengine.enums.rulecombinationtype;
+package org.jrba.rulesengine.types.rulecombinationtype;
/**
* Interface that is used while defining combined rule types
diff --git a/src/main/java/org/jrba/rulesengine/enums/rulecombinationtype/AgentCombinedRuleTypeEnum.java b/src/main/java/org/jrba/rulesengine/types/rulecombinationtype/AgentCombinedRuleTypeEnum.java
similarity index 84%
rename from src/main/java/org/jrba/rulesengine/enums/rulecombinationtype/AgentCombinedRuleTypeEnum.java
rename to src/main/java/org/jrba/rulesengine/types/rulecombinationtype/AgentCombinedRuleTypeEnum.java
index e421549..ad6a23c 100644
--- a/src/main/java/org/jrba/rulesengine/enums/rulecombinationtype/AgentCombinedRuleTypeEnum.java
+++ b/src/main/java/org/jrba/rulesengine/types/rulecombinationtype/AgentCombinedRuleTypeEnum.java
@@ -1,4 +1,4 @@
-package org.jrba.rulesengine.enums.rulecombinationtype;
+package org.jrba.rulesengine.types.rulecombinationtype;
import lombok.AllArgsConstructor;
import lombok.Getter;
diff --git a/src/main/java/org/jrba/rulesengine/enums/rulesteptype/RuleStepType.java b/src/main/java/org/jrba/rulesengine/types/rulesteptype/RuleStepType.java
similarity index 77%
rename from src/main/java/org/jrba/rulesengine/enums/rulesteptype/RuleStepType.java
rename to src/main/java/org/jrba/rulesengine/types/rulesteptype/RuleStepType.java
index 41b21c4..544c7b9 100644
--- a/src/main/java/org/jrba/rulesengine/enums/rulesteptype/RuleStepType.java
+++ b/src/main/java/org/jrba/rulesengine/types/rulesteptype/RuleStepType.java
@@ -1,4 +1,4 @@
-package org.jrba.rulesengine.enums.rulesteptype;
+package org.jrba.rulesengine.types.rulesteptype;
/**
* Interface that is used while defining rule step types
diff --git a/src/main/java/org/jrba/rulesengine/enums/rulesteptype/RuleStepTypeEnum.java b/src/main/java/org/jrba/rulesengine/types/rulesteptype/RuleStepTypeEnum.java
similarity index 97%
rename from src/main/java/org/jrba/rulesengine/enums/rulesteptype/RuleStepTypeEnum.java
rename to src/main/java/org/jrba/rulesengine/types/rulesteptype/RuleStepTypeEnum.java
index 2e1a232..7477e70 100644
--- a/src/main/java/org/jrba/rulesengine/enums/rulesteptype/RuleStepTypeEnum.java
+++ b/src/main/java/org/jrba/rulesengine/types/rulesteptype/RuleStepTypeEnum.java
@@ -1,4 +1,4 @@
-package org.jrba.rulesengine.enums.rulesteptype;
+package org.jrba.rulesengine.types.rulesteptype;
import lombok.AllArgsConstructor;
import lombok.Getter;
diff --git a/src/main/java/org/jrba/rulesengine/enums/ruletype/AgentRuleType.java b/src/main/java/org/jrba/rulesengine/types/ruletype/AgentRuleType.java
similarity index 77%
rename from src/main/java/org/jrba/rulesengine/enums/ruletype/AgentRuleType.java
rename to src/main/java/org/jrba/rulesengine/types/ruletype/AgentRuleType.java
index c3f675a..c550807 100644
--- a/src/main/java/org/jrba/rulesengine/enums/ruletype/AgentRuleType.java
+++ b/src/main/java/org/jrba/rulesengine/types/ruletype/AgentRuleType.java
@@ -1,4 +1,4 @@
-package org.jrba.rulesengine.enums.ruletype;
+package org.jrba.rulesengine.types.ruletype;
/**
* Interface that is used while defining rule types
diff --git a/src/main/java/org/jrba/rulesengine/enums/ruletype/AgentRuleTypeEnum.java b/src/main/java/org/jrba/rulesengine/types/ruletype/AgentRuleTypeEnum.java
similarity index 91%
rename from src/main/java/org/jrba/rulesengine/enums/ruletype/AgentRuleTypeEnum.java
rename to src/main/java/org/jrba/rulesengine/types/ruletype/AgentRuleTypeEnum.java
index ac4ec3e..4a9b56e 100644
--- a/src/main/java/org/jrba/rulesengine/enums/ruletype/AgentRuleTypeEnum.java
+++ b/src/main/java/org/jrba/rulesengine/types/ruletype/AgentRuleTypeEnum.java
@@ -1,4 +1,4 @@
-package org.jrba.rulesengine.enums.ruletype;
+package org.jrba.rulesengine.types.ruletype;
import lombok.AllArgsConstructor;
import lombok.Getter;
diff --git a/src/main/java/org/jrba/utils/rules/RuleSetConstructor.java b/src/main/java/org/jrba/utils/rules/RuleSetConstructor.java
index ec2a1e8..7c0ccad 100644
--- a/src/main/java/org/jrba/utils/rules/RuleSetConstructor.java
+++ b/src/main/java/org/jrba/utils/rules/RuleSetConstructor.java
@@ -1,16 +1,16 @@
package org.jrba.utils.rules;
import static java.util.Objects.nonNull;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.CFP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.COMBINED;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.LISTENER;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.LISTENER_SINGLE;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.PERIODIC;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.PROPOSAL;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.REQUEST;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SCHEDULED;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SEARCH;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SUBSCRIPTION;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.CFP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.COMBINED;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.LISTENER;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.LISTENER_SINGLE;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.PERIODIC;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.PROPOSAL;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.REQUEST;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SCHEDULED;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SEARCH;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SUBSCRIPTION;
import static org.jrba.rulesengine.rest.RuleSetRestApi.getAvailableRuleSets;
import static org.slf4j.LoggerFactory.getLogger;
@@ -21,8 +21,8 @@
import org.jrba.agentmodel.domain.node.AgentNode;
import org.jrba.agentmodel.domain.props.AgentProps;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.enums.ruletype.AgentRuleType;
-import org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum;
+import org.jrba.rulesengine.types.ruletype.AgentRuleType;
+import org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum;
import org.jrba.rulesengine.rule.AgentBasicRule;
import org.jrba.rulesengine.rule.AgentRule;
import org.jrba.rulesengine.rule.combined.AgentCombinedRule;
diff --git a/src/test/java/org/jrba/fixtures/TestAgentRuleDefault.java b/src/test/java/org/jrba/fixtures/TestAgentRuleDefault.java
index 06866eb..4362266 100644
--- a/src/test/java/org/jrba/fixtures/TestAgentRuleDefault.java
+++ b/src/test/java/org/jrba/fixtures/TestAgentRuleDefault.java
@@ -4,9 +4,7 @@
import org.jeasy.rules.api.Facts;
import org.jeasy.rules.api.Rule;
-import org.jrba.rulesengine.enums.rulesteptype.RuleStepType;
-import org.jrba.rulesengine.enums.ruletype.AgentRuleType;
-import org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum;
+import org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum;
import org.jrba.rulesengine.rule.AgentRule;
public class TestAgentRuleDefault implements AgentRule {
@@ -47,7 +45,7 @@ public boolean evaluate(final Facts facts) {
}
@Override
- public void execute(final Facts facts) throws Exception {
+ public void execute(final Facts facts) {
}
diff --git a/src/test/java/org/jrba/fixtures/TestRulesFixtures.java b/src/test/java/org/jrba/fixtures/TestRulesFixtures.java
index b0d6d0c..686ab73 100644
--- a/src/test/java/org/jrba/fixtures/TestRulesFixtures.java
+++ b/src/test/java/org/jrba/fixtures/TestRulesFixtures.java
@@ -1,21 +1,21 @@
package org.jrba.fixtures;
import static org.jrba.rulesengine.constants.RuleSetTypeConstants.DEFAULT_RULE_SET;
-import static org.jrba.rulesengine.enums.rulecombinationtype.AgentCombinedRuleTypeEnum.EXECUTE_FIRST;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.BASIC;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.BEHAVIOUR;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.CFP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.CHAIN;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.COMBINED;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.LISTENER;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.LISTENER_SINGLE;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.PERIODIC;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.PROPOSAL;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.REQUEST;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SCHEDULED;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SEARCH;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SUBSCRIPTION;
+import static org.jrba.rulesengine.types.rulecombinationtype.AgentCombinedRuleTypeEnum.EXECUTE_FIRST;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.BASIC;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.BEHAVIOUR;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.CFP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.CHAIN;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.COMBINED;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.LISTENER;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.LISTENER_SINGLE;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.PERIODIC;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.PROPOSAL;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.REQUEST;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SCHEDULED;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SEARCH;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SUBSCRIPTION;
import static org.jrba.rulesengine.mvel.MVELObjectType.MAP;
import java.util.List;
diff --git a/src/test/java/org/jrba/rulesengine/rule/AgentBasicRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/AgentBasicRuleUnitTest.java
index 1e31a3b..8b6ea53 100644
--- a/src/test/java/org/jrba/rulesengine/rule/AgentBasicRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/AgentBasicRuleUnitTest.java
@@ -14,8 +14,8 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.BASIC_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.BASIC;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.BASIC;
import static org.jrba.rulesengine.mvel.MVELRuleMapper.getRuleForType;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
@@ -134,8 +134,7 @@ void testCopyOfAgentBasicRule() {
final AgentRule rule1 = getRuleForType(prepareBehaviourRuleRest(), null);
final AgentRule rule2 = getRuleForType(prepareRequestRuleRest(), null);
- final List stepRules = List.of(rule1, rule2);
- testRule.stepRules = stepRules;
+ testRule.stepRules = List.of(rule1, rule2);
final AgentBasicRule, ?> testRuleCopy = (AgentBasicRule, ?>) testRule.copy();
diff --git a/src/test/java/org/jrba/rulesengine/rule/CommonRuleAssertions.java b/src/test/java/org/jrba/rulesengine/rule/CommonRuleAssertions.java
index 4119252..05d3fd3 100644
--- a/src/test/java/org/jrba/rulesengine/rule/CommonRuleAssertions.java
+++ b/src/test/java/org/jrba/rulesengine/rule/CommonRuleAssertions.java
@@ -6,7 +6,7 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.AGENT_PROPS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.FACTS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertInstanceOf;
diff --git a/src/test/java/org/jrba/rulesengine/rule/combined/AgentCombinedRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/combined/AgentCombinedRuleUnitTest.java
index a59fbe6..43901d6 100644
--- a/src/test/java/org/jrba/rulesengine/rule/combined/AgentCombinedRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/combined/AgentCombinedRuleUnitTest.java
@@ -2,7 +2,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
-import static org.jrba.fixtures.TestRulesFixtures.prepareBehaviourRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareCombinedRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRuleSet;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
@@ -13,23 +12,26 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_COMBINED_RULE;
-import static org.jrba.rulesengine.enums.rulecombinationtype.AgentCombinedRuleTypeEnum.EXECUTE_ALL;
-import static org.jrba.rulesengine.enums.rulecombinationtype.AgentCombinedRuleTypeEnum.EXECUTE_FIRST;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.BASIC;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.COMBINED;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
+import static org.jrba.rulesengine.types.rulecombinationtype.AgentCombinedRuleTypeEnum.EXECUTE_ALL;
+import static org.jrba.rulesengine.types.rulecombinationtype.AgentCombinedRuleTypeEnum.EXECUTE_FIRST;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.BASIC;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.COMBINED;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertInstanceOf;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import java.util.HashMap;
import java.util.List;
@@ -39,14 +41,13 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum;
-import org.jrba.rulesengine.rest.domain.BehaviourRuleRest;
import org.jrba.rulesengine.rest.domain.CombinedRuleRest;
import org.jrba.rulesengine.rule.AgentBasicRule;
import org.jrba.rulesengine.rule.AgentRule;
import org.jrba.rulesengine.rule.simple.AgentBehaviourRule;
import org.jrba.rulesengine.ruleset.RuleSet;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
+import org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
@@ -215,7 +216,7 @@ void testGetRulesExecuteFirst() {
final RuleSetFacts facts = new RuleSetFacts(0);
agentExecuteFirstCombinedRule.evaluateRule(facts);
- verify(testRule, times(2)).evaluateRule(facts);
+ verify(testRule).evaluateRule(facts);
verify(testRule).executeRule(facts);
}
@@ -249,7 +250,7 @@ void testGetRulesExecuteAll() {
final RuleSetFacts facts = new RuleSetFacts(0);
agentExecuteFirstCombinedRule.evaluateRule(facts);
- verify(testRule, times(3)).evaluateRule(facts);
+ verify(testRule, times(2)).evaluateRule(facts);
verify(testRule).executeRule(facts);
}
@@ -279,12 +280,16 @@ void testGetNestedRules() {
}
@Test
- @DisplayName("Test getting nested rules.")
+ @DisplayName("Test evaluating rules.")
void testDefaultEvaluateRule() {
- final RuleSet ruleSet = prepareRuleSet();
- final CombinedRuleRest combinedRuleRest = prepareCombinedRuleRest();
- final AgentCombinedRule, ?> testRule = new AgentCombinedRule<>(combinedRuleRest, ruleSet);
+ final AgentBasicRule, ?> mockNestedRule = mock(AgentBasicRule.class);
+ final RulesController, ?> testRulesController = prepareRulesController();
+ final AgentCombinedRule, ?> testRule = new AgentCombinedRule<>(testRulesController, EXECUTE_FIRST,
+ List.of(mockNestedRule));
+ when(mockNestedRule.evaluateRule(any())).thenReturn(true);
+ when(mockNestedRule.evaluate(any())).thenCallRealMethod();
- assertTrue(testRule.evaluateRule(new RuleSetFacts(0)));
+ assertTrue(testRule.getRules().getFirst().evaluate(new RuleSetFacts(0)));
+ verify(mockNestedRule).evaluateRule(any());
}
}
diff --git a/src/test/java/org/jrba/rulesengine/rule/simple/AgentBehaviourRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/simple/AgentBehaviourRuleUnitTest.java
index d336350..2482b99 100644
--- a/src/test/java/org/jrba/rulesengine/rule/simple/AgentBehaviourRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/simple/AgentBehaviourRuleUnitTest.java
@@ -3,8 +3,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
import static org.jrba.fixtures.TestRulesFixtures.prepareBehaviourRuleRest;
-import static org.jrba.fixtures.TestRulesFixtures.prepareDefaultRuleRest;
-import static org.jrba.fixtures.TestRulesFixtures.prepareRuleSetRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
import static org.jrba.rulesengine.constants.MVELParameterConstants.AGENT;
import static org.jrba.rulesengine.constants.MVELParameterConstants.AGENT_NODE;
@@ -13,8 +11,8 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.INITIALIZE_BEHAVIOURS_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.BEHAVIOUR;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.BEHAVIOUR;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
@@ -34,8 +32,6 @@
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
import org.jrba.rulesengine.rest.domain.BehaviourRuleRest;
-import org.jrba.rulesengine.rest.domain.RuleRest;
-import org.jrba.rulesengine.ruleset.RuleSet;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
diff --git a/src/test/java/org/jrba/rulesengine/rule/simple/AgentChainRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/simple/AgentChainRuleUnitTest.java
index a67cc0b..318b878 100644
--- a/src/test/java/org/jrba/rulesengine/rule/simple/AgentChainRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/simple/AgentChainRuleUnitTest.java
@@ -2,7 +2,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
-import static org.jrba.fixtures.TestRulesFixtures.prepareCallForProposalRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareDefaultRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRuleSetRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
@@ -13,8 +12,8 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_CHAIN_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.CHAIN;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.CHAIN;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
@@ -35,10 +34,8 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.CallForProposalRuleRest;
import org.jrba.rulesengine.rest.domain.RuleRest;
import org.jrba.rulesengine.rule.CommonRuleAssertions;
-import org.jrba.rulesengine.rule.template.AgentCFPRule;
import org.jrba.rulesengine.ruleset.RuleSet;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
import org.junit.jupiter.api.DisplayName;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentCFPRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentCFPRuleUnitTest.java
index 1549f67..877ba08 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentCFPRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentCFPRuleUnitTest.java
@@ -3,10 +3,7 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
import static org.immutables.value.internal.$guava$.collect.$ImmutableList.of;
-import static org.jrba.fixtures.TestRulesFixtures.prepareBehaviourRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareCallForProposalRuleRest;
-import static org.jrba.fixtures.TestRulesFixtures.prepareDefaultRuleRest;
-import static org.jrba.fixtures.TestRulesFixtures.prepareRequestRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
import static org.jrba.rulesengine.constants.FactTypeConstants.CFP_BEST_MESSAGE;
import static org.jrba.rulesengine.constants.FactTypeConstants.CFP_CREATE_MESSAGE;
@@ -25,15 +22,14 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.PROPOSAL_TO_REJECT;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_CFP_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_COMPARE_MESSAGES_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_AVAILABLE_AGENTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_RESPONSES_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_REJECT_PROPOSAL_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_SELECTED_PROPOSAL_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.CFP;
-import static org.jrba.rulesengine.mvel.MVELRuleMapper.getRuleForType;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_COMPARE_MESSAGES_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_AVAILABLE_AGENTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_NO_RESPONSES_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_REJECT_PROPOSAL_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_HANDLE_SELECTED_PROPOSAL_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.CFP;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -42,13 +38,11 @@
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertInstanceOf;
import static org.junit.jupiter.api.Assertions.assertNotNull;
-import static org.junit.jupiter.api.Assertions.assertNotSame;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mockStatic;
import java.util.HashMap;
-import java.util.List;
import org.jrba.agentmodel.types.AgentTypeEnum;
import org.jrba.fixtures.TestAbstractAgentCustom;
@@ -56,9 +50,6 @@
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
import org.jrba.rulesengine.rest.domain.CallForProposalRuleRest;
-import org.jrba.rulesengine.rest.domain.RuleRest;
-import org.jrba.rulesengine.rule.AgentBasicRule;
-import org.jrba.rulesengine.rule.AgentRule;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
import org.jrba.utils.messages.MessageBuilder;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentMessageListenerRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentMessageListenerRuleUnitTest.java
index 4d5dcbb..d38c5d5 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentMessageListenerRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentMessageListenerRuleUnitTest.java
@@ -6,7 +6,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
-import static org.jrba.fixtures.TestRulesFixtures.prepareCallForProposalRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareMessageListenerRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRuleSet;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
@@ -23,11 +22,11 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_MESSAGE_LISTENER_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_PROCESS_CONTENT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_CONTENT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.LISTENER;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_PROCESS_CONTENT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_CONTENT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.MESSAGE_READER_READ_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.LISTENER;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -49,9 +48,7 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.CallForProposalRuleRest;
import org.jrba.rulesengine.rest.domain.MessageListenerRuleRest;
-import org.jrba.rulesengine.rule.AgentBasicRule;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSet;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentPeriodicRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentPeriodicRuleUnitTest.java
index a2c9988..6c806ea 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentPeriodicRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentPeriodicRuleUnitTest.java
@@ -2,7 +2,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
-import static org.jrba.fixtures.TestRulesFixtures.prepareCallForProposalRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.preparePeriodicRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
import static org.jrba.rulesengine.constants.FactTypeConstants.TRIGGER_PERIOD;
@@ -13,10 +12,10 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_PERIODIC_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PERIODIC_EXECUTE_ACTION_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PERIODIC_SELECT_PERIOD_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.PERIODIC;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PERIODIC_EXECUTE_ACTION_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PERIODIC_SELECT_PERIOD_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.PERIODIC;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -36,7 +35,6 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.CallForProposalRuleRest;
import org.jrba.rulesengine.rest.domain.PeriodicRuleRest;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentProposalRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentProposalRuleUnitTest.java
index 399cd54..91d5db6 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentProposalRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentProposalRuleUnitTest.java
@@ -2,11 +2,9 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
-import static org.jrba.fixtures.TestRulesFixtures.preparePeriodicRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareProposeRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
import static org.jrba.rulesengine.constants.FactTypeConstants.PROPOSAL_CREATE_MESSAGE;
-import static org.jrba.rulesengine.constants.FactTypeConstants.REQUEST_CREATE_MESSAGE;
import static org.jrba.rulesengine.constants.MVELParameterConstants.ACCEPT_MESSAGE;
import static org.jrba.rulesengine.constants.MVELParameterConstants.AGENT;
import static org.jrba.rulesengine.constants.MVELParameterConstants.AGENT_NODE;
@@ -16,11 +14,11 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.REJECT_MESSAGE;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_PROPOSAL_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_ACCEPT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_REJECT_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.PROPOSAL;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_ACCEPT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.PROPOSAL_HANDLE_REJECT_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.PROPOSAL;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -40,7 +38,6 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.PeriodicRuleRest;
import org.jrba.rulesengine.rest.domain.ProposalRuleRest;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentRequestRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentRequestRuleUnitTest.java
index 032de73..1b96121 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentRequestRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentRequestRuleUnitTest.java
@@ -3,7 +3,6 @@
import static java.util.Collections.emptyList;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
-import static org.jrba.fixtures.TestRulesFixtures.prepareProposeRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRequestRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
import static org.jrba.rulesengine.constants.FactTypeConstants.REQUEST_CREATE_MESSAGE;
@@ -21,12 +20,12 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.REFUSE;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_REQUEST_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_ALL_RESULTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_FAILURE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_INFORM_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_REFUSE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.REQUEST;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_ALL_RESULTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_FAILURE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_INFORM_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_HANDLE_REFUSE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.REQUEST;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -46,7 +45,6 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.ProposalRuleRest;
import org.jrba.rulesengine.rest.domain.RequestRuleRest;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentScheduleRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentScheduleRuleUnitTest.java
index 4a1c51a..b10ae51 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentScheduleRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentScheduleRuleUnitTest.java
@@ -2,7 +2,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
-import static org.jrba.fixtures.TestRulesFixtures.prepareRequestRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
import static org.jrba.fixtures.TestRulesFixtures.prepareScheduledRuleRest;
import static org.jrba.rulesengine.constants.FactTypeConstants.TRIGGER_TIME;
@@ -13,10 +12,10 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_SCHEDULE_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SCHEDULED_EXECUTE_ACTION_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SCHEDULED_SELECT_TIME_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SCHEDULED;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SCHEDULED_EXECUTE_ACTION_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SCHEDULED_SELECT_TIME_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SCHEDULED;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -37,7 +36,6 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.RequestRuleRest;
import org.jrba.rulesengine.rest.domain.ScheduledRuleRest;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentSearchRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentSearchRuleUnitTest.java
index dab19aa..0afaaab 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentSearchRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentSearchRuleUnitTest.java
@@ -3,7 +3,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
-import static org.jrba.fixtures.TestRulesFixtures.prepareScheduledRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareSearchRuleRest;
import static org.jrba.rulesengine.constants.FactTypeConstants.RESULT;
import static org.jrba.rulesengine.constants.MVELParameterConstants.AGENT;
@@ -14,11 +13,11 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.LOGGER;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_SEARCH_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_AGENTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_NO_RESULTS_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_RESULTS_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SEARCH;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_AGENTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_NO_RESULTS_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SEARCH_HANDLE_RESULTS_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SEARCH;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -38,7 +37,6 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.ScheduledRuleRest;
import org.jrba.rulesengine.rest.domain.SearchRuleRest;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentSingleMessageListenerRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentSingleMessageListenerRuleUnitTest.java
index 0eaf3f5..f9b29e4 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentSingleMessageListenerRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentSingleMessageListenerRuleUnitTest.java
@@ -4,7 +4,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
-import static org.jrba.fixtures.TestRulesFixtures.prepareSearchRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareSingleMessageRuleRest;
import static org.jrba.rulesengine.constants.FactTypeConstants.MESSAGE_EXPIRATION;
import static org.jrba.rulesengine.constants.FactTypeConstants.MESSAGE_TEMPLATE;
@@ -17,10 +16,10 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.MESSAGE;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_SINGLE_MESSAGE_LISTENER_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_HANDLE_MESSAGE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.LISTENER_SINGLE;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SINGLE_MESSAGE_READER_HANDLE_MESSAGE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.LISTENER_SINGLE;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -40,7 +39,6 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.SearchRuleRest;
import org.jrba.rulesengine.rest.domain.SingleMessageListenerRuleRest;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/test/java/org/jrba/rulesengine/rule/template/AgentSubscriptionRuleUnitTest.java b/src/test/java/org/jrba/rulesengine/rule/template/AgentSubscriptionRuleUnitTest.java
index 4d036a6..48a378c 100644
--- a/src/test/java/org/jrba/rulesengine/rule/template/AgentSubscriptionRuleUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/rule/template/AgentSubscriptionRuleUnitTest.java
@@ -3,7 +3,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCollection;
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
-import static org.jrba.fixtures.TestRulesFixtures.prepareSingleMessageRuleRest;
import static org.jrba.fixtures.TestRulesFixtures.prepareSubscriptionRuleRest;
import static org.jrba.rulesengine.constants.FactTypeConstants.SUBSCRIPTION_ADDED_AGENTS;
import static org.jrba.rulesengine.constants.FactTypeConstants.SUBSCRIPTION_CREATE_MESSAGE;
@@ -17,10 +16,10 @@
import static org.jrba.rulesengine.constants.MVELParameterConstants.REMOVED_AGENTS;
import static org.jrba.rulesengine.constants.MVELParameterConstants.RULES_CONTROLLER;
import static org.jrba.rulesengine.constants.RuleTypeConstants.DEFAULT_SUBSCRIPTION_RULE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_CREATE_STEP;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_HANDLE_AGENTS_RESPONSE_STEP;
-import static org.jrba.rulesengine.enums.ruletype.AgentRuleTypeEnum.SUBSCRIPTION;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.REQUEST_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_CREATE_STEP;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.SUBSCRIPTION_HANDLE_AGENTS_RESPONSE_STEP;
+import static org.jrba.rulesengine.types.ruletype.AgentRuleTypeEnum.SUBSCRIPTION;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRuleRestFields;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyDefaultRulesControllerConnection;
import static org.jrba.rulesengine.rule.CommonRuleAssertions.verifyRuleForRulesControllerFields;
@@ -40,7 +39,6 @@
import org.jrba.fixtures.TestAgentNodeDefault;
import org.jrba.fixtures.TestAgentPropsDefault;
import org.jrba.rulesengine.RulesController;
-import org.jrba.rulesengine.rest.domain.SingleMessageListenerRuleRest;
import org.jrba.rulesengine.rest.domain.SubscriptionRuleRest;
import org.jrba.rulesengine.rule.AgentRuleDescription;
import org.jrba.rulesengine.ruleset.RuleSetFacts;
diff --git a/src/test/java/org/jrba/rulesengine/ruleset/RuleSetUnitTest.java b/src/test/java/org/jrba/rulesengine/ruleset/RuleSetUnitTest.java
index aa86c19..6736486 100644
--- a/src/test/java/org/jrba/rulesengine/ruleset/RuleSetUnitTest.java
+++ b/src/test/java/org/jrba/rulesengine/ruleset/RuleSetUnitTest.java
@@ -10,14 +10,13 @@
import static org.jrba.fixtures.TestRulesFixtures.prepareRulesController;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_STEP;
import static org.jrba.rulesengine.constants.FactTypeConstants.RULE_TYPE;
-import static org.jrba.rulesengine.enums.rulesteptype.RuleStepTypeEnum.CFP_CREATE_STEP;
import static org.jrba.rulesengine.mvel.MVELRuleMapper.getRuleForType;
+import static org.jrba.rulesengine.types.rulesteptype.RuleStepTypeEnum.CFP_CREATE_STEP;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertInstanceOf;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.mockito.ArgumentMatchers.argThat;
import static org.mockito.ArgumentMatchers.assertArg;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
@@ -31,16 +30,13 @@
import org.jeasy.rules.api.Rules;
import org.jeasy.rules.api.RulesEngine;
import org.jeasy.rules.core.DefaultRulesEngine;
-import org.jeasy.rules.support.composite.ActivationRuleGroup;
import org.jrba.rulesengine.RulesController;
import org.jrba.rulesengine.rest.domain.RuleSetRest;
import org.jrba.rulesengine.rule.AgentBasicRule;
import org.jrba.rulesengine.rule.AgentRule;
-import org.jrba.rulesengine.rule.combined.AgentCombinedRule;
import org.jrba.rulesengine.rule.simple.AgentBehaviourRule;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
-import org.mockito.ArgumentMatcher;
public class RuleSetUnitTest {
@@ -136,12 +132,12 @@ void testFireRuleSet() {
testRuleSet.fireRuleSet(testFacts);
- final Consumer matchRules = (rules) -> {
- assertThatCollection(stream(rules.spliterator(), false).toList())
- .hasSize(3)
- .anySatisfy((rule) -> assertInstanceOf(AgentBehaviourRule.class, rule))
- .anySatisfy((rule) -> assertEquals(CFP_CREATE_STEP.getType(), ((AgentRule) rule).getStepType()));
- };
+ final Consumer matchRules = (rules) ->
+ assertThatCollection(stream(rules.spliterator(), false).toList())
+ .hasSize(3)
+ .anySatisfy((rule) -> assertInstanceOf(AgentBehaviourRule.class, rule))
+ .anySatisfy(
+ (rule) -> assertEquals(CFP_CREATE_STEP.getType(), ((AgentRule) rule).getStepType()));
verify(testEngine).fire(assertArg(matchRules), eq(testFacts));
}