mirror of
https://github.com/CommunitySolidServer/CommunitySolidServer.git
synced 2024-10-03 14:55:10 +00:00
70 lines
2.7 KiB
JSON
70 lines
2.7 KiB
JSON
{
|
|
"@context": "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^6.0.0/components/context.jsonld",
|
|
"@graph": [
|
|
{
|
|
"comment": "Caches the requested modes based on the incoming operation.",
|
|
"@id": "urn:solid-server:default:ModesExtractor",
|
|
"@type": "CachedHandler",
|
|
"source" : {
|
|
"comment": "Checks if an operation on a resource requires permissions on intermediate resources (such as newly created parent containers).",
|
|
"@type": "IntermediateCreateExtractor",
|
|
"resourceSet": { "@id": "urn:solid-server:default:CachedResourceSet" },
|
|
"strategy": { "@id": "urn:solid-server:default:IdentifierStrategy" },
|
|
"source": { "@id": "urn:solid-server:default:HttpModesExtractor" },
|
|
}
|
|
},
|
|
{
|
|
"comment": "Determines required modes based on HTTP methods.",
|
|
"@id": "urn:solid-server:default:HttpModesExtractor",
|
|
"@type": "WaterfallHandler",
|
|
"handlers": [
|
|
{
|
|
"comment": "Extract access modes for PATCH requests based on the request body.",
|
|
"@id": "urn:solid-server:default:PatchModesExtractor"
|
|
},
|
|
{
|
|
"comment": "Requires read permissions on parent container when deleting non-existent resource for correct status code.",
|
|
"@type": "DeleteParentExtractor",
|
|
"resourceSet": { "@id": "urn:solid-server:default:CachedResourceSet" },
|
|
"identifierStrategy": { "@id": "urn:solid-server:default:IdentifierStrategy" },
|
|
"source": {
|
|
"comment": "Extract access modes based on the HTTP method.",
|
|
"@type": "MethodModesExtractor",
|
|
"resourceSet": { "@id": "urn:solid-server:default:CachedResourceSet" }
|
|
}
|
|
},
|
|
{
|
|
"@type": "StaticThrowHandler",
|
|
"error": { "@type": "MethodNotAllowedHttpError" }
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"@id": "urn:solid-server:default:PatchModesExtractor",
|
|
"@type": "CreateModesExtractor",
|
|
"resourceSet": { "@id": "urn:solid-server:default:CachedResourceSet" },
|
|
"source": {
|
|
"@type": "MethodFilterHandler",
|
|
"methods": [ "PATCH" ],
|
|
"source": {
|
|
"@type": "WaterfallHandler",
|
|
"handlers": [
|
|
{
|
|
"@type": "N3PatchModesExtractor",
|
|
"resourceSet": { "@id": "urn:solid-server:default:CachedResourceSet" }
|
|
},
|
|
{
|
|
"@type": "SparqlUpdateModesExtractor",
|
|
"resourceSet": { "@id": "urn:solid-server:default:CachedResourceSet" }
|
|
},
|
|
{
|
|
"@type": "StaticThrowHandler",
|
|
"error": { "@type": "UnsupportedMediaTypeHttpError" }
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|