summaryrefslogtreecommitdiff
path: root/doc/disfluid.texi
diff options
context:
space:
mode:
Diffstat (limited to 'doc/disfluid.texi')
-rw-r--r--doc/disfluid.texi36
1 files changed, 36 insertions, 0 deletions
diff --git a/doc/disfluid.texi b/doc/disfluid.texi
index d85afd8..7e47022 100644
--- a/doc/disfluid.texi
+++ b/doc/disfluid.texi
@@ -1551,6 +1551,7 @@ the user.
* Reverse proxy::
* Client pages::
* Identity provider::
+* Resource server::
@end menu
@node Error signalling
@@ -1845,6 +1846,41 @@ Return the endpoint where all requests that aren’t handled by any
element of the @var{identity-provider} go.
@end deffn
+@node Resource server
+@section Resource server
+The resource server is a read-write server with fine-grained
+authorizations. You can create one in the
+@emph{(webid-oidc server endpoint resource-server)} module.
+
+@deftp {Class} <resource-server> (<endpoint>) @var{server-uri} @var{owner} @var{data-home}
+Create a resource server endpoint. To manage RDF data, and in
+particular to identify owned resources, it is necessary that the
+server knows its public @var{server-uri}. @var{owner} is the webid of
+someone that has total control.
+
+If you want to manage multiple resource servers, you must make sure
+that each one of them has a separate @var{data-home} directory.
+
+You can construct one with @code{#:@var{server-uri}} (an URI),
+@code{#:@var{owner}} (an URI) and @code{#:@var{data-home}} (a
+directory file name or a thunk returning a file name; it may exist or
+not, defaults to @code{$XDG_CACHE_HOME}).
+@end deftp
+
+@deffn {Generic} server-uri @var{resource-server}
+Return the public URI of the @var{resource-server}.
+@end deffn
+
+@deffn {Generic} owner @var{resource-server}
+Return the webid of a user that has full control over
+@var{resource-server}.
+@end deffn
+
+@deffn {Generic} data-home @var{resource-server}
+Return the directory where @var{resource-server} stores persistent
+data.
+@end deffn
+
@node Running an Identity Provider
@chapter Running an Identity Provider