[New] Added PolicyContainer.hasPolicyDef(String) and .getPolicyDef(Str)

This commit is contained in:
Robert von Burg 2017-05-14 16:12:28 +02:00
parent 24b7f1d2bc
commit 01815ffc8e
5 changed files with 65 additions and 0 deletions

View File

@ -20,6 +20,7 @@ import java.util.Date;
import li.strolch.exception.StrolchPolicyException;
import li.strolch.model.Locator.LocatorBuilder;
import li.strolch.model.policy.PolicyDef;
import li.strolch.model.policy.PolicyDefs;
import li.strolch.model.visitor.StrolchRootElementVisitor;
import li.strolch.utils.iso8601.ISO8601FormatFactory;
@ -123,11 +124,21 @@ public class Order extends AbstractStrolchRootElement implements StrolchRootElem
return this.policyDefs;
}
@Override
public PolicyDef getPolicyDef(String type) {
return getPolicyDefs().getPolicyDef(type);
}
@Override
public boolean hasPolicyDefs() {
return this.policyDefs != null;
}
@Override
public boolean hasPolicyDef(String type) {
return this.policyDefs != null && policyDefs.hasPolicyDef(type);
}
@Override
public void setPolicyDefs(PolicyDefs policyDefs) {
this.policyDefs = policyDefs;

View File

@ -1,6 +1,7 @@
package li.strolch.model;
import li.strolch.exception.StrolchPolicyException;
import li.strolch.model.policy.PolicyDef;
import li.strolch.model.policy.PolicyDefs;
/**
@ -26,6 +27,26 @@ public interface PolicyContainer {
*/
public boolean hasPolicyDefs();
/**
* Returns true if this container has the {@link PolicyDef} with the given type, false if not
*
* @param type
* the type of policy def to return
*
* @return true if this container has the {@link PolicyDef} with the given type, false if not
*/
public boolean hasPolicyDef(String type);
/**
* Returns the {@link PolicyDef} for the given type
*
* @param type
* the type of policy def to return
*
* @return the policy def of the given type
*/
public PolicyDef getPolicyDef(String type);
/**
* Set the reference to the {@link PolicyDefs}
*

View File

@ -27,6 +27,7 @@ import java.util.Set;
import li.strolch.exception.StrolchException;
import li.strolch.exception.StrolchPolicyException;
import li.strolch.model.Locator.LocatorBuilder;
import li.strolch.model.policy.PolicyDef;
import li.strolch.model.policy.PolicyDefs;
import li.strolch.model.timedstate.StrolchTimedState;
import li.strolch.model.timevalue.IValue;
@ -140,11 +141,21 @@ public class Resource extends AbstractStrolchRootElement implements StrolchRootE
return this.policyDefs;
}
@Override
public PolicyDef getPolicyDef(String type) {
return getPolicyDefs().getPolicyDef(type);
}
@Override
public boolean hasPolicyDefs() {
return this.policyDefs != null;
}
@Override
public boolean hasPolicyDef(String type) {
return this.policyDefs != null && policyDefs.hasPolicyDef(type);
}
@Override
public void setPolicyDefs(PolicyDefs policyDefs) {
this.policyDefs = policyDefs;

View File

@ -33,6 +33,7 @@ import li.strolch.model.Resource;
import li.strolch.model.State;
import li.strolch.model.Tags;
import li.strolch.model.parameter.Parameter;
import li.strolch.model.policy.PolicyDef;
import li.strolch.model.policy.PolicyDefs;
import li.strolch.model.timevalue.IValue;
import li.strolch.model.timevalue.IValueChange;
@ -201,11 +202,21 @@ public class Action extends GroupedParameterizedElement implements IActivityElem
return this.policyDefs;
}
@Override
public PolicyDef getPolicyDef(String type) {
return getPolicyDefs().getPolicyDef(type);
}
@Override
public boolean hasPolicyDefs() {
return this.policyDefs != null;
}
@Override
public boolean hasPolicyDef(String type) {
return this.policyDefs != null && policyDefs.hasPolicyDef(type);
}
@Override
public void setPolicyDefs(PolicyDefs policyDefs) {
this.policyDefs = policyDefs;

View File

@ -35,6 +35,7 @@ import li.strolch.model.StrolchRootElement;
import li.strolch.model.Tags;
import li.strolch.model.Version;
import li.strolch.model.parameter.Parameter;
import li.strolch.model.policy.PolicyDef;
import li.strolch.model.policy.PolicyDefs;
import li.strolch.model.visitor.IActivityElementVisitor;
import li.strolch.model.visitor.StrolchRootElementVisitor;
@ -271,11 +272,21 @@ public class Activity extends AbstractStrolchRootElement
return this.policyDefs;
}
@Override
public PolicyDef getPolicyDef(String type) {
return getPolicyDefs().getPolicyDef(type);
}
@Override
public boolean hasPolicyDefs() {
return this.policyDefs != null;
}
@Override
public boolean hasPolicyDef(String type) {
return this.policyDefs != null && policyDefs.hasPolicyDef(type);
}
@Override
public void setPolicyDefs(PolicyDefs policyDefs) {
this.policyDefs = policyDefs;