Open Journal Systems  3.3.0
PolicySet.inc.php
1 <?php
19 define('COMBINING_DENY_OVERRIDES', 0x01);
20 define('COMBINING_PERMIT_OVERRIDES', 0x02);
21 
22 // Include the authorization policy class which contains
23 // definitions for the deny and permit effects.
24 import('lib.pkp.classes.security.authorization.AuthorizationPolicy');
25 
26 class PolicySet {
28  var $_policies = array();
29 
32 
34  var $_effectIfNoPolicyApplies = AUTHORIZATION_DENY;
35 
36 
41  function __construct($combiningAlgorithm = COMBINING_DENY_OVERRIDES) {
42  $this->_combiningAlgorithm = $combiningAlgorithm;
43  }
44 
45  //
46  // Setters and Getters
47  //
54  function addPolicy($policyOrPolicySet, $addToTop = false) {
55  assert(is_a($policyOrPolicySet, 'AuthorizationPolicy') || is_a($policyOrPolicySet, 'PolicySet'));
56  if ($addToTop) {
57  array_unshift($this->_policies, $policyOrPolicySet);
58  } else {
59  $this->_policies[] =& $policyOrPolicySet;
60  }
61  }
62 
67  function &getPolicies() {
68  return $this->_policies;
69  }
70 
75  function getCombiningAlgorithm() {
77  }
78 
83  function setEffectIfNoPolicyApplies($effectIfNoPolicyApplies) {
84  assert($effectIfNoPolicyApplies == AUTHORIZATION_PERMIT ||
85  $effectIfNoPolicyApplies == AUTHORIZATION_DENY ||
86  $effectIfNoPolicyApplies == AUTHORIZATION_NOT_APPLICABLE);
87  $this->_effectIfNoPolicyApplies = $effectIfNoPolicyApplies;
88  }
89 
94  function getEffectIfNoPolicyApplies() {
96  }
97 }
98 
99 
PolicySet\__construct
__construct($combiningAlgorithm=COMBINING_DENY_OVERRIDES)
Definition: PolicySet.inc.php:50
PolicySet\getEffectIfNoPolicyApplies
getEffectIfNoPolicyApplies()
Definition: PolicySet.inc.php:103
PolicySet\setEffectIfNoPolicyApplies
setEffectIfNoPolicyApplies($effectIfNoPolicyApplies)
Definition: PolicySet.inc.php:92
PolicySet\$_policies
$_policies
Definition: PolicySet.inc.php:31
PolicySet\getCombiningAlgorithm
getCombiningAlgorithm()
Definition: PolicySet.inc.php:84
PolicySet\getPolicies
& getPolicies()
Definition: PolicySet.inc.php:76
PolicySet\addPolicy
addPolicy($policyOrPolicySet, $addToTop=false)
Definition: PolicySet.inc.php:63
PolicySet\$_effectIfNoPolicyApplies
$_effectIfNoPolicyApplies
Definition: PolicySet.inc.php:43
PolicySet
An ordered list of policies. Policy sets can be added to decision managers like policies....
Definition: PolicySet.inc.php:26
PolicySet\$_combiningAlgorithm
$_combiningAlgorithm
Definition: PolicySet.inc.php:37