October\Rain\Halcyon\Datasource\Datasource

Datasource base class

Protected properties

protected bool $forceDeleting

forceDeleting indicates if the record is currently being force deleted

protected October\Rain\Halcyon\Processors\Processor $postProcessor

protected array $emitterSingleEventCollection

Collection of registered events to be fired once only.

protected array $emitterEventCollection

Collection of registered events.

protected array $emitterEventSorted

Sorted collection of events.

Public methods

public self bindEvent($event, $callback, $priority=0)

Create a new event binding.

Parameters
  • $event
  • $callback
  • $priority

public self bindEventOnce($event, $callback)

Create a new event binding that fires once only

Parameters
  • $event
  • $callback

public void delete($dirName, $fileName, $extension)

delete against the datasource

Parameters
  • $dirName
  • $fileName
  • $extension

public array fireEvent(string $event, array $params=array(), boolean $halt=false)

Fire an event and call the listeners.

Parameters
  • string $event - Event name
  • array $params - Event parameters
  • boolean $halt - Halt after first non-null result

public void forceDelete($dirName, $fileName, $extension)

forceDelete a record against the datasource

Parameters
  • $dirName
  • $fileName
  • $extension

public void getPostProcessor()

getPostProcessor used by the connection

public void makeCacheKey($name='')

makeCacheKey unique to this datasource

Parameters
  • $name

public self unbindEvent(string $event=NULL)

Destroys an event binding.

Parameters
  • string $event - Event to destroy

Protected methods

protected array emitterEventSortEvents(string $eventName)

Sort the listeners for a given event by priority.

Parameters
  • string $eventName