@hydra-cg/heracles.ts > JsonLdHypermediaProcessor
Provides a JSON-LD based implementation of the IHypermediaProcessor interface.
class:
JsonLdHypermediaProcessor
⊕ new JsonLdHypermediaProcessor(indirectTypingProvider: IIndirectTypingProvider, httpCall: HttpCallFacility, graphTransformer: IGraphTransformer): JsonLdHypermediaProcessor
Defined in JsonLd/JsonLdHypermediaProcessor.ts:61
Initializes a new instance of the JsonLdHypermediaProcessor class.
Parameters:
| Name | Type | Description |
|---|---|---|
| indirectTypingProvider | IIndirectTypingProvider | Facility providing information whether given resources are of given type. |
| httpCall | HttpCallFacility | HTTP facility used to call remote server. |
| graphTransformer | IGraphTransformer | Graph transformation facility. |
Returns: JsonLdHypermediaProcessor
<Private> graphTransformer● graphTransformer: IGraphTransformer
Defined in JsonLd/JsonLdHypermediaProcessor.ts:61
<Private> httpCall● httpCall: HttpCallFacility
Defined in JsonLd/JsonLdHypermediaProcessor.ts:60
<Private> indirectTypingProvider● indirectTypingProvider: IIndirectTypingProvider
Defined in JsonLd/JsonLdHypermediaProcessor.ts:59
<Static><Private> exactMatchCases● exactMatchCases: HeaderMatcher[][] = [ [(headers: Headers) => headers.get(“Content-Type”).indexOf(JsonLdHypermediaProcessor.jsonLd) !== -1], [ (headers: Headers) => headers.get(“Content-Type”).indexOf(JsonLdHypermediaProcessor.json) !== -1, (headers: Headers) => { const links = parseLinkHeader(headers.get(“Link”)); return !!links[jsonLdContext] && links[jsonLdContext].type === JsonLdHypermediaProcessor.jsonLd; } ] ]
Defined in JsonLd/JsonLdHypermediaProcessor.ts:48
<Static><Private> json● json: string = “application/json”
Defined in JsonLd/JsonLdHypermediaProcessor.ts:44
<Static><Private> jsonLd● jsonLd: string = “application/ld+json”
Defined in JsonLd/JsonLdHypermediaProcessor.ts:45
<Static><Private> mediaTypes● mediaTypes: string[] = [JsonLdHypermediaProcessor.jsonLd, JsonLdHypermediaProcessor.json]
Defined in JsonLd/JsonLdHypermediaProcessor.ts:46
get supportedMediaTypes(): Iterable<string>
Defined in JsonLd/JsonLdHypermediaProcessor.ts:81
Gets supported media types.
inheritdoc:
Returns: Iterable<string>
<Private> ensureJsonLd▸ ensureJsonLd(response: Response): Promise<any>
Defined in JsonLd/JsonLdHypermediaProcessor.ts:152
Parameters:
| Name | Type |
|---|---|
| response | Response |
Returns: Promise<any>
<Private> gatherPropertyValues▸ gatherPropertyValues(processingState: ProcessingState, predicate: string): Promise<any[]>
Defined in JsonLd/JsonLdHypermediaProcessor.ts:213
Parameters:
| Name | Type |
|---|---|
| processingState | ProcessingState |
| predicate | string |
Returns: Promise<any[]>
<Private> isValidPredicate▸ isValidPredicate(processingState: ProcessingState, predicate: string): Promise<boolean>
Defined in JsonLd/JsonLdHypermediaProcessor.ts:183
Parameters:
| Name | Type |
|---|---|
| processingState | ProcessingState |
| predicate | string |
Returns: Promise<boolean>
▸ process(response: Response, client: IHydraClient, options?: IHypermediaProcessingOptions): Promise<IWebResource>
Implementation of IHypermediaProcessor.process
Defined in JsonLd/JsonLdHypermediaProcessor.ts:105
Parses a given raw response.
Parameters:
| Name | Type |
|---|---|
| response | Response |
| client | IHydraClient |
Optional options |
IHypermediaProcessingOptions |
Returns: Promise<IWebResource>
<Private> processArray▸ processArray(processingState: ProcessingState): Promise<ProcessingState>
Defined in JsonLd/JsonLdHypermediaProcessor.ts:173
Parameters:
| Name | Type |
|---|---|
| processingState | ProcessingState |
Returns: Promise<ProcessingState>
<Private> processHypermedia▸ processHypermedia(processingState: ProcessingState): Promise<ProcessingState>
Defined in JsonLd/JsonLdHypermediaProcessor.ts:164
Parameters:
| Name | Type |
|---|---|
| processingState | ProcessingState |
Returns: Promise<ProcessingState>
<Private> processResource▸ processResource(processingState: ProcessingState, isOwnedHypermedia?: boolean): Promise<object>
Defined in JsonLd/JsonLdHypermediaProcessor.ts:198
Parameters:
| Name | Type | Default value |
|---|---|---|
| processingState | ProcessingState | - |
Default value isOwnedHypermedia |
boolean |
false |
Returns: Promise<object>
<Private> setupProperty▸ setupProperty(resource: object, processingState: ProcessingState, predicate: string): Promise<void>
Defined in JsonLd/JsonLdHypermediaProcessor.ts:241
Parameters:
| Name | Type |
|---|---|
| resource | object |
| processingState | ProcessingState |
| predicate | string |
Returns: Promise<void>
▸ supports(response: Response): Level
Implementation of IHypermediaProcessor.supports
Defined in JsonLd/JsonLdHypermediaProcessor.ts:86
Determines level of support of a this IHypermediaProcessor for given response.
Parameters:
| Name | Type |
|---|---|
| response | Response |
Returns: Level
<Static><Private> tryRemoveReferenceFrom▸ tryRemoveReferenceFrom(graph: object[], index: number): boolean
Defined in JsonLd/JsonLdHypermediaProcessor.ts:142
Parameters:
| Name | Type |
|---|---|
| graph | object[] |
| index | number |
Returns: boolean