ResultCache

flitter-orm/src/model/ResultCache~ ResultCache

Cache for results of model lookups. Stores result sets by hash of the model name, and some lookup identifier.


Constructor

new ResultCache()

Extends

Members

(private) _di_allow_defer :boolean

If true, the injector will defer the class if the class requests any services that the container is missing. These services are filled in later and added to the prototype and any instances. True by default.

Type:
  • boolean

(private) _di_deferred_instances :Array.<module:flitter-di/src/Injectable~Injectable>

Collection of instances of this class that need to have the deferred service instances injected into them when the deferred services are finally provided.

(private) _di_deferred_services :Array.<string>

List of services that were deferred and not provided at the time of injection.

Type:
  • Array.<string>

(private) results :object

The cached result sets as model hash -> identifier -> result set.

Type:
  • object

Methods

get(Model, identifier) → {*}

Get the result entry for the model/identifier combo.

Parameters:
Name Type Description
Model module:flitter-orm/src/model/Model~Model

static CLASS reference to the model

identifier string

unique identifier for the result

Returns:
  • the cached result
Type
*

has(Model, identifier) → {boolean}

Returns true if the cache has an entry for the model/identifier combo.

Parameters:
Name Type Description
Model module:flitter-orm/src/model/Model~Model

static CLASS reference to the model

identifier string

unique identifier for the result

Returns:
Type
boolean

store(Model, identifier, result)

Store a particular result set associated with the specified model and identifier.

Parameters:
Name Type Description
Model module:flitter-orm/src/model/Model~Model

static CLASS reference to the model

identifier string

unique identifier for the result

result *

the result to store