From 0ffd98d58a9add40b642e9888f6f4d57a58ed4b5 Mon Sep 17 00:00:00 2001
From: Roland Haeder
Date: Wed, 27 May 2015 03:17:43 +0200
Subject: [PATCH 1/1] Added new FrameworkFeature class + missing exception: -
Features can be enabled or disabled by the user - Their availability depends
on if the feature is enabled and if all requirements are found. This can be
anything like loaded PHP extensions (PECL) or anything else. - Features can
have methods that can be called (publicly) where their actual "feature" is
being written. - This can be again a class with static or non-static methods
that will be called. - Generally feature classes shall not contain the
actual implementation, they shall only call implementing classes. - So
basicly a feature class "hides" the actual implementation and can be
understood as a generic facade.
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit
Signed-off-by: Roland Häder
---
contrib/mindmaps/Local File Database - NG.mm | 1330 +++++++++--------
...ss_ConfigValueTypeUnsupportedException.php | 49 +
inc/classes/exceptions/feature/.htaccess | 1 +
...lass_FeatureMethodNotCallableException.php | 46 +
inc/classes/interfaces/feature/.htaccess | 1 +
.../interfaces/feature/class_Feature.php | 34 +
inc/classes/main/feature/.htaccess | 1 +
inc/classes/main/feature/class_ | 68 +
.../main/feature/class_BaseFeature.php | 38 +
.../main/feature/class_FrameworkFeature.php | 160 ++
10 files changed, 1089 insertions(+), 639 deletions(-)
create mode 100644 inc/classes/exceptions/config/class_ConfigValueTypeUnsupportedException.php
create mode 100644 inc/classes/exceptions/feature/.htaccess
create mode 100644 inc/classes/exceptions/feature/class_FeatureMethodNotCallableException.php
create mode 100644 inc/classes/interfaces/feature/.htaccess
create mode 100644 inc/classes/interfaces/feature/class_Feature.php
create mode 100644 inc/classes/main/feature/.htaccess
create mode 100644 inc/classes/main/feature/class_
create mode 100644 inc/classes/main/feature/class_BaseFeature.php
create mode 100644 inc/classes/main/feature/class_FrameworkFeature.php
diff --git a/contrib/mindmaps/Local File Database - NG.mm b/contrib/mindmaps/Local File Database - NG.mm
index 55d1a8a9..b125ac9a 100644
--- a/contrib/mindmaps/Local File Database - NG.mm
+++ b/contrib/mindmaps/Local File Database - NG.mm
@@ -1,7 +1,8 @@
-
- Work in progress!
+ Work in progress!
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
-
+
-
-
+
+
-
+
+
-
-
+
+
-
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
+
-
-
+
-
+
+
-
-
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
+
-
-
+
+
-
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
+
-
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
-
+
+
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
+
+
-
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
+
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
-
+
-
+
+
-
-
+
+
-
+
-
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
-
-
-
+
+
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
-
+
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
-
-
-
+
+
+
+
-
+
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
-
+
-
-
+
+
-
+
-
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
-
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
-
+
-
-
-
+
+
+
-
-
+
+
-
+
-
-
-
+
+
+
-
+
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
+
-
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
+
-
+
-
-
-
+
+
+
-
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
+
-
+
-
-
+
+
-
-
-
+
+
+
-
+
-
-
-
-
-
+
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
+