LogoLogo
Frontend
  • Introduction
  • Getting started
  • About
  • Retrieving data
    • Introduction
    • Making a request
    • Property paths
    • Data providers
    • HTTP data provider
    • GraphQL data provider
    • Queries
    • GraphQL queries
    • Query Manager
    • Custom query classes
    • Bulk queries
  • Changing data
    • Introduction
    • Transforming and mapping data
    • Accessing properties
    • Transforming data
    • Available transformers
    • Mapping data
  • Advanced usage
    • Validation
    • Caching
    • Data History
    • Events
    • Testing API requests
Powered by GitBook
On this page
  • Common methods
  • getBaseUri
  • getUri
  • getRequestIdentifier
  • isSuppressErrors
  • getDefaultDecoder
  • decode
  • isCacheEnabled
  • getCache
  • addListener
  • addSubscriber
  • dispatchEvent

Was this helpful?

  1. Retrieving data

Data providers

PreviousProperty pathsNextHTTP data provider

Last updated 2 years ago

Was this helpful?

Data providers are the core means to access external data. These are classes which use custom methods to access data.

Available data providers:

  • - generic HTTP data provider

  • - data provider for REST-based APIs

  • - data provider for GraphQL APOIs

Common methods

A DataProvider interface is used which defines the following common methods for data providers.

getBaseUri

Return base URI to use for all data requests.

  • Returns a string

getUri

Return URI to use for current data request

  • Parameters

    • string|null $endpoint Optional endpoint to append to base URI

  • Returns a string

getRequestIdentifier

Return a unique identifier safe to use for caching based on the request

  • Parameters

    • $uri URI for request

    • array $context Array of contextual data (e.g. request options)

  • Returns a string

isSuppressErrors

Whether errors are suppressed

  • Returns a boolean

getDefaultDecoder

Return default decoder to decode responses.

  • Returns an object of type Strata\Data\Decode\DecoderInterface or null if no default decoder set

decode

Decode a response

  • Parameters

    • mixed $response Response to decode (normally an object or array)

    • DecoderInterface|null $decoder Optional decoder, if not set uses getDefaultDecoder()

  • Returns the decoded data (normally an array or object)

isCacheEnabled

Is the cache enabled?

  • Returns a boolean

getCache

Return the cache

  • Returns an object of type Strata\Data\Cache\DataCache

addListener

  • Parameters

    • string $eventName Event name

    • callable $listener The listener

    • int $priority The higher this value, the earlier an event listener will be triggered in the chain (defaults to 0)

addSubscriber

  • Parameters

    • EventSubscriberInterface $subscriber Event subscriber

dispatchEvent

Dispatches an event to all registered listeners

  • Parameters

    • Event $event The event to pass to the event handlers/listeners

    • string $eventName The name of the event to dispatch

  • Returns an object of type Symfony\Contracts\EventDispatcher\Event

Adds an event listener that listens on the specified event. See .

Adds an event subscriber. See .

Http
Rest
GraphQL
events
events