Coverage Report - org.openpermis.policy.bean.RoleAssignmentRuleBean
 
Classes in this File Line Coverage Branch Coverage Complexity
RoleAssignmentRuleBean
N/A
N/A
1
 
 1  
 /*
 2  
  * Copyright (c) 2009, Swiss Federal Department of Defence Civil Protection and Sport
 3  
  *                     (http://www.vbs.admin.ch)
 4  
  * Copyright (c) 2009, Ergon Informatik AG (http://www.ergon.ch)
 5  
  * All rights reserved.
 6  
  *
 7  
  * Licensed under the Open Permis License which accompanies this distribution,
 8  
  * and is available at http://www.openpermis.org/BSDlicenceKent.txt
 9  
  */
 10  
 package org.openpermis.policy.bean;
 11  
 
 12  
 import org.openpermis.basic.TimePeriodConstraint;
 13  
 import org.openpermis.policy.RoleAssignmentRule;
 14  
 
 15  
 
 16  
 /**
 17  
  * A rule for assigning roles to subjects.
 18  
  * @since 0.1.0
 19  
  */
 20  
 public interface RoleAssignmentRuleBean
 21  
         extends RoleAssignmentRule, PartBean
 22  
 {
 23  
 
 24  
         //---- Methods
 25  
 
 26  
         /**
 27  
          * Returns the authorising subject of this rule.
 28  
          * @return the authorising {@link AuthorityBean} of this rule.
 29  
          * @since 0.1.0
 30  
          */
 31  
         public AuthorityBean getAuthority ();
 32  
 
 33  
         /**
 34  
          * Sets the authorising subject of this rule.
 35  
          * @param authority the new authorising {@link AuthorityBean} of this rule.
 36  
          * @since 0.1.0
 37  
          */
 38  
         public void setAuthority (AuthorityBean authority);
 39  
 
 40  
         /**
 41  
          * Returns the subject domain to which this rule applies.
 42  
          * @return the rule's {@link DomainBean}.
 43  
          * @since 0.1.0
 44  
          */
 45  
         public DomainBean getSubjectDomain ();
 46  
 
 47  
         /**
 48  
          * Sets the subject domain to which this rule applies.
 49  
          * @param subjectDomain the rule's new {@link DomainBean}.
 50  
          * @since 0.1.0
 51  
          */
 52  
         public void setSubjectDomain (DomainBean subjectDomain);
 53  
 
 54  
         /**
 55  
          * Returns the delegation depth of this rule.
 56  
          * @return the rule's delegation depth, i.e. how far a subject is allowed to delegate its roles.
 57  
          * @since 0.1.0
 58  
          */
 59  
         public int getDelegationDepth ();
 60  
 
 61  
         /**
 62  
          * Sets the delegation depth of this rule.
 63  
          * @param delegationDepth the rule's new depth.
 64  
          * @since 0.1.0
 65  
          */
 66  
         public void setDelegationDepth (int delegationDepth);
 67  
 
 68  
         /**
 69  
          * Returns the set of roles of this rule.
 70  
          * @return the roles to which this rule applies.
 71  
          * @since 0.1.0
 72  
          */
 73  
         public RoleCollection getRoles ();
 74  
 
 75  
         /**
 76  
          * Sets the roles of this rule.
 77  
          * @param roles the new roles of this rule.
 78  
          * @since 0.1.0
 79  
          */
 80  
         public void setRoles (RoleCollection roles);
 81  
         
 82  
         /**
 83  
          * Returns the time constraint of this rule.
 84  
          * @return the time constraint of this rule.
 85  
          * @since 0.3.0
 86  
          */
 87  
         public TimePeriodConstraint getConstraint ();
 88  
 
 89  
         /**
 90  
          * Sets the time constraint of this rule.
 91  
          * @param constraint a {@link TimePeriodConstraint}.
 92  
          * @since 0.3.0
 93  
          */
 94  
         public void setConstraint (TimePeriodConstraint constraint);
 95  
 
 96  
 }