Menu

Commit [r27]  Maximize  Restore  History

Self registering Plugins working noe (Theoraticly)

Self registering Plugins which are not genrate content dirctly. They could parse the the Conte by themself, or du othe things, like add usermagment, logging and so on.

NEW: PhpCMSng\Core\Cache\CacheInfoContainer
* A simple implementation of the PhpCMSng\Core\Interfaces\CacheInformationAwareInterface

PhpCMSng\Core\Cache\CacheInformation
* add a setter and getter for the starttime. The purpose is when a plugin have a own cache so the plugin can tell the PageCache when this cache gets invalid

PhpCMSng\Content\ContentParser
* add support for self registering Plugins
* addLineToField(), addLineTooActField(), _parseLine(), _addPlugin() add new parameter newline so that plugins can add informations like links in <a hre="{PLUGIN}">
* _addPlugin() some rewrite and added funktionality for the problem from above

PhpCMSng\Content\ContentParserTest
* NEWTEST: testPluginTypeClassFieldClasNotFoundExceptionNoAutoloader()
* NEWTEST: testPluginTypeClassFieldClasNotFoundException()
* NEWTEST: testPluginTypeClassFieldTypeSelf()
* NEWTEST: testPluginTypeLoadAndClassMultiline() and multe plugin!

NEW: PhpCMSng\Tools\DateTime
* Tool class for manipulating Date and Time related things

PhpCMSng\Content\FieldParser\FieldData
* addContentLine add new parameter newline so that plugins can add informations like links in <a hre="{PLUGIN}">
* some coding was needed

PhpCMSng\Plugin\PluginHandler
* implement the handling for self::EXECUTION_TYPE_SELF
* NEW: _createSelfRegisterClassPluginOutField()
* NEW: _addPluginFieldForCache()
* _prepareAndSetAutoloader() better error handling, includes the path for the autoloder
* BUGFIX: _validateAndSetType()

PhpCMSng\Plugin\Interfaces\PluginInterface
* code cleanup uses now: PhpCMSng\Core\Interfaces\ParserAwareInterface

PhpCMSng\Plugin\Interfaces\PluginSelfDescribingInterface
* code cleanup uses now: PhpCMSng\Plugin\Interfaces\SelfRegisteringPluginInterface

lots of fixtures ;) including a dummy seld registe plugin, the register() Method generates only a PhpCMSng\Core\Cache\CacheInfoContainer.

More test for the PluginHandler in the PluginHandlerTest !

obw 2017-05-12

changed /PhpCMSng/trunk/parser/PhpCMSng/Content/ContentParser.php
changed /PhpCMSng/trunk/parser/PhpCMSng/Content/FieldParser/FieldData.php
added /PhpCMSng/trunk/parser/PhpCMSng/Core/Cache/CacheInfoContainer.php
changed /PhpCMSng/trunk/parser/PhpCMSng/Core/Cache/CacheInformation.php
changed /PhpCMSng/trunk/parser/PhpCMSng/Core/I18N/translations/de.php
changed /PhpCMSng/trunk/parser/PhpCMSng/Core/I18N/translations/en.php
changed /PhpCMSng/trunk/parser/PhpCMSng/Plugin/Exception/PluginClassNotFound.php
changed /PhpCMSng/trunk/parser/PhpCMSng/Plugin/Interfaces/PluginInterface.php
changed /PhpCMSng/trunk/parser/PhpCMSng/Plugin/Interfaces/PluginSelfDescribingInterface.php
added /PhpCMSng/trunk/parser/PhpCMSng/Plugin/Interfaces/SelfRegisteringPluginFromFieldInterface.php
added /PhpCMSng/trunk/parser/PhpCMSng/Plugin/Interfaces/SelfRegisteringPluginInterface.php
changed /PhpCMSng/trunk/parser/PhpCMSng/Plugin/PluginHandler.php
added /PhpCMSng/trunk/parser/PhpCMSng/Tools
added /PhpCMSng/trunk/parser/PhpCMSng/Tools/DateTime.php
changed /PhpCMSng/trunk/parser/unitTests/PhpCMSng/Content/ContentParserTest.php
copied /PhpCMSng/trunk/parser/unitTests/fixtures/storage/document_root/plugintypeclass.html -> /PhpCMSng/trunk/parser/unitTests/fixtures/storage/document_root/plugintypeclass_classnotfound.html
copied /PhpCMSng/trunk/parser/unitTests/fixtures/storage/document_root/plugintypeclass.html -> /PhpCMSng/trunk/parser/unitTests/fixtures/storage/document_root/plugintypeclass_classnotfound_noauto.html
copied /PhpCMSng/trunk/parser/unitTests/fixtures/storage/document_root/plugintypeclass.html -> /PhpCMSng/trunk/parser/unitTests/fixtures/storage/document_root/plugintypeclass_selfregister.html
copied /PhpCMSng/trunk/parser/unitTests/fixtures/storage/document_root/plugintypeload_accessparser.html -> /PhpCMSng/trunk/parser/unitTests/fixtures/storage/document_root/plugintypeload_and_class_multiline.html
added /PhpCMSng/trunk/parser/unitTests/fixtures/storage/plugins/Test/Plugin/SimpleSelfRegister.php
/PhpCMSng/trunk/parser/PhpCMSng/Content/ContentParser.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Content/FieldParser/FieldData.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Core/Cache/CacheInfoContainer.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Core/Cache/CacheInformation.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Core/I18N/translations/de.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Core/I18N/translations/en.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Plugin/Exception/PluginClassNotFound.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Plugin/Interfaces/PluginInterface.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Plugin/Interfaces/PluginSelfDescribingInterface.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Plugin/Interfaces/SelfRegisteringPluginFromFieldInterface.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Plugin/Interfaces/SelfRegisteringPluginInterface.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Plugin/PluginHandler.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/PhpCMSng/Tools/DateTime.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/unitTests/PhpCMSng/Content/ContentParserTest.php Diff Switch to side-by-side view
Loading...
/PhpCMSng/trunk/parser/unitTests/fixtures/storage/plugins/Test/Plugin/SimpleSelfRegister.php Diff Switch to side-by-side view
Loading...
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.