Oroboros Core
  • Namespace
  • Class
  • Tree
  • Deprecated
  • Todo

Namespaces

  • None
  • oroboros
    • core
      • abstracts
        • adapters
        • bootstrap
        • controllers
        • libraries
          • auth
          • bootstrap
          • cache
          • codex
          • config
          • container
          • data
          • database
          • dns
          • entity
          • enum
          • error
          • event
          • extension
          • file
          • flags
          • hooks
          • job
          • logger
          • manager
          • message
          • prototype
          • request
          • response
          • routine
          • shell
          • startup
          • stream
          • template
          • uri
          • utility
          • validation
            • workers
          • worker
        • models
        • patterns
          • behavioral
          • creational
        • utilities
          • exception
            • cache
            • container
          • http
        • views
      • interfaces
        • adapters
          • interpreters
          • sdk
        • api
          • adapters
          • bootstrap
          • controllers
          • psr
        • contract
          • adapters
          • bootstrap
          • codex
          • components
          • controllers
          • data
          • entities
          • errors
          • events
          • extensions
          • jobs
          • libraries
            • auth
            • cache
            • config
            • container
            • enum
            • file
            • flags
            • hooks
            • module
            • promise
            • record
            • request
            • response
            • server
            • shutdown
            • site
            • stream
            • template
            • theme
            • uri
          • models
          • patterns
            • behavioral
            • concurrency
            • creational
            • structural
          • routes
          • routines
            • bootload
            • declarative
            • procedural
            • subsystem
          • services
            • consumer
              • cgi
              • rest
                • local
                • remote
                  • authenticated
                  • unauthenticated
            • provider
              • cgi
              • rest
                • local
                • remote
                  • authenticated
                  • unauthenticated
          • utilities
            • datetime
            • exception
              • cache
              • container
            • filebase
            • http
            • math
            • parser
            • regex
            • session
          • views
        • enumerated
          • environment
          • flags
          • http
          • views
        • libraries
          • manager
          • worker
      • libraries
        • api
        • codex
        • container
        • enum
          • http
        • file
        • hooks
        • logger
        • math
        • psr4
        • request
        • response
        • stream
        • uri
      • patterns
        • creational
      • traits
        • adapters
        • bootstrap
        • codex
        • components
        • controllers
        • data
        • entities
        • events
        • extensions
        • jobs
        • libraries
          • container
          • file
          • request
          • response
          • stream
          • uri
        • models
        • modules
        • patterns
          • behavioral
          • concurrency
          • creational
          • structural
        • routes
        • services
        • utilities
          • core
            • api
            • config
            • contract
              • contract
            • enum
            • environment
            • routines
          • datetime
          • error
          • exception
          • filebase
          • hooks
          • html
          • http
          • logic
          • math
          • parsers
          • regex
          • session
        • views
      • utilities
        • exception
          • cache
          • container
        • http
      • views
    • tests
      • patterns
        • creational
      • psr
        • psr7
      • utilities
        • exception
  • PasswordCompat
    • binary
  • PHP

Classes

  • OroborosBaseAbstract

Class OroborosBaseAbstract

This class defines a few very simple configurations to identify as part of Oroboros, and implements common interfaces. All other Oroboros classes descend from this one wherever possible. There is a also a trait to emulate this behavior for classes that must extend a different class for some reason.

oroboros\core\abstracts\OroborosBaseAbstract implements oroboros\core\interfaces\BaseAbstractInterface uses oroboros\core\traits\BaseTrait

Direct known subclasses

oroboros\core\abstracts\adapters\AbstractAdapter, oroboros\core\abstracts\controllers\AbstractController, oroboros\core\abstracts\patterns\creational\AbstractPrototypical, oroboros\core\abstracts\libraries\AbstractLibrary, oroboros\core\abstracts\libraries\data\AbstractDataObject, oroboros\core\abstracts\libraries\entity\AbstractEntity, oroboros\core\abstracts\libraries\job\AbstractJob, oroboros\core\abstracts\libraries\logger\AbstractLogger, oroboros\core\abstracts\libraries\startup\AbstractBootstrap, oroboros\core\abstracts\libraries\utility\AbstractUtility, oroboros\core\abstracts\patterns\creational\AbstractFactory

Indirect known subclasses

