From a62e7ddeca901e421063c7569ac87426bfa57127 Mon Sep 17 00:00:00 2001 From: Deon George Date: Sun, 2 Apr 2023 22:08:43 +1000 Subject: [PATCH] Change Schema classes to final --- app/Classes/LDAP/Schema/AttributeType.php | 4 ++-- app/Classes/LDAP/Schema/LDAPSyntax.php | 2 +- app/Classes/LDAP/Schema/MatchingRule.php | 2 +- app/Classes/LDAP/Schema/MatchingRuleUse.php | 2 +- app/Classes/LDAP/Schema/ObjectClass.php | 2 +- app/Classes/LDAP/Schema/ObjectClassAttribute.php | 2 +- app/Classes/LDAP/Server.php | 3 ++- 7 files changed, 9 insertions(+), 8 deletions(-) diff --git a/app/Classes/LDAP/Schema/AttributeType.php b/app/Classes/LDAP/Schema/AttributeType.php index 85d3129..38bce96 100644 --- a/app/Classes/LDAP/Schema/AttributeType.php +++ b/app/Classes/LDAP/Schema/AttributeType.php @@ -11,7 +11,7 @@ use Illuminate\Support\Facades\Log; * @package phpLDAPadmin * @subpackage Schema */ -class AttributeType extends Base { +final class AttributeType extends Base { // The attribute from which this attribute inherits (if any) private ?string $sup_attribute = NULL; @@ -246,7 +246,7 @@ class AttributeType extends Base { public function __clone() { - // When we clone, we need to break the reference to + // When we clone, we need to break the reference too $this->aliases = clone $this->aliases; } diff --git a/app/Classes/LDAP/Schema/LDAPSyntax.php b/app/Classes/LDAP/Schema/LDAPSyntax.php index 046abe7..0891a56 100644 --- a/app/Classes/LDAP/Schema/LDAPSyntax.php +++ b/app/Classes/LDAP/Schema/LDAPSyntax.php @@ -10,7 +10,7 @@ use Illuminate\Support\Facades\Log; * @package phpLDAPadmin * @subpackage Schema */ -class LDAPSyntax extends Base { +final class LDAPSyntax extends Base { // Is human readable? private ?bool $is_not_human_readable = NULL; diff --git a/app/Classes/LDAP/Schema/MatchingRule.php b/app/Classes/LDAP/Schema/MatchingRule.php index 5492421..c88f9ef 100644 --- a/app/Classes/LDAP/Schema/MatchingRule.php +++ b/app/Classes/LDAP/Schema/MatchingRule.php @@ -11,7 +11,7 @@ use Illuminate\Support\Facades\Log; * @package phpLDAPadmin * @subpackage Schema */ -class MatchingRule extends Base { +final class MatchingRule extends Base { // This rule's syntax OID private ?string $syntax = NULL; diff --git a/app/Classes/LDAP/Schema/MatchingRuleUse.php b/app/Classes/LDAP/Schema/MatchingRuleUse.php index cdbd2c8..d69462e 100644 --- a/app/Classes/LDAP/Schema/MatchingRuleUse.php +++ b/app/Classes/LDAP/Schema/MatchingRuleUse.php @@ -11,7 +11,7 @@ use Illuminate\Support\Facades\Log; * @package phpLDAPadmin * @subpackage Schema */ -class MatchingRuleUse extends Base { +final class MatchingRuleUse extends Base { // An array of attribute names who use this MatchingRule private Collection $used_by_attrs; diff --git a/app/Classes/LDAP/Schema/ObjectClass.php b/app/Classes/LDAP/Schema/ObjectClass.php index 84b3f0e..285eb14 100644 --- a/app/Classes/LDAP/Schema/ObjectClass.php +++ b/app/Classes/LDAP/Schema/ObjectClass.php @@ -15,7 +15,7 @@ use App\Ldap\Entry; * @package phpLDAPadmin * @subpackage Schema */ -class ObjectClass extends Base { +final class ObjectClass extends Base { // The server ID that this objectclass belongs to. private Server $server; diff --git a/app/Classes/LDAP/Schema/ObjectClassAttribute.php b/app/Classes/LDAP/Schema/ObjectClassAttribute.php index 62e92ff..ed8eb30 100644 --- a/app/Classes/LDAP/Schema/ObjectClassAttribute.php +++ b/app/Classes/LDAP/Schema/ObjectClassAttribute.php @@ -13,7 +13,7 @@ namespace App\Classes\LDAP\Schema; * specified it. This class is therefore used by the class ObjectClass to determine * inheritance. */ -class ObjectClassAttribute extends Base { +final class ObjectClassAttribute extends Base { // This Attribute's root. private string $source; diff --git a/app/Classes/LDAP/Server.php b/app/Classes/LDAP/Server.php index a9bb4bf..ef29f63 100644 --- a/app/Classes/LDAP/Server.php +++ b/app/Classes/LDAP/Server.php @@ -18,7 +18,7 @@ use App\Classes\LDAP\Schema\{AttributeType,Base,LDAPSyntax,MatchingRule,Matching use App\Exceptions\InvalidUsage; use App\Ldap\Entry; -class Server +final class Server { // This servers schema objectclasses private Collection $attributetypes; @@ -59,6 +59,7 @@ class Server * @return Collection * @throws ObjectNotFoundException * @testedin GetBaseDNTest::testBaseDNExists(); + * @todo Need to allow for the scenario if the baseDN is not readable by ACLs */ public static function baseDNs($connection=NULL,bool $objects=TRUE): Collection {