Roland Haeder [Thu, 23 Feb 2017 21:00:39 +0000 (22:00 +0100)]
Continued with debugging:
- added exception InvalidClassNameException which is only being thrown by
ObjectFactory when the given class name is not following naming convention.
This is now strictly applied to all objects being created by that factory.
- introduced stripNamespaceFromClassName()
Roland Haeder [Thu, 23 Feb 2017 20:31:28 +0000 (21:31 +0100)]
Continued:
- added "import" for Streamable + fixed namespace, no plural
- added "import" for OutputStreamer
- added "import" for NullPointerException + thrown one in middleware
Roland Haeder [Wed, 22 Feb 2017 21:37:29 +0000 (22:37 +0100)]
Continued:
- "imported" Registry class
- rewrote exception handler to also handle anything else that implements
Throwable
- please note that application/<foo>/exceptions.php may become generalized
and will no longer be loaded as the same functionality is provided by this
framework then.
Roland Haeder [Tue, 21 Feb 2017 20:39:36 +0000 (21:39 +0100)]
Finished first cleanup (still a lot is broken):
- added more namespaces
- made more exceptions deprecated as there are better exceptions or names for it
- removed own [EOF] (old coding style)
- removed discouraged ?> from all files
Roland Haeder [Mon, 20 Feb 2017 22:08:14 +0000 (23:08 +0100)]
Continued:
- removed more [EOF] (own old style)
- removed more closing PHP tag as this is discouraged
- added namespaces + some more deprecation (can be replaced with generic
exceptions)
Roland Haeder [Wed, 15 Feb 2017 21:40:24 +0000 (22:40 +0100)]
Continued rewriting:
- 'loader.php' is now deprecated and also no longer loaded, instead selector.php
(also deprecated but still around) will load application's classes
- class name ApplicationHelper is now hard-wired
Roland Haeder [Mon, 13 Feb 2017 19:08:26 +0000 (20:08 +0100)]
Introduced namespaces:
- always use this pattern CoreFramework\Foo[\Bar] for namespaces
- added lots of namespaces (breaks all stuff)
- added "import" for FrameworkInterface
Roland Haeder [Wed, 29 Jun 2016 21:01:49 +0000 (23:01 +0200)]
Prepared rewrite of framework bootstrap:
- added initial class 'BootstrapFramework' which doesn't need to be
instanciated as only static methods will come
- $cfg in inc/config.php is now being unset, it is not good coding practice
to then use it outside the scope of the included file
- you then need to get $cfg again from
FrameworkConfiguration::getSelfInstance() to be able to set/get configuration
entries.
- added note how to deal with inc/config/config-local.php-dist which is an
example how to use it in your own applications.
- minor improvements (comments)
Roland Haeder [Wed, 29 Jun 2016 19:47:58 +0000 (21:47 +0200)]
Continued a bit:
- config-hubmaster.php is long time deprecated (from very early days) and the
'hub' project is the only one using it, so why keep it around?
- Some (needed by FrameworkInterface) methods now throw an
UnsupportedOperationException indicating that they are not implemented.
- Constructors are not even returning void, they are constructors (no real method)
Roland Haeder [Wed, 29 Jun 2016 18:04:56 +0000 (20:04 +0200)]
Continued a bit:
- line-feed is now Linux/Uni* way
- no more language-dependent templates, keep language out of them as they
should only define the structure of the website. Localization should be done
with e.g. php_intl
Roland Haeder [Fri, 13 Nov 2015 22:26:37 +0000 (23:26 +0100)]
Continued:
- ignored more bad lines (causes by php-fuse)
- added extension_foo_loaded (DONT TOUCH THIS)
- the script should check for existence (see 'hub' project) of an optional
PHP extension and then set the corresponding option to TRUE
- the above will later be made more generic
Roland Haeder [Sat, 12 Sep 2015 19:11:08 +0000 (21:11 +0200)]
Continued:
- moved some files/methods ("generic" enough to be here) from 'hub'.
- continued with file-based socket listener to allow listening to sockets ...
Roland Haeder [Tue, 25 Aug 2015 16:44:40 +0000 (18:44 +0200)]
Renamed classes/main/ to main/classes/ + added FuseFeature, an upcoming feature
for mounting parts of your application as a file system in user space (FUSE).
Roland Haeder [Wed, 29 Jul 2015 20:40:52 +0000 (22:40 +0200)]
Moved 'result' into 'database' as the actual class is a database result + added
(functionless) generic class for it. This generic class will be later be
expanded with more functionality.
Roland Haeder [Tue, 14 Jul 2015 21:20:40 +0000 (23:20 +0200)]
Continued with logger facility:
- Introduced BaseOutput and BaseDebugOutput
- Moved debug/ classes to outut/debug/<type>/ as <type> can be console, error
and web (later for HTML/HTTP output; careful, this may break sending HTTP
headers!)
- Handled over the class' name the logger is being created for (for later
configuration with XMLs)
Roland Haeder [Wed, 27 May 2015 01:17:43 +0000 (03:17 +0200)]
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.