Ldap/Node/Schema/OpenLdap.php
Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to [email protected] so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Ldap
- Subpackage
- Schema
- Version
- $Id: OpenLdap.php 24593 2012-01-05 20:35:02Z matthew $
\Zend_Ldap_Node_Schema_OpenLdap
Zend_Ldap_Node_Schema_OpenLdap provides a simple data-container for the Schema node of an OpenLDAP server.
- Parent(s)
- \Zend_Ldap_Node_Schema < \Zend_Ldap_Node_Abstract
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Constants
OBJECTCLASS_TYPE_UNKNOWN
= 0- Inherited_from
- \Zend_Ldap_Node_Schema::OBJECTCLASS_TYPE_UNKNOWN
OBJECTCLASS_TYPE_STRUCTURAL
= 1- Inherited_from
- \Zend_Ldap_Node_Schema::OBJECTCLASS_TYPE_STRUCTURAL
OBJECTCLASS_TYPE_ABSTRACT
= 3- Inherited_from
- \Zend_Ldap_Node_Schema::OBJECTCLASS_TYPE_ABSTRACT
OBJECTCLASS_TYPE_AUXILIARY
= 4- Inherited_from
- \Zend_Ldap_Node_Schema::OBJECTCLASS_TYPE_AUXILIARY
Properties

array $_currentData = Holds the node's current data.
Inherited from: \Zend_Ldap_Node_Abstract::$$_currentData\Zend_Ldap_Node_Schema::$$_currentData- Type
- array
- Inherited_from
- \Zend_Ldap_Node_Abstract::$$_currentData
- Inherited_from
- \Zend_Ldap_Node_Schema::$$_currentData

\Zend_Ldap_Dn $_dn = Holds the node's DN.
Inherited from: \Zend_Ldap_Node_Abstract::$$_dn\Zend_Ldap_Node_Schema::$$_dn- Type
- \Zend_Ldap_Dn
- Inherited_from
- \Zend_Ldap_Node_Abstract::$$_dn
- Inherited_from
- \Zend_Ldap_Node_Schema::$$_dn

$_systemAttributes = array('createtimestamp', 'creatorsname', 'entrycsn', 'entrydn', 'entryuuid', 'hassubordinates', 'modifiersname', 'modifytimestamp', 'structuralobjectclass', 'subschemasubentry', 'distinguishedname', 'instancetype', 'name', 'objectcategory', 'objectguid', 'usnchanged', 'usncreated', 'whenchanged', 'whencreated')array('createtimestamp', 'creatorsname', 'entrycsn', 'entrydn', 'entryuuid', 'hassubordinates', 'modifiersname', 'modifytimestamp', 'structuralobjectclass', 'subschemasubentry', 'distinguishedname', 'instancetype', 'name', 'objectcategory', 'objectguid', 'usnchanged', 'usncreated', 'whenchanged', 'whencreated')Details- Type
- n/a
- Inherited_from
- \Zend_Ldap_Node_Abstract::$$_systemAttributes
- Inherited_from
- \Zend_Ldap_Node_Schema::$$_systemAttributes
Methods

__construct(\Zend_Ldap_Dn $dn, array $data, \Zend_Ldap $ldap) : void
Constructor is protected to enforce the use of factory methods.
| Name | Type | Description |
|---|---|---|
| $dn | \Zend_Ldap_Dn | |
| $data | array | |
| $ldap | \Zend_Ldap |

__get(string $name) : arrayGets a LDAP attribute.
Inherited from: \Zend_Ldap_Node_Abstract::__get()\Zend_Ldap_Node_Schema::__get()This is an offline method.
| Name | Type | Description |
|---|---|---|
| $name | string |
| Type | Description |
|---|---|
| array |
| Exception | Description |
|---|---|
| \Zend_Ldap_Exception |

__isset(string $name) : booleanChecks whether a given attribute exists.
Inherited from: \Zend_Ldap_Node_Abstract::__isset()\Zend_Ldap_Node_Schema::__isset()Empty attributes will be treated as non-existent.
| Name | Type | Description |
|---|---|---|
| $name | string |
| Type | Description |
|---|---|
| boolean |