oroboros\core\abstracts\adapters\AbstractBrowserAdapter, oroboros\core\abstracts\adapters\AbstractDatabaseAdapter, oroboros\core\abstracts\controllers\AbstractFrontController, oroboros\core\abstracts\controllers\AbstractHttpController, oroboros\core\abstracts\controllers\AbstractRoutineController, oroboros\core\abstracts\libraries\auth\AbstractAuth, oroboros\core\abstracts\libraries\bootstrap\AbstractBootstrap, oroboros\core\abstracts\libraries\cache\AbstractCache, oroboros\core\abstracts\libraries\database\AbstractDatabaseManager, oroboros\core\abstracts\libraries\dns\AbstractRoute, oroboros\core\abstracts\libraries\dns\AbstractRouter, oroboros\core\abstracts\libraries\error\AbstractErrorEvent, oroboros\core\abstracts\adapters\AbstractLibraryAdapter, oroboros\core\abstracts\libraries\event\AbstractEvent, oroboros\core\abstracts\libraries\event\AbstractServerEvent, oroboros\core\abstracts\libraries\extension\AbstractExtension, oroboros\core\abstracts\libraries\flags\AbstractFlag, oroboros\core\abstracts\libraries\hooks\AbstractHook, oroboros\core\abstracts\libraries\hooks\AbstractHookParser, oroboros\core\abstracts\libraries\routine\AbstractRoutine, oroboros\core\abstracts\libraries\shell\AbstractShell, oroboros\core\abstracts\libraries\template\AbstractTemplate, oroboros\core\abstracts\patterns\behavioral\AbstractDirector, oroboros\core\abstracts\adapters\AbstractProxyAdapter, oroboros\core\libraries\codex\Codex, oroboros\core\libraries\hooks\SimpleHook, oroboros\core\libraries\logger\FileLogger, oroboros\core\libraries\logger\NullLogger, oroboros\core\patterns\creational\AdapterFactory, oroboros\core\patterns\creational\AppFactory, oroboros\core\patterns\creational\ControllerFactory, oroboros\core\patterns\creational\FactoryFactory, oroboros\core\patterns\creational\LibraryFactory, oroboros\core\patterns\creational\ModelFactory, oroboros\core\abstracts\adapters\AbstractSdkAdapter, oroboros\core\patterns\creational\ModuleFactory, oroboros\core\patterns\creational\TemplateFactory, oroboros\core\patterns\creational\ViewFactory, oroboros\core\abstracts\adapters\AbstractServiceAdapter, oroboros\core\abstracts\adapters\AbstractShellAdapter, oroboros\core\abstracts\adapters\AbstractSocketAdapter, oroboros\core\abstracts\controllers\AbstractAjaxController, oroboros\core\abstracts\controllers\AbstractCgiController

Abstract
Namespace: oroboros\core\abstracts
Author: Brian Dayhoff brian@mopsyd.me
Since: 0.0.1a
See:

\oroboros\core\traits\BaseTrait

- implements \oroboros\core\interfaces\BaseAbstractInterface - use \oroboros\core\traits\BaseTrait; - const CLASS_SCOPE = \oroboros\core\interfaces\api\ClassScopeApi::CLASS_SCOPE_LIBRARY_ABSTRACT; - const API = false;

Any class can emulate this behavior without extending this class

,

and still be recognized as a valid Oroboros internal by doing the following:

  • Extend one of the classes located in: \oroboros\core\abstracts
  • Declare the class constant: CLASS_SCOPE using one of the values in: \oroboros\core\interfaces\api\ClassScopeApi
  • Declare the class constant: API
, either as false,

or as one of the Api interfaces located in: \oroboros\core\interfaces\api - Profit.

IF YOUR CONSTRUCTOR IS COMPATIBLE WITH THE ONE DEFINED HERE: (In this case we will register a fully qualified Oroboros class) - In your class

,

use the trait: \oroboros\core\traits\BaseTrait - Implement the interface: \oroboros\core\interfaces\BaseAbstractInterface - Declare the class constant: CLASS_SCOPE using one of the values in: \oroboros\core\interfaces\api\ClassScopeApi - Declare the class constant: API

, either as false,

or as one of the Api interfaces located in: \oroboros\core\interfaces\api - Profit.

IF YOUR CONSTRUCTOR IS INCOMPATIBLE WITH THE ONE DEFINED ABOVE: (in this case we will register a utility

,

which is a 3rd party class that still connects to the system correctly) - In your class

