[Major] Refactored package for policies in model project
- added additional tests
This commit is contained in:
parent
5da07f5824
commit
12ca8c4f07
|
@ -26,7 +26,6 @@ import li.strolch.agent.api.StrolchComponent;
|
|||
import li.strolch.exception.StrolchPolicyException;
|
||||
import li.strolch.model.policy.JavaPolicyDef;
|
||||
import li.strolch.model.policy.KeyPolicyDef;
|
||||
import li.strolch.model.policy.Policy;
|
||||
import li.strolch.model.policy.PolicyDef;
|
||||
import li.strolch.model.policy.PolicyDefVisitor;
|
||||
import li.strolch.policy.StrolchPolicyFileParser.PolicyModel;
|
||||
|
@ -75,7 +74,7 @@ public class DefaultPolicyHandler extends StrolchComponent implements PolicyHand
|
|||
}
|
||||
|
||||
@Override
|
||||
public <T extends Policy> T getPolicy(PolicyDef policyDef) {
|
||||
public <T> T getPolicy(PolicyDef policyDef) {
|
||||
return policyDef.accept(this);
|
||||
}
|
||||
|
||||
|
|
|
@ -15,7 +15,6 @@
|
|||
*/
|
||||
package li.strolch.policy;
|
||||
|
||||
import li.strolch.model.policy.Policy;
|
||||
import li.strolch.model.policy.PolicyDef;
|
||||
import li.strolch.model.policy.PolicyDefVisitor;
|
||||
|
||||
|
@ -51,5 +50,5 @@ public interface PolicyHandler {
|
|||
*
|
||||
* @return the instantiated instance of the referenced policy
|
||||
*/
|
||||
public <T extends Policy> T getPolicy(PolicyDef policyDef);
|
||||
public <T> T getPolicy(PolicyDef policyDef);
|
||||
}
|
||||
|
|
|
@ -16,11 +16,12 @@
|
|||
package li.strolch.policytest;
|
||||
|
||||
import li.strolch.model.activity.Action;
|
||||
import li.strolch.model.policy.Policy;
|
||||
|
||||
/**
|
||||
* @author Robert von Burg <eitch@eitchnet.ch>
|
||||
*/
|
||||
public interface TestConfirmationPolicy {
|
||||
public interface TestConfirmationPolicy extends Policy {
|
||||
|
||||
public void confirm(Action action);
|
||||
}
|
||||
|
|
|
@ -16,11 +16,12 @@
|
|||
package li.strolch.policytest;
|
||||
|
||||
import li.strolch.model.activity.Action;
|
||||
import li.strolch.model.policy.Policy;
|
||||
|
||||
/**
|
||||
* @author Robert von Burg <eitch@eitchnet.ch>
|
||||
*/
|
||||
public interface TestExecutionPolicy {
|
||||
public interface TestExecutionPolicy extends Policy {
|
||||
|
||||
public void execute(Action action);
|
||||
}
|
||||
|
|
|
@ -16,11 +16,12 @@
|
|||
package li.strolch.policytest;
|
||||
|
||||
import li.strolch.model.activity.Action;
|
||||
import li.strolch.model.policy.Policy;
|
||||
|
||||
/**
|
||||
* @author Robert von Burg <eitch@eitchnet.ch>
|
||||
*/
|
||||
public interface TestPlanningPolicy {
|
||||
public interface TestPlanningPolicy extends Policy {
|
||||
|
||||
public void plan(Action action);
|
||||
}
|
||||
|
|
|
@ -63,8 +63,8 @@
|
|||
</Component>
|
||||
<Component>
|
||||
<name>PolicyHandler</name>
|
||||
<api>li.strolch.model.policy.PolicyHandler</api>
|
||||
<impl>li.strolch.model.policy.DefaultPolicyHandler</impl>
|
||||
<api>li.strolch.policy.PolicyHandler</api>
|
||||
<impl>li.strolch.policy.DefaultPolicyHandler</impl>
|
||||
<Properties>
|
||||
<readPolicyFile>true</readPolicyFile>
|
||||
<policyConfigFile>StrolchPolicies.xml</policyConfigFile>
|
||||
|
|
|
@ -119,6 +119,7 @@ public abstract class PolicyDef {
|
|||
|
||||
try {
|
||||
Class.forName(value);
|
||||
|
||||
} catch (ClassNotFoundException e) {
|
||||
throw new StrolchPolicyException("Invalid policy configuration. Policy does not exist: " + value);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue