Roland Häder [Wed, 9 Dec 2020 01:42:40 +0000 (02:42 +0100)]
Continued:
- renamed .htacces to .gitkeep and emptied them
- no self::createObjectByConfiguredName() anymore, only as usual over
ObjectFactory reference
- ops createProtocolHandlerByType() is not ObjectFactory ...
- updated core framework
Roland Häder [Mon, 7 Dec 2020 06:46:54 +0000 (07:46 +0100)]
Continued:
- moved $stackSourceInstance to BaseUrlSource
- also introduced BaseUrlSource->initStacks()
- renamed UrlSource::CRAWL_JOB_ARRAY_* to URL_SOURCE_ARRAY_*
- added more debug lines
Roland Häder [Sun, 6 Dec 2020 07:51:42 +0000 (08:51 +0100)]
Continued:
- Application instance in generic registry was a little of an overdoze when
there is ApplicationHelper::getSelfInstance() around, this means lesser
method invocations and a bit smaller footprint (one registry entry lesser)
- updated core framework
Roland Häder [Sun, 6 Dec 2020 05:54:05 +0000 (06:54 +0100)]
Continued:
- removed all .htaccess files, please secure it on your own on server-side's
configuration
- introduced LocateableNodeTrait, so far only used in BaseProtocolHandler
Roland Häder [Sun, 6 Dec 2020 05:38:05 +0000 (06:38 +0100)]
Continued:
- moved BaseHubSystem::BOOTSTRAP_NODES_SEPARATOR to Node interface as this is a
node-related only constant
- moved BaseHubNode::NODE_TYPE_* to Node interface
Roland Häder [Sun, 6 Dec 2020 04:21:50 +0000 (05:21 +0100)]
Continued:
- now all stacks must be initialized no matter which method is invoked, so no
"auto-magic" initialization as this was a bit Spagetti-like code
- updated core framework
Roland Häder [Thu, 3 Dec 2020 22:39:34 +0000 (23:39 +0100)]
Continued:
- renamed more $packageInstance to $handlerInstance when it is type of
Receivable
- fixed handling of repeated node_data record creation
- removed bad 'invalid' default values
- updated core framework
Roland Häder [Thu, 3 Dec 2020 19:31:45 +0000 (20:31 +0100)]
Continued:
- throw IAE when e.g. a string parameter is empty
- introduced DeliverableTrait
- improved/commented in debug messages
- added type-hints for primitive variables
Roland Häder [Thu, 3 Dec 2020 15:31:58 +0000 (16:31 +0100)]
Continued:
- renamed NodeInformationDatabaseFrontend->ifNodeDataIsFound() to
findFirstNodeData() and also changed return type from bool to $resultInstance
(SearchableResult)
- changed type-hint from BaseHubNode (abstract class) to Node (interface)
- improved some debug messages
Roland Häder [Thu, 3 Dec 2020 08:38:00 +0000 (09:38 +0100)]
Continued:
- $socketInstance is required in BaseConnectionHelper, so moved the trait
loading there
- also fixed NULL reference as it might not be set at all times
Roland Häder [Thu, 3 Dec 2020 08:28:01 +0000 (09:28 +0100)]
Continued:
- added some type-hints for primitive variables
- added some checks on parameters
- some debug messages improved (sprintf() is the norm when parameters are logged)
Roland Häder [Thu, 3 Dec 2020 08:07:08 +0000 (09:07 +0100)]
Continued:
- removed no longer needed config entry
- used StorableSocket::SOCKET_PROTOCOL_TCP instead of direct 'tcp'
- improved some exception messages a bit
Roland Häder [Thu, 3 Dec 2020 07:49:01 +0000 (08:49 +0100)]
Continued:
- when socket_listen() is left alone with default (0) value for the $backlog
parameter and you have SYN cookies disabled in kernel, you will later get
"Resource temporary unvailable" (code 11)
- this can be only fixed by setting high enough values in config-local.php (not
config.php) which depends on your used operanting system.
- commented out noisy debug lines
- converted old array() style to "new" [] way
Roland Häder [Thu, 3 Dec 2020 06:59:26 +0000 (07:59 +0100)]
Continued:
- renamed StorableSocket->getSocketRecipient() to getSocketRecipientUnl()
- commented-in noisy debug lines as a strange "Resource temporary unavailable"
happens when SYN cookies are disabled in kernel
- added type-hint for primitive variables
- not really noisy debug lines but later no more needed
Roland Häder [Wed, 2 Dec 2020 21:21:52 +0000 (22:21 +0100)]
Continued:
- fixed E_NOTICE and other stuff
- added config entry for disabling (default: enabled) reusing TCP addresses
- commented-in noisy debug lines SYNC flooding happens on my system with this
program
- updated core framework
Roland Häder [Wed, 2 Dec 2020 07:33:47 +0000 (08:33 +0100)]
Continued:
- moved DHT-related template classes to proper sub directories
- replaced CompileableTemplate with newly added CompileableXmlTemplate
interface as this is closer to what the class is about
- updated core framework
Roland Häder [Wed, 2 Dec 2020 04:56:14 +0000 (05:56 +0100)]
Continued:
- removed PackageData->$rawXml instance and used $packageContent instead
- used ApplicationEntryPoint::exitApplication() instead of die()
- updated core framework
Roland Häder [Wed, 2 Dec 2020 03:47:42 +0000 (04:47 +0100)]
Continued:
- package and message are different things, so there is no "new package arrived"
but more decompressed XML
- renamed methods for better understanding them
- added missing config key
- updated core framework
Roland Häder [Tue, 1 Dec 2020 22:41:52 +0000 (23:41 +0100)]
Continued:
- moved $handerInstance from monolithic BaseFrameworkSystem class (the class
later cleaned from such instances is doing fine) to proper classes
- updated core framework
Roland Häder [Sun, 22 Nov 2020 17:58:49 +0000 (18:58 +0100)]
Continued:
- moved $listInstance from monothlithic BaseFrameworkSystem to proper classes
- NodePingTask had compared to all other tasks a parameter in factory method,
now this is initialized within the factory method
- updated core framework
Roland Häder [Sat, 7 Nov 2020 16:46:44 +0000 (17:46 +0100)]
Continued:
- re-added $databaseInstance from monolithic BaseFrameworkSystem
- BaseFrameworkSystem->hex2dec() has moved to StringUtils::hex2dec()
- updated core framework
Roland Häder [Sat, 7 Nov 2020 16:46:44 +0000 (17:46 +0100)]
Continued:
- re-added $databaseInstance from monolithic BaseFrameworkSystem
- BaseFrameworkSystem->hex2dec() has moved to StringUtils::hex2dec()
- updated core framework
Roland Häder [Sat, 7 Nov 2020 13:40:30 +0000 (14:40 +0100)]
Continued:
- monolithing BaseFrameworkSystem->getConfigInstance() is no more, best is to
use FrameworkBootstrap::getConfigurationInstance() instead
- updated core framework
Roland Häder [Sat, 7 Nov 2020 13:00:43 +0000 (14:00 +0100)]
Continued:
- ApplicationHelper now doesn't have all these fields set, BaseApplication holds it
- all __construct()'s $className parameter have now a type-hint "string" set
- updated core framework
Roland Häder [Fri, 6 Nov 2020 15:41:01 +0000 (16:41 +0100)]
Continued:
- reduces memory-footprint: moved $protocolName to proper classes, not in a
monolithic super class
- moved $packageHandlerInstance, $listenerInstance, $sourceInstance to proper
classes, monolithic classes are a bad design idea
- removed $infoInstance, $protocolInstance, $locatorInstance,
$communicatorInstance, $packageInstance and getter/setter as it was no longer
used
Roland Häder [Fri, 6 Nov 2020 13:14:43 +0000 (14:14 +0100)]
Continued:
- if "Resource temporary unavailable" occurs but there had been some read data
from the socket, don't discard it but add it to the stacker
- used getLastSocketErrorMessage() instead of "raw" socket_strerror()
Roland Häder [Wed, 4 Nov 2020 13:25:09 +0000 (14:25 +0100)]
Continued:
- fixed config entry for controller resolver, still the fuse command class is
not implemented yet
- imported missing class
- updated core framework
- updated README file
Roland Häder [Tue, 3 Nov 2020 19:08:17 +0000 (20:08 +0100)]
Continued:
- the SocketFactory class was invoking complicated createConnectionFromPackageInstance()
method which didn't fit naming-convention. It is now renamed to
"create<ClassName>" scheme and can be created by default ObjectFactory's
factory methods.
- improved some debug lines
Roland Häder [Mon, 2 Nov 2020 15:34:20 +0000 (16:34 +0100)]
Continued:
- isIncomingSocketRegistered() now requires a Listenable instance as parameter
- further fixes for receiving raw package data. It seem to be a race-condition?
- updated core framework
Roland Häder [Tue, 27 Oct 2020 20:18:40 +0000 (21:18 +0100)]
Continued:
- renamed $unlInstance to $locatorInstance
- implemented findNodeByUniversalNodeLocator()
- WIP: started implementing looking up session id by UNL (internal or external)