/** * The constructor. * @param ref object $configuration A {@link Properties} Properties with configuration for connection. * @access public * @return void **/ function LDAPConnector($configuration) { $this->_configuration = $configuration; // Validate the configuration options we use: ArgumentValidator::validate($this->_configuration->getProperty('LDAPHost'), FieldRequiredValidatorRule::getRule()); ArgumentValidator::validate($this->_configuration->getProperty('LDAPPort'), OptionalRule::getRule(NumericValidatorRule::getRule())); ArgumentValidator::validate($this->_configuration->getProperty('UserBaseDN'), FieldRequiredValidatorRule::getRule()); ArgumentValidator::validate($this->_configuration->getProperty('ClassesBaseDN'), FieldRequiredValidatorRule::getRule()); ArgumentValidator::validate($this->_configuration->getProperty('GroupBaseDN'), FieldRequiredValidatorRule::getRule()); ArgumentValidator::validate($this->_configuration->getProperty('bindDN'), OptionalRule::getRule(StringValidatorRule::getRule())); ArgumentValidator::validate($this->_configuration->getProperty('bindDNPassword'), OptionalRule::getRule(StringValidatorRule::getRule())); }
/** * Constructor -- sets up the allowed fields for this kind of {@link DataContainer} * * @see DataContainer * @access public * @return void */ function HarmoniConfig() { // initialize the data container $this->init(); // add the fields we want to allow $message = "HarmoniConfig - the option 'defaultAction' must be set to a string value!"; $type = "Harmoni"; $this->add("defaultAction", StringValidatorRule::getRule(), $message, $type); $this->add("defaultAction", FieldRequiredValidatorRule::getRule(), $message, $type); unset($message, $type); $message = "HarmoniConfig - the option 'defaultModule' must be set to a string value!"; $type = "Harmoni"; $this->add("defaultModule", StringValidatorRule::getRule(), $message, $type); $this->add("defaultModule", FieldRequiredValidatorRule::getRule(), $message, $type); $message = "HarmoniConfig - if specified, the option 'defaultParams' must be set to a an array of string values!"; $this->add("defaultParams", OptionalRule::getRule(ArrayValidatorRuleWithRule::getRule(StringValidatorRule::getRule())), $message, $type); $this->add("programTitle", StringValidatorRule::getRule(), $message, $type); $this->add("sessionName", FieldRequiredValidatorRule::getRule()); $this->set("sessionName", "Harmoni"); $this->add("sessionUseCookies", BooleanValidatorRule::getRule()); $this->set("sessionUseCookies", true); $this->add("sessionUseOnlyCookies", BooleanValidatorRule::getRule()); $this->set("sessionUseOnlyCookies", true); $this->add("sessionCookiePath", FieldRequiredValidatorRule::getRule()); $this->set("sessionCookiePath", "/"); $this->add("sessionCookieDomain", StringValidatorRule::getRule(), "HarmoniConfig - You must set the 'sessionDomain' to the DNS domain you would like your session cookie sent to! (eg, '.mydomain.com')", "Harmoni"); $this->set("sessionCookieDomain", ""); // default // An array of module.action in which session ids are allowed to be passed in the // url $this->add("sessionInUrlActions", OptionalRule::getRule(ArrayValidatorRuleWithRule::getRule(StringValidatorRule::getRule())), $message, $type); $this->add("sessionCookiesSecure", BooleanValidatorRule::getRule()); $this->set("sessionCookiesSecure", false); $this->add("sessionCookiesHttpOnly", BooleanValidatorRule::getRule()); $this->set("sessionCookiesHttpOnly", true); }
function test_rule_set_add_multiple() { $this->assertEqual($this->testRuleSet->count(), 0); // what the hell is this??? // $error = 1; $error = new Error("UnitTest", "UnitTest", false); $rq = FieldRequiredValidatorRule::getRule(); $email = EmailValidatorRule::getRule(); $number = NumericValidatorRule::getRule(); $this->testRuleSet->addRule("mystring", $rq, $error); $this->testRuleSet->addRule("mystring", $email, $error); $this->testRuleSet->addRule("boolean", BooleanValidatorRule::getRule(), $error); $this->testRuleSet->addRule("mynumber", $number, $error); $this->assertEqual($this->testRuleSet->count(), 3); $this->assertReference($this->testRuleSet->_rules["mystring"][0][0], $rq); $this->assertReference($this->testRuleSet->_rules["mystring"][1][0], $email); $this->assertReference($this->testRuleSet->_rules["mynumber"][0][0], $number); // $this->assertEqual($this->testRuleSet->getKeys(), array("mystring","mynumber","boolean")); }