,

use the trait: \oroboros\core\traits\utility\UtilityApiTrait - Implement the interface: \oroboros\core\interfaces\api\UtilityApi - Declare the class constant: CLASS_SCOPE using one of the values in: \oroboros\core\interfaces\api\ClassScopeApi - Declare the class constant: API

, either as false,

or as one of the Api interfaces located in: \oroboros\core\interfaces\api -Profit.

it is suggested that you instead provide a utility

,

or alternately wrap it in an adapter. Larger packages may be provided as a module or extension.


See: oroboros\core\interfaces\api\UtilityApi
See: oroboros\core\interfaces\api\AdapterApi
See: oroboros\core\interfaces\api\ModuleApi
See: \oroboros\core\interfaces\api\ExtensionApi
Covers: rootclass
Located at core/abstracts/OroborosBaseAbstract.php

Methods summary

Methods inherited from oroboros\core\interfaces\BaseAbstractInterface

__construct(), fingerprint(), initialize()

Methods used from oroboros\core\traits\BaseTrait

__construct(), __destruct()

Constants summary

string CLASS_SCOPE

The class type and class scope determine what functionality to provide to the system. This default value resolves to ::abstract-library::

The class type and class scope determine what functionality to provide to the system. This default value resolves to ::abstract-library::

You may override this within your class using the following definitions:

See

oroboros\core\interfaces\api\ClassScopeApi
# \oroboros\core\interfaces\api\ClassScopeApi::CLASS_SCOPE_LIBRARY_ABSTRACT
boolean API

Override this in child classes to define an API for the class. If you have an api, it should be a valid API interface, or a reference to it's enumerated getter object. (mandatory)

Override this in child classes to define an API for the class. If you have an api, it should be a valid API interface, or a reference to it's enumerated getter object. (mandatory)

See

oroboros\core\interfaces\api\ClassTypeApi

Example

\oroboros\core\interfaces\api\DefaultApi

Note

You must define this as false by default in your class, or alternately follow the below instructions.

(optional)


bind to an existing provided Api, or:
create an Api interface using the following criteria:
Api interfaces MUST have Api.php as their suffix (no "." characters prior to this either)
Api interfaces MUST declare a CLASS_TYPE constant, with a value provided by:
Api CLASS_TYPE determines what portion of the system the class is registered as an override for. You will probably only need to use ::module:: or ::extension::, but you may use any provided there.
Api interfaces MUST declare the following class constants (all may be false by default): [API_DOCS, API_NAME, API_SDK, API_REPO, API_VERSION, API_AUTHOR, API_LICENSE, API_SITE];
Api interface constant values MUST be false if not provided.
Api interfaces SHOULD NOT extend other API interfaces, or the constants will collide.

DO NOT DO THIS IN AN INTERFACE OR YOU WILL WHITESCREEN

API is repeatedly declared WITHIN CLASSES throughout the system. Any child class that inherits from a class that has this defined in their interface will not be able to declare their own api without causing a fatal error. For this reason, you should never declare this constant in an interface, or implement an interface that has it defined.


# false

Constants inherited from oroboros\core\interfaces\api\LogLevelApi

ALERT, CRITICAL, DEBUG, EMERGENCY, ERROR, INFO, NOTICE, WARNING

Constants inherited from oroboros\core\interfaces\api\FlagApi

FLAG_ALPHA, FLAG_BETA, FLAG_DEBUG, FLAG_DEVELOPMENT, FLAG_LOCK_EXECUTE, FLAG_LOCK_READ, FLAG_LOCK_WRITE, FLAG_MAINTENANCE, FLAG_MODE_AJAX, FLAG_MODE_CLI, FLAG_PRODUCTION, FLAG_READONLY, FLAG_RECOVERY, FLAG_SANDBOX, FLAG_TYPE_DELETE, FLAG_TYPE_GET, FLAG_TYPE_HEAD, FLAG_TYPE_OPTIONS, FLAG_TYPE_POST, FLAG_TYPE_PUT, FLAG_UNIT_TEST

Constants inherited from oroboros\core\interfaces\api\ExceptionCodeApi

