@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