TypedRest for TypeScript - v0.5.0
    Preparing search index...

    Class GenericStreamingCollectionEndpoint<TEntity, TElementEndpoint>

    Endpoint for a collection of TEntitys observable as an append-only stream using long-polling.
    Use StreamingCollectionEndpoint instead if you wish to use the default ElementEndpoint type.

    Type Parameters

    Hierarchy (View Summary)

    Index
    errorHandler: ErrorHandler

    Handles errors in responses.

    httpClient: HttpClient

    The HTTP client used to communicate with the remote resource.

    linkExtractor: LinkExtractor

    Extracts links from responses.

    pollingInterval: number = 3000

    The interval in milliseconds to wait between polling requests. Automatically updated whenever the server sends a http!HttpHeader.RetryAfter header.

    rangeUnit: string = "elements"

    The unit used when requesting ranges of elements. Sent in the http!HttpHeader.Range header.

    responseCache?: ResponseCache

    A cached copy of the last response.

    serializer: Serializer

    Controls the serialization of entities sent to and received from the server.

    uri: URL

    The HTTP URI of the remote resource.

    • get createAllAllowed(): boolean | undefined

      Shows whether the server has indicated that createAll is currently allowed. Uses cached data from last response.

      Returns boolean | undefined

      true if the method is allowed, false if the method is not allowed, undefined if no request has been sent yet or the server did not specify allowed methods.

    • get createAllowed(): boolean | undefined

      Shows whether the server has indicated that create is currently allowed. Uses cached data from last response.

      Returns boolean | undefined

      true if the method is allowed, false if the method is not allowed, undefined if no request has been sent yet or the server did not specify allowed methods.

    • get readAllAllowed(): boolean | undefined

      Shows whether the server has indicated that readAll is currently allowed. Uses cached data from last response.

      Returns boolean | undefined

      true if the method is allowed, false if the method is not allowed, undefined if no request has been sent yet or the server did not specify allowed methods.

    • get readRangeAllowed(): boolean | undefined

      Shows whether the server has indicated that readRange is currently allowed. Uses cached data from last response.

      Returns boolean | undefined

      true if the method is allowed, false if the method is not allowed, undefined if no request has been sent yet or the server did not specify accepted range units.

    • get setAllAllowed(): boolean | undefined

      Shows whether the server has indicated that setAll is currently allowed. Uses cached data from last response.

      Returns boolean | undefined

      true if the method is allowed, false if the method is not allowed, undefined if no request has been sent yet or the server did not specify allowed methods.

    • Resolves all links with a specific relation type. Uses cached data from last response.

      Parameters

      • rel: string

        The relation type of the links to look for.

      Returns { title?: string; uri: URL }[]

    • Shows whether the server has indicated that a specific HTTP method is currently allowed. Uses cached data from last response.

      Parameters

      • method: HttpMethod

        The HTTP methods (e.g. GET, POST, ...) to check.

      Returns boolean | undefined

      true if the method is allowed, false if the method is not allowed, undefined if no request has been sent yet or the server did not specify allowed methods.

    • Resolves a relative URI using this endpoint's URI as the base.

      Parameters

      • relativeUri: string

        The relative URI to resolve. Prepend ./ to imply a trailing slash in the base URI even if it is missing there.

      Returns URL

    • Resolves a link template with a specific relation type. Uses cached data from last response.

      Parameters

      • rel: string

        The relation type of the link template to look for.

      • variables: { [key: string]: any }

        Variables for resolving the template.

      Returns URL

      errors!NotFoundError: No link template with the specified rel could be found.

    • Sends an HTTP request to this endpoint's URI. Handles various cross-cutting concerns regarding a response message such as discovering links and handling errors.

      Parameters

      • method: HttpMethod

        The HTTP method to use.

      • Optionalsignal: AbortSignal

        Used to cancel the request.

      • Optionalheaders: HeadersInit

        The HTTP headers to set.

      • Optionalbody: BodyInit

        The body to send.

      Returns Promise<Response>

    • Registers one or more default links for a specific relation type. These links are used when no links with this relation type are provided by the server. This should only be called during initial setup of the endpoint.

      Parameters

      • rel: string

        The relation type of the link to add.

      • Optionalhref: string

        The href of the link relative to this endpoint's URI. Leave unspecified to remove any previous entries for the relation type.

      Returns void

    • Registers a default link template for a specific relation type. This template is used when no template with this relation type is provided by the server. This should only be called during initial setup of the endpoint.

      Parameters

      • rel: string

        The relation type of the link to add.

      • Optionalhref: string

        The templates href relative to this endpoint's URI. Leave unspecified to remove any previous entries for the relation type.

      Returns void