bdi4jade

Details

diff --git a/bdi-jade-extensions/src/bdi4jade/extension/remediation/reasoning/RemediationOptionGenerationFunction.java b/bdi-jade-extensions/src/bdi4jade/extension/remediation/reasoning/RemediationOptionGenerationFunction.java
index 4e62f0e..d02928d 100644
--- a/bdi-jade-extensions/src/bdi4jade/extension/remediation/reasoning/RemediationOptionGenerationFunction.java
+++ b/bdi-jade-extensions/src/bdi4jade/extension/remediation/reasoning/RemediationOptionGenerationFunction.java
@@ -24,19 +24,19 @@ import bdi4jade.extension.remediation.logics.Fact;
 import bdi4jade.extension.remediation.logics.Predicate;
 import bdi4jade.extension.undo.GoalAchievementMetadata;
 import bdi4jade.extension.undo.RevertingCapability;
+import bdi4jade.extension.undo.reasoning.RevertingOptionGenerationFunction;
 import bdi4jade.goal.Goal;
 import bdi4jade.goal.GoalStatus;
 import bdi4jade.goal.NestedGoal;
 import bdi4jade.goal.PredicateGoal;
-import bdi4jade.reasoning.OptionGenerationFunction;
 
-public class RemediationOptionGenerationFunction implements OptionGenerationFunction {
+public class RemediationOptionGenerationFunction extends RevertingOptionGenerationFunction {
 
 	private Capability capability;
 	private final Map<Goal, CauseEffectProblem> causeEffectProblems;
 
 	public RemediationOptionGenerationFunction(Capability capability) {
-		setCapability(capability);
+		super(capability);
 		this.causeEffectProblems = new HashMap<>();
 	}
 
@@ -72,7 +72,6 @@ public class RemediationOptionGenerationFunction implements OptionGenerationFunc
 
 	@Override
 	public void generateGoals(GoalUpdateSet goalUpdateSet) {
-
 		// Algorithm 1 - lines 2-5
 		for (GoalDescription goalDescription : goalUpdateSet.getCurrentGoals()) {
 			Goal goal = goalDescription.getGoal();
@@ -158,6 +157,7 @@ public class RemediationOptionGenerationFunction implements OptionGenerationFunc
 			}
 
 		}
+		super.generateGoals(goalUpdateSet);
 	}
 
 	private Boolean knownCause(CauseEffectProblem cep, CauseEffectRelationship cer) {
@@ -270,14 +270,14 @@ public class RemediationOptionGenerationFunction implements OptionGenerationFunc
 			}
 		}
 	}
-	
+
 	private void updateReversionTrigger(CauseEffectProblem cep) {
 		ArrayList<Predicate> reversionTrigger = new ArrayList<>();
 		for (CauseFactorStatus causeFactor : cep.getCauseFactorStatus()) {
 			reversionTrigger.add(causeFactor.getFact().getPredicate());
 		}
-		GoalAchievementMetadata gam = ((RevertingCapability) this.capability)
-				.getGoalAchievementMetadata().get(cep.getEffectGoal());
+		GoalAchievementMetadata gam = ((RevertingCapability) this.capability).getGoalAchievementMetadata()
+				.get(cep.getEffectGoal());
 		gam.setReversionTrigger(reversionTrigger);
 	}
 
diff --git a/bdi-jade-extensions/src/bdi4jade/extension/remediation/RemediationCapability.java b/bdi-jade-extensions/src/bdi4jade/extension/remediation/RemediationCapability.java
index d133d6e..d95f41b 100644
--- a/bdi-jade-extensions/src/bdi4jade/extension/remediation/RemediationCapability.java
+++ b/bdi-jade-extensions/src/bdi4jade/extension/remediation/RemediationCapability.java
@@ -1,12 +1,12 @@
 package bdi4jade.extension.remediation;
 
 import bdi4jade.annotation.Belief;
-import bdi4jade.core.Capability;
 import bdi4jade.extension.remediation.graph.CauseEffectKnowledgeModel;
 import bdi4jade.extension.remediation.reasoning.RemediationOptionGenerationFunction;
 import bdi4jade.extension.remediation.reasoning.RemediationPlanSelectionStrategy;
+import bdi4jade.extension.undo.RevertingCapability;
 
-public class RemediationCapability extends Capability {
+public class RemediationCapability extends RevertingCapability {
 
 	private static final long serialVersionUID = -1818834346847016992L;