ERROR_ADAPTER, ERROR_CLUSTER, ERROR_CONTROLLER, ERROR_CORE, ERROR_CORE_ADAPTER_FAILURE, ERROR_CORE_AUTH_FAILURE, ERROR_CORE_BOOTSTRAP_FAILURE, ERROR_CORE_CONTROLLER_FAILURE, ERROR_CORE_DATA_OBJECT_FAILURE, ERROR_CORE_ENTITY_FAILURE, ERROR_CORE_ENUM_FAILURE, ERROR_CORE_ERROR_FAILURE, ERROR_CORE_EVENT_FAILURE, ERROR_CORE_EXTENSION_FAILURE, ERROR_CORE_FLAG_FAILURE, ERROR_CORE_FUNCTION_FAILURE, ERROR_CORE_JOB_FAILURE, ERROR_CORE_LIBRARY_FAILURE, ERROR_CORE_MODEL_FAILURE, ERROR_CORE_MODULE_FAILURE, ERROR_CORE_PARSER_FAILURE, ERROR_CORE_PATTERN_FAILURE, ERROR_CORE_RECORD_FAILURE, ERROR_CORE_REQUEST_FAILURE, ERROR_CORE_RESPONSE_FAILURE, ERROR_CORE_ROUTER_FAILURE, ERROR_CORE_ROUTINE_FAILURE, ERROR_CORE_SERVICE_FAILURE, ERROR_CORE_STREAM_FAILURE, ERROR_CORE_UTILITY_FAILURE, ERROR_CORE_VIEW_FAILURE, ERROR_DATABASE, ERROR_FILESYSTEM, ERROR_INITIALIZATION, ERROR_INSTALLATION, ERROR_LIBRARY, ERROR_LOGIC, ERROR_LOGIC_BAD_PARAMETERS, ERROR_LOGIC_MISSING_PARAMETERS, ERROR_MODEL, ERROR_MODULE, ERROR_NETWORK, ERROR_NODE, ERROR_PHP, ERROR_PHP_BAD_FUNCTION_CALL, ERROR_PHP_BAD_METHOD_CALL, ERROR_PHP_BAD_PARAMETERS, ERROR_PHP_CALLSTATIC_FAILURE, ERROR_PHP_CALL_FAILURE, ERROR_PHP_CLONE_FAILURE, ERROR_PHP_DEBUG_INFO_FAILURE, ERROR_PHP_DESTRUCTOR_FAILURE, ERROR_PHP_GETTER_FAILURE, ERROR_PHP_INSTANTIATION_FAILURE, ERROR_PHP_INVOCATION_FAILURE, ERROR_PHP_IS_SET_FAILURE, ERROR_PHP_KEY_NOT_FOUND, ERROR_PHP_METHOD_FAILURE, ERROR_PHP_NOT_INITIALIZED, ERROR_PHP_SERIALIZATION_FAILURE, ERROR_PHP_SETTER_FAILURE, ERROR_PHP_SLEEP_FAILURE, ERROR_PHP_TO_ARRAY_FAILURE, ERROR_PHP_UNSERIALIZATION_FAILURE, ERROR_PHP_UN_SET_FAILURE, ERROR_PHP_WAKEUP_FAILURE, ERROR_PHP_WRONG_INSTANCE_SUPPLIED, ERROR_PHP_WRONG_SCHEMA_PROVIDED, ERROR_ROUTINE, ERROR_ROUTING, ERROR_SDK, ERROR_SECURITY, ERROR_SECURITY_LOCKED_COLUMN, ERROR_SECURITY_LOCKED_COMMAND, ERROR_SECURITY_LOCKED_ENTITY, ERROR_SECURITY_LOCKED_EVENT, ERROR_SECURITY_LOCKED_FILE, ERROR_SECURITY_LOCKED_JOB, ERROR_SECURITY_LOCKED_OBJECT, ERROR_SECURITY_LOCKED_POLICY, ERROR_SECURITY_LOCKED_RESOURCE, ERROR_SECURITY_LOCKED_ROUTE, ERROR_SECURITY_LOCKED_TABLE, ERROR_SESSION, ERROR_UNKNOWN, ERROR_VIEW, SAFE_MINIMUM_ERROR_RANGE

Constants inherited from oroboros\OroborosInterface

OROBOROS_VENDOR_NAMESPACE, OROBOROS_VERSION

Properties summary

Properties used from oroboros\core\traits\BaseTrait

$_constructed

Oroboros Core API documentation generated by ApiGen