__set(string $name, mixed $value) : nullSets a LDAP attribute.
Inherited from: \Zend_Ldap_Node_Abstract::__set()\Zend_Ldap_Node_Schema::__set()This is an offline method.
| Name | Type | Description |
|---|---|---|
| $name | string | |
| $value | mixed |
| Type | Description |
|---|---|
| null |
| Exception | Description |
|---|---|
| \BadMethodCallException |

__toString() : stringCast to string representation {@see toString()}
Inherited from: \Zend_Ldap_Node_Abstract::__toString()\Zend_Ldap_Node_Schema::__toString()| Type | Description |
|---|---|
| string |

__unset(string $name) : nullDeletes a LDAP attribute.
Inherited from: \Zend_Ldap_Node_Abstract::__unset()\Zend_Ldap_Node_Schema::__unset()This method deletes the attribute.
This is an offline method.
| Name | Type | Description |
|---|---|---|
| $name | string |
| Type | Description |
|---|---|
| null |
| Exception | Description |
|---|---|
| \BadMethodCallException |

_ensureNameAttribute(array $data) : voidEnsures that a name element is present and that it is single-values.
| Name | Type | Description |
|---|---|---|
| $data | array |

_getDn() : \Zend_Ldap_DnGets the DN of the current node as a Zend_Ldap_Dn.
Inherited from: \Zend_Ldap_Node_Abstract::_getDn()\Zend_Ldap_Node_Schema::_getDn()This is an offline method.
| Type | Description |
|---|---|
| \Zend_Ldap_Dn |

_loadData(array $data, boolean $fromDataSource) : void
| Name | Type | Description |
|---|---|---|
| $data | array | |
| $fromDataSource | boolean |
| Exception | Description |
|---|---|
| \Zend_Ldap_Exception |

_parseAttributeType(string $value) : arrayParses an attributeType value
| Name | Type | Description |
|---|---|---|
| $value | string |
| Type | Description |
|---|---|
| array |

_parseLdapSchemaSyntax(array $data, array $tokens) : voidParse the given tokens into a data structure
| Name | Type | Description |
|---|---|---|
| $data | array | |
| $tokens | array |

_parseLdapSyntax(string $value) : arrayParses an ldapSyntaxes value
| Name | Type | Description |
|---|---|---|
| $value | string |
| Type | Description |
|---|---|
| array |

_parseMatchingRule(string $value) : arrayParses an matchingRules value
| Name | Type | Description |
|---|---|---|
| $value | string |
| Type | Description |
|---|---|
| array |

_parseMatchingRuleUse(string $value) : arrayParses an matchingRuleUse value
| Name | Type | Description |
|---|---|---|
| $value | string |
| Type | Description |
|---|---|
| array |

_parseObjectClass(string $value) : arrayParses an objectClasses value
| Name | Type | Description |
|---|---|---|
| $value | string |
| Type | Description |
|---|---|
| array |

_parseSchema(\Zend_Ldap_Dn $dn, \Zend_Ldap $ldap) : \Zend_Ldap_Node_SchemaParses the schema
| Name | Type | Description |
|---|---|---|
| $dn | \Zend_Ldap_Dn | |
| $ldap | \Zend_Ldap |
| Type | Description |
|---|---|
| \Zend_Ldap_Node_Schema | Provides a fluid interface |

_resolveInheritance(\Zend_Ldap_Node_Schema_Item $node, array $repository) : voidResolves inheritance in objectClasses and attributes
| Name | Type | Description |
|---|---|---|
| $node | \Zend_Ldap_Node_Schema_Item | |
| $repository | array |

_tokenizeString(string $value) : arrayTokenizes the given value into an array
| Name | Type | Description |
|---|---|---|
| $value | string |
| Type | Description |
|---|---|
| array | tokens |

attributeHasValue(string $attribName, mixed | array $value) : booleanChecks if the given value(s) exist in the attribute
Inherited from: \Zend_Ldap_Node_Abstract::attributeHasValue()\Zend_Ldap_Node_Schema::attributeHasValue()| Name | Type | Description |
|---|---|---|
| $attribName | string | |
| $value | mixed | array |
| Type | Description |
|---|---|
| boolean |

count() : intReturns the number of attributes in node.
Inherited from: \Zend_Ldap_Node_Abstract::count()\Zend_Ldap_Node_Schema::count()Implements Countable
| Type | Description |
|---|---|
| int |

create(\Zend_Ldap $ldap) : \Zend_Ldap_Node_SchemaFactory method to create the Schema node.
Inherited from: \Zend_Ldap_Node_Schema::create()| Name | Type | Description |
|---|---|---|
| $ldap | \Zend_Ldap |
| Type | Description |
|---|---|
| \Zend_Ldap_Node_Schema |
| Exception | Description |
|---|---|
| \Zend_Ldap_Exception |

existsAttribute(string $name, boolean $emptyExists = false) : booleanChecks whether a given attribute exists.
Inherited from: \Zend_Ldap_Node_Abstract::existsAttribute()\Zend_Ldap_Node_Schema::existsAttribute()If $emptyExists is false empty attributes (containing only array()) are treated as non-existent returning false. If $emptyExists is true empty attributes are treated as existent returning true. In this case method returns false only if the attribute name is missing in the key-collection.
| Name | Type | Description |
|---|---|---|
| $name | string | |
| $emptyExists | boolean |
| Type | Description |
|---|---|
| boolean |

getAttribute(string $name, integer $index = null) : mixedGets a LDAP attribute.
Inherited from: \Zend_Ldap_Node_Abstract::getAttribute()\Zend_Ldap_Node_Schema::getAttribute()This is an offline method.
| Name | Type | Description |
|---|---|---|
| $name | string | |
| $index | integer |
| Type | Description |
|---|---|
| mixed |
| Exception | Description |
|---|---|
| \Zend_Ldap_Exception |

getAttributes(boolean $includeSystemAttributes = true) : arrayGets all attributes of node.
Inherited from: \Zend_Ldap_Node_Abstract::getAttributes()\Zend_Ldap_Node_Schema::getAttributes()The collection contains all attributes.
This is an offline method.
| Name | Type | Description |
|---|---|---|
| $includeSystemAttributes | boolean |
| Type | Description |
|---|---|
| array |

getData(boolean $includeSystemAttributes = true) : arrayGets node attributes.
Inherited from: \Zend_Ldap_Node_Abstract::getData()\Zend_Ldap_Node_Schema::getData()The array contains all attributes in its internal format (no conversion).
This is an offline method.
| Name | Type | Description |
|---|---|---|
| $includeSystemAttributes | boolean |
| Type | Description |
|---|---|
| array |

getDateTimeAttribute(string $name, integer $index = null) : array | integerGets a LDAP date/time attribute.
Inherited from: \Zend_Ldap_Node_Abstract::getDateTimeAttribute()\Zend_Ldap_Node_Schema::getDateTimeAttribute()This is an offline method.
| Name | Type | Description |
|---|---|---|
| $name | string | |
| $index | integer |
| Type | Description |
|---|---|
| array | integer |
| Exception | Description |
|---|---|
| \Zend_Ldap_Exception |

getDn() : \Zend_Ldap_DnGets the DN of the current node as a Zend_Ldap_Dn.
Inherited from: \Zend_Ldap_Node_Abstract::getDn()\Zend_Ldap_Node_Schema::getDn()The method returns a clone of the node's DN to prohibit modification.
This is an offline method.
| Type | Description |
|---|---|
| \Zend_Ldap_Dn |

getDnArray(string $caseFold = null) : arrayGets the DN of the current node as an array.
Inherited from: \Zend_Ldap_Node_Abstract::getDnArray()\Zend_Ldap_Node_Schema::getDnArray()This is an offline method.
| Name | Type | Description |
|---|---|---|
| $caseFold | string |
| Type | Description |
|---|---|
| array |

getDnString(string $caseFold = null) : stringGets the DN of the current node as a string.
Inherited from: \Zend_Ldap_Node_Abstract::getDnString()\Zend_Ldap_Node_Schema::getDnString()This is an offline method.
| Name | Type | Description |
|---|---|---|
| $caseFold | string |
| Type | Description |
|---|---|
| string |

getObjectClass() : arrayGets the objectClass of the node
Inherited from: \Zend_Ldap_Node_Abstract::getObjectClass()\Zend_Ldap_Node_Schema::getObjectClass()| Type | Description |
|---|---|
| array |

getRdnArray(string $caseFold = null) : arrayGets the RDN of the current node as an array.
Inherited from: \Zend_Ldap_Node_Abstract::getRdnArray()\Zend_Ldap_Node_Schema::getRdnArray()This is an offline method.
| Name | Type | Description |
|---|---|---|
| $caseFold | string |
| Type | Description |
|---|---|
| array |

getRdnString(string $caseFold = null) : stringGets the RDN of the current node as a string.
Inherited from: \Zend_Ldap_Node_Abstract::getRdnString()\Zend_Ldap_Node_Schema::getRdnString()This is an offline method.
| Name | Type | Description |
|---|---|---|
| $caseFold | string |
| Type | Description |
|---|---|
| string |

offsetExists(string $name) : booleanChecks whether a given attribute exists.
Inherited from: \Zend_Ldap_Node_Abstract::offsetExists()\Zend_Ldap_Node_Schema::offsetExists()Implements ArrayAccess.
Empty attributes will be treated as non-existent.
| Name | Type | Description |
|---|---|---|
| $name | string |
| Type | Description |
|---|---|
| boolean |

offsetGet(string $name) : arrayGets a LDAP attribute.
Inherited from: \Zend_Ldap_Node_Abstract::offsetGet()\Zend_Ldap_Node_Schema::offsetGet()Implements ArrayAccess.
This is an offline method.
| Name | Type | Description |
|---|---|---|
| $name | string |
| Type | Description |
|---|---|
| array |
| Exception | Description |
|---|---|
| \Zend_Ldap_Exception |

offsetSet(string $name, mixed $value) : nullSets a LDAP attribute.
Inherited from: \Zend_Ldap_Node_Abstract::offsetSet()\Zend_Ldap_Node_Schema::offsetSet()Implements ArrayAccess.
This is an offline method.
| Name | Type | Description |
|---|---|---|
| $name | string | |
| $value | mixed |
| Type | Description |
|---|---|
| null |
| Exception | Description |
|---|---|
| \BadMethodCallException |

offsetUnset(string $name) : nullDeletes a LDAP attribute.
Inherited from: \Zend_Ldap_Node_Abstract::offsetUnset()\Zend_Ldap_Node_Schema::offsetUnset()Implements ArrayAccess.
This method deletes the attribute.
This is an offline method.
| Name | Type | Description |
|---|---|---|
| $name | string |
| Type | Description |
|---|---|
| null |
| Exception | Description |
|---|---|
| \BadMethodCallException |

reload(\Zend_Ldap $ldap = null) : \Zend_Ldap_Node_AbstractReload node attributes from LDAP.
Inherited from: \Zend_Ldap_Node_Abstract::reload()\Zend_Ldap_Node_Schema::reload()This is an online method.
| Name | Type | Description |
|---|---|---|
| $ldap | \Zend_Ldap |
| Type | Description |
|---|---|
| \Zend_Ldap_Node_Abstract | Provides a fluid interface |
| Exception | Description |
|---|---|
| \Zend_Ldap_Exception |

toArray(boolean $includeSystemAttributes = true) : arrayReturns an array representation of the current node
Inherited from: \Zend_Ldap_Node_Abstract::toArray()\Zend_Ldap_Node_Schema::toArray()| Name | Type | Description |
|---|---|---|
| $includeSystemAttributes | boolean |
| Type | Description |
|---|---|
| array |

toJson(boolean $includeSystemAttributes = true) : stringReturns a JSON representation of the current node
Inherited from: \Zend_Ldap_Node_Abstract::toJson()\Zend_Ldap_Node_Schema::toJson()| Name | Type | Description |
|---|---|---|
| $includeSystemAttributes | boolean |
| Type | Description |
|---|---|
| string |

toString() : stringReturns the DN of the current node.
Inherited from: \Zend_Ldap_Node_Abstract::toString()\Zend_Ldap_Node_Schema::toString(){@see getDnString()}
| Type | Description |
|---|---|
| string |