CommunitySolidServer/7.x/docs/classes/ComposedAuxiliaryStrategy.html

48 lines
34 KiB
HTML

<!DOCTYPE html><html class="default" lang="en"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>ComposedAuxiliaryStrategy | Community Solid Server - v7.1.2</title><meta name="description" content="Documentation for Community Solid Server"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><link rel="stylesheet" href="../assets/custom.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">Community Solid Server - v7.1.2</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">Community Solid Server</a></li><li><a href="ComposedAuxiliaryStrategy.html">ComposedAuxiliaryStrategy</a></li></ul><h1>Class ComposedAuxiliaryStrategy</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>An <a href="../interfaces/AuxiliaryStrategy.html" class="tsd-kind-interface">AuxiliaryStrategy</a> that provides its functionality through the combination of
an <a href="../interfaces/AuxiliaryIdentifierStrategy.html" class="tsd-kind-interface">AuxiliaryIdentifierStrategy</a>, <a href="MetadataGenerator.html" class="tsd-kind-class">MetadataGenerator</a> and <a href="Validator.html" class="tsd-kind-class">Validator</a>.</p>
</div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel"><h4>Implements</h4><ul class="tsd-hierarchy"><li><a href="../interfaces/AuxiliaryStrategy.html" class="tsd-signature-type tsd-kind-interface">AuxiliaryStrategy</a></li></ul></section><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L13">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:13</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="ComposedAuxiliaryStrategy.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Methods</h3><div class="tsd-index-list"><a href="ComposedAuxiliaryStrategy.html#addMetadata" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Metadata</span></a>
<a href="ComposedAuxiliaryStrategy.html#getAuxiliaryIdentifier" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Auxiliary<wbr/>Identifier</span></a>
<a href="ComposedAuxiliaryStrategy.html#getAuxiliaryIdentifiers" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Auxiliary<wbr/>Identifiers</span></a>
<a href="ComposedAuxiliaryStrategy.html#getSubjectIdentifier" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Subject<wbr/>Identifier</span></a>
<a href="ComposedAuxiliaryStrategy.html#isAuxiliaryIdentifier" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Auxiliary<wbr/>Identifier</span></a>
<a href="ComposedAuxiliaryStrategy.html#isRequiredInRoot" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Required<wbr/>In<wbr/>Root</span></a>
<a href="ComposedAuxiliaryStrategy.html#usesOwnAuthorization" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>uses<wbr/>Own<wbr/>Authorization</span></a>
<a href="ComposedAuxiliaryStrategy.html#validate" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>validate</span></a>
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Constructors"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Constructors</h2></summary><section><section class="tsd-panel tsd-member"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="constructor.new_ComposedAuxiliaryStrategy" class="tsd-anchor"></a><span class="tsd-kind-constructor-signature">new <wbr/>Composed<wbr/>Auxiliary<wbr/>Strategy</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">identifierStrategy</span>, <span class="tsd-kind-parameter">metadataGenerator</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">validator</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">ownAuthorization</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">requiredInRoot</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="ComposedAuxiliaryStrategy.html" class="tsd-signature-type tsd-kind-class">ComposedAuxiliaryStrategy</a><a href="#constructor.new_ComposedAuxiliaryStrategy" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">identifierStrategy</span>: <a href="../interfaces/AuxiliaryIdentifierStrategy.html" class="tsd-signature-type tsd-kind-interface">AuxiliaryIdentifierStrategy</a></span></li><li><span><code class="tsd-tag">Optional</code><span class="tsd-kind-parameter">metadataGenerator</span>: <a href="MetadataGenerator.html" class="tsd-signature-type tsd-kind-class">MetadataGenerator</a></span></li><li><span><code class="tsd-tag">Optional</code><span class="tsd-kind-parameter">validator</span>: <a href="Validator.html" class="tsd-signature-type tsd-kind-class">Validator</a></span></li><li><span><span class="tsd-kind-parameter">ownAuthorization</span>: <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> = false</span></span></li><li><span><span class="tsd-kind-parameter">requiredInRoot</span>: <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> = false</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <a href="ComposedAuxiliaryStrategy.html" class="tsd-signature-type tsd-kind-class">ComposedAuxiliaryStrategy</a></h4><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L20">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:20</a></li></ul></aside></li></ul></section></section></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Methods"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Methods</h2></summary><section><section class="tsd-panel tsd-member"><a id="addMetadata" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>add<wbr/>Metadata</span><a href="#addMetadata" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="addMetadata.addMetadata-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">add<wbr/>Metadata</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">metadata</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#addMetadata.addMetadata-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Adds metadata related to this auxiliary resource,
in case this is required for this type of auxiliary resource.
The metadata that is added depends on the given identifier being an auxiliary or subject resource:
the metadata will be used to link to the other one, and potentially add extra typing info.</p>
<p>Used for:
Solid, §4.3.1: &quot;For any defined auxiliary resource available for a given Solid resource, all representations of
that resource MUST include an HTTP Link header pointing to the location of each auxiliary resource.&quot;
<a href="https://solid.github.io/specification/protocol#auxiliary-resources-server">https://solid.github.io/specification/protocol#auxiliary-resources-server</a></p>
<p>The above is an example of how that metadata would only be added in case the input is the subject identifier.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">metadata</span>: <a href="RepresentationMetadata.html" class="tsd-signature-type tsd-kind-class">RepresentationMetadata</a></span><div class="tsd-comment tsd-typography"><p>Metadata to update.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/AuxiliaryStrategy.html">AuxiliaryStrategy</a>.<a href="../interfaces/AuxiliaryStrategy.html#addMetadata">addMetadata</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L58">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:58</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="getAuxiliaryIdentifier" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>get<wbr/>Auxiliary<wbr/>Identifier</span><a href="#getAuxiliaryIdentifier" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="getAuxiliaryIdentifier.getAuxiliaryIdentifier-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Auxiliary<wbr/>Identifier</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">identifier</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a><a href="#getAuxiliaryIdentifier.getAuxiliaryIdentifier-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns the identifier of the auxiliary resource corresponding to the given resource.
This does not guarantee that this auxiliary resource exists.</p>
<p>Should error if there are multiple results: see <a href="../interfaces/AuxiliaryIdentifierStrategy.html#getAuxiliaryIdentifiers" class="tsd-kind-property">getAuxiliaryIdentifiers</a>.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">identifier</span>: <a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a></span><div class="tsd-comment tsd-typography"><p>The ResourceIdentifier of which we need the corresponding auxiliary resource.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a></h4><p>The ResourceIdentifier of the corresponding auxiliary resource.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/AuxiliaryStrategy.html">AuxiliaryStrategy</a>.<a href="../interfaces/AuxiliaryStrategy.html#getAuxiliaryIdentifier">getAuxiliaryIdentifier</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L34">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:34</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="getAuxiliaryIdentifiers" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>get<wbr/>Auxiliary<wbr/>Identifiers</span><a href="#getAuxiliaryIdentifiers" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="getAuxiliaryIdentifiers.getAuxiliaryIdentifiers-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Auxiliary<wbr/>Identifiers</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">identifier</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a><span class="tsd-signature-symbol">[]</span><a href="#getAuxiliaryIdentifiers.getAuxiliaryIdentifiers-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns all the identifiers of corresponding auxiliary resources.
This can be used when there are potentially multiple results.
In the case of a single result this should be an array containing the result of <a href="../interfaces/AuxiliaryIdentifierStrategy.html#getAuxiliaryIdentifier" class="tsd-kind-property">getAuxiliaryIdentifier</a>.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">identifier</span>: <a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a></span><div class="tsd-comment tsd-typography"><p>The ResourceIdentifier of which we need the corresponding auxiliary resources.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a><span class="tsd-signature-symbol">[]</span></h4><p>The ResourceIdentifiers of the corresponding auxiliary resources.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/AuxiliaryStrategy.html">AuxiliaryStrategy</a>.<a href="../interfaces/AuxiliaryStrategy.html#getAuxiliaryIdentifiers">getAuxiliaryIdentifiers</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L38">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:38</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="getSubjectIdentifier" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>get<wbr/>Subject<wbr/>Identifier</span><a href="#getSubjectIdentifier" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="getSubjectIdentifier.getSubjectIdentifier-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Subject<wbr/>Identifier</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">identifier</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a><a href="#getSubjectIdentifier.getSubjectIdentifier-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns the identifier of the resource which this auxiliary resource is referring to.
This does not guarantee that this resource exists.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">identifier</span>: <a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a></span><div class="tsd-comment tsd-typography"><p>Identifier of the auxiliary resource.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a></h4><p>The ResourceIdentifier of the subject resource.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/AuxiliaryStrategy.html">AuxiliaryStrategy</a>.<a href="../interfaces/AuxiliaryStrategy.html#getSubjectIdentifier">getSubjectIdentifier</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L46">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:46</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="isAuxiliaryIdentifier" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>is<wbr/>Auxiliary<wbr/>Identifier</span><a href="#isAuxiliaryIdentifier" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="isAuxiliaryIdentifier.isAuxiliaryIdentifier-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">is<wbr/>Auxiliary<wbr/>Identifier</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">identifier</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#isAuxiliaryIdentifier.isAuxiliaryIdentifier-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Checks if the input identifier corresponds to an auxiliary resource.
This does not check if that auxiliary resource exists,
only if the identifier indicates that there could be an auxiliary resource there.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">identifier</span>: <a href="../interfaces/ResourceIdentifier.html" class="tsd-signature-type tsd-kind-interface">ResourceIdentifier</a></span><div class="tsd-comment tsd-typography"><p>Identifier to check.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>true if the input identifier points to an auxiliary resource.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/AuxiliaryStrategy.html">AuxiliaryStrategy</a>.<a href="../interfaces/AuxiliaryStrategy.html#isAuxiliaryIdentifier">isAuxiliaryIdentifier</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L42">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:42</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="isRequiredInRoot" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>is<wbr/>Required<wbr/>In<wbr/>Root</span><a href="#isRequiredInRoot" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="isRequiredInRoot.isRequiredInRoot-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">is<wbr/>Required<wbr/>In<wbr/>Root</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#isRequiredInRoot.isRequiredInRoot-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Whether the root storage container requires this auxiliary resource to be present.
If yes, this means they can't be deleted individually from such a container.</p>
</div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/AuxiliaryStrategy.html">AuxiliaryStrategy</a>.<a href="../interfaces/AuxiliaryStrategy.html#isRequiredInRoot">isRequiredInRoot</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L54">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:54</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="usesOwnAuthorization" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>uses<wbr/>Own<wbr/>Authorization</span><a href="#usesOwnAuthorization" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="usesOwnAuthorization.usesOwnAuthorization-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">uses<wbr/>Own<wbr/>Authorization</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#usesOwnAuthorization.usesOwnAuthorization-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Whether this auxiliary resources uses its own authorization instead of the subject resource authorization.</p>
</div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/AuxiliaryStrategy.html">AuxiliaryStrategy</a>.<a href="../interfaces/AuxiliaryStrategy.html#usesOwnAuthorization">usesOwnAuthorization</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L50">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:50</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="validate" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>validate</span><a href="#validate" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="validate.validate-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">validate</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">representation</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#validate.validate-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Validates if the representation contains valid data for an auxiliary resource.
Should throw an error in case the data is invalid.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">representation</span>: <a href="../interfaces/Representation.html" class="tsd-signature-type tsd-kind-interface">Representation</a></span><div class="tsd-comment tsd-typography"><p>Representation of the auxiliary resource.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/AuxiliaryStrategy.html">AuxiliaryStrategy</a>.<a href="../interfaces/AuxiliaryStrategy.html#validate">validate</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/221dcc41cd4a2f10482d77ac1fe18716695db16c/src/http/auxiliary/ComposedAuxiliaryStrategy.ts#L64">src/http/auxiliary/ComposedAuxiliaryStrategy.ts:64</a></li></ul></aside></li></ul></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="tsd-otp-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Constructors</summary><div><a href="#constructor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="tsd-otp-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Methods</summary><div><a href="#addMetadata" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Metadata</span></a><a href="#getAuxiliaryIdentifier" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Auxiliary<wbr/>Identifier</span></a><a href="#getAuxiliaryIdentifiers" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Auxiliary<wbr/>Identifiers</span></a><a href="#getSubjectIdentifier" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Subject<wbr/>Identifier</span></a><a href="#isAuxiliaryIdentifier" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Auxiliary<wbr/>Identifier</span></a><a href="#isRequiredInRoot" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Required<wbr/>In<wbr/>Root</span></a><a href="#usesOwnAuthorization" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>uses<wbr/>Own<wbr/>Authorization</span></a><a href="#validate" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>validate</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>Community Solid Server - v7.1.2</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer></footer><div class="overlay"></div></body></html>