ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ComponentEntryRules.php
Go to the documentation of this file.
1<?php
2
4
13{
17 protected $rules = array(
18 "usage"=>array(),
19 "composition"=>array(),
20 "interaction"=>array(),
21 "wording"=>array(),
22 "ordering"=>array(),
23 "style"=>array(),
24 "responsiveness"=>array(),
25 "accessibility"=>array()
26 );
27
32 public function __construct($rules = array()) {
33 parent::__construct();
34 $this->setRules($rules);
35 }
36
41 public function withRules($rules = array()){
42 $clone = clone $this;
43 $clone->setRules($rules);
44 return $clone;
45 }
46
51 protected function setRules($rules)
52 {
53 if(!$rules){
54 return;
55 }
56 $this->assert()->isArray($rules);
57 foreach($rules as $rule_category => $category_rules){
58 $this->assert()->isIndex($rule_category, $this->rules);
59 if($category_rules && $category_rules != "") {
60 $this->assert()->isArray($category_rules);
61 foreach ($category_rules as $rule_id => $rule) {
62 $this->assert()->isString($rule);
63 $this->rules[$rule_category][$rule_id] = $rule;
64 }
65 }
66 }
67 }
68
72 public function getRules(){
73 return $this->rules;
74 }
75
79 public function jsonSerialize() {
80 return $this->getRules();
81 }
82}
An exception for terminatinating execution or to throw for unit testing.
Abstract Entry Part to share some common entry functionality.
__construct($rules=array())
ComponentEntryDescription constructor.