mirror of
https://github.com/Icinga/icingaweb2.git
synced 2026-05-28 04:02:39 -04:00
Add SPDX license headers and mark source files as GPL-3.0-or-later to preserve the option to relicense under later GPL versions.
71 lines
1.4 KiB
PHP
71 lines
1.4 KiB
PHP
<?php
|
|
|
|
// SPDX-FileCopyrightText: 2018 Icinga GmbH <https://icinga.com>
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
namespace Icinga\Protocol\Ldap;
|
|
|
|
/**
|
|
* This class represents an LDAP node object
|
|
*
|
|
* @copyright Copyright (c) 2013 Icinga-Web Team <info@icinga.com>
|
|
* @author Icinga-Web Team <info@icinga.com>
|
|
* @package Icinga\Protocol\Ldap
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License
|
|
*/
|
|
class Node extends Root
|
|
{
|
|
/**
|
|
* @var LdapConnection
|
|
*/
|
|
protected $connection;
|
|
|
|
/**
|
|
* @var
|
|
*/
|
|
protected $rdn;
|
|
|
|
/**
|
|
* @var Root
|
|
*/
|
|
protected $parent;
|
|
|
|
/**
|
|
* @param Root $parent
|
|
*/
|
|
protected function __construct(Root $parent)
|
|
{
|
|
$this->connection = $parent->getConnection();
|
|
$this->parent = $parent;
|
|
}
|
|
|
|
/**
|
|
* @param $parent
|
|
* @param $rdn
|
|
* @param array $props
|
|
* @return Node
|
|
*/
|
|
public static function createWithRDN($parent, $rdn, $props = array())
|
|
{
|
|
$node = new Node($parent);
|
|
$node->rdn = $rdn;
|
|
$node->props = $props;
|
|
return $node;
|
|
}
|
|
|
|
/**
|
|
* @return mixed
|
|
*/
|
|
public function getRDN()
|
|
{
|
|
return $this->rdn;
|
|
}
|
|
|
|
/**
|
|
* @return mixed|string
|
|
*/
|
|
public function getDN()
|
|
{
|
|
return $this->getRDN() . ',' . $this->parent->getDN();
|
|
}
|
|
}
|