pipeSafely to pipe streams in such a way that
-
+
@@ -1789,7 +1789,7 @@ Similarly, we have a pipeSafely to pipe streams in such a way that
-
+
@@ -1800,7 +1800,7 @@ Similarly, we have a pipeSafely to pipe streams in such a way that
-
+
@@ -1811,7 +1811,7 @@ Similarly, we have a pipeSafely to pipe streams in such a way that
-
+
AuthorizingHttpHandle
-
+
@@ -1812,7 +1812,7 @@ one of which has no identifier but is an instance of AuthorizingHttpHandle
-
+
@@ -1823,7 +1823,7 @@ one of which has no identifier but is an instance of AuthorizingHttpHandle
-
+
@@ -1834,7 +1834,7 @@ one of which has no identifier but is an instance of AuthorizingHttpHandle
-
+
Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-The path to verify.
-Extracts preferences from the Accept-* headers from an incoming HttpRequest. -Supports Accept, Accept-Charset, Accept-Encoding, Accept-Language and Accept-DateTime.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractPerforms an authorization check against the given acl resource.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Initializes an account with email/password login and a pod with the provided name.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Creates the prompt necessary to ensure a user is logged in with their account when doing an OIDC interaction. -This is done by checking the presence of the account-related cookie.
-Adds a Check to the login policy that verifies if the stored accountId, which corresponds to the chosen WebID, -belongs to the currently logged in account.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles all the required ACP headers as defined at -https://solid.github.io/authorization-panel/acp-specification/#conforming-acp-server
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Finds the permissions of a resource as defined in the corresponding ACRs. -Implementation based on https://solid.github.io/authorization-panel/acp-specification/.
-Caches data so no duplicate calls are made to the ResourceStore for a single request.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A NotificationGenerator that creates a Notification by using the provided activity as type. -Requests metadata of the topic from the ResourceStore to fill in the details.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A NotificationGenerator specifically for Add/Remove notifications.
-Creates the notification so the target is set to input topic,
-and the object value is extracted from the provided metadata.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Checks if the given WebID has been given access.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Checks access based on the agent class.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Checks if the given WebID belongs to a group that has access. -Implements the behaviour of groups from the WAC specification.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-PermissionReader which sets all permissions to true or false -independently of the identifier and requested permissions.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates Allow, Accept-Patch, Accept-Post, and Accept-Put headers. -The resulting values depend on the choses input methods and types. -The input metadata also gets used to remove methods from that list -if they are not valid in the given situation.
-Optionalpatch?: string[]Optionalpost?: string[]Optionalput?: string[]Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Entry point for the entire Solid server.
-A class that can be used to instantiate and start a server based on a Component.js configuration.
-Returns an App object, created with the given config, that can start and stop the Solid server.
-All values necessary to configure the server.
-Starts the server with a given config.
-All values necessary to configure the server.
-Starts the server as a command-line application. -Will exit the process on failure.
-Made non-async to lower the risk of unhandled promise rejections. -This is only relevant when this is used to start as a Node.js application on its own, -if you use this as part of your code you probably want to use the async version.
-Input parameters.
-Optionalargv?: CliArgvCommand line arguments.
-Optionalstderr?: WriteStreamStream that should be used to output errors before the logger is enabled.
-A utility handler that concatenates the results of all its handlers into a single result.
-OptionalrequireAll: booleanOptionalignoreErrors: booleanProtectedallChecks if all handlers can handle the input. -If not, throw an error based on the errors of the failed handlers.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedcombineCombines the results of the handlers into a single output.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A ShorthandExtractor that converts a path value to an absolute asset path
-by making use of resolveAssetPath.
-Returns the default path in case it is defined and no path was found in the map.
OptionaldefaultPath: stringChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractSimple interface for classes that can potentially handle a specific kind of data asynchronously.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AtomicDataAccessor that uses the file system to store documents as files and containers as folders. -Data will first be written to a temporary location and only if no errors occur -will the data be written to the desired location.
-Only binary data can be directly stored as files so will error on non-binary data.
-Removes the corresponding file/folder (and metadata file).
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Will return data stream directly to the file corresponding to the resource. -Will throw NotFoundHttpError if the input is a container.
-Will return corresponding metadata by reading the metadata file (if it exists) -and adding file system specific metadata elements.
-ProtectedgetProtectedverifyVerifies if there already is a file corresponding to the given resource. -If yes, that file is removed if it does not match the path given in the input ResourceLink. -This can happen if the content-type differs from the one that was stored.
-ResourceLink corresponding to the new resource data.
-Creates corresponding folder if necessary and writes metadata to metadata file if necessary.
-ProtectedwriteWrites the given data as a file (and potential metadata as additional file). -Data will first be written to a temporary file and if no errors occur only then the -file will be moved to desired destination. -If the stream errors it is made sure the temporary file will be deleted. -The metadata file will only be written if the data was written successfully.
-Writes metadata for a resource. -It can safely be assumed that the subject resource already exists.
-Identifier of the subject resource.
-Metadata to store.
-ProtectedwriteWrites the metadata of the resource to a meta file.
-Path related metadata of the resource.
-Metadata to write.
-True if data was written to a file.
-Determines the permission for authorization resources (such as ACL or ACR). -In contrast to the regular resource mechanism, read/write access to authorization resources -is obtained by setting Control permissions on the corresponding subject resource -rather than directly setting permissions for the authorization resource itself. -Hence, this class transforms Control permissions on the subject resource -to Read/Write permissions on the authorization resource.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedinterpretUpdates the permissions for an authorization resource -by interpreting the Control access mode as allowing full access.
-Parses specific authorization schemes and stores their value as metadata.
-The keys of the input authMap should be the schemes,
-and the values the corresponding predicate that should be used to store the value in the metadata.
-The scheme will be sliced off the value, after which it is used as the object in the metadata triple.
This should be used for custom authorization schemes, -for things like OIDC tokens a CredentialsExtractor should be used.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An InteractionRouteHandler specifically for an AccountIdRoute. -If there is no account ID, implying the user is not logged in, -an UnauthorizedHttpError will be thrown. -If there is an account ID, but it does not match the one in target resource, -a ForbiddenHttpError will be thrown.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractVerifies whether the credentials provide access with the given permissions on the resource. -An Error with the necessary explanation will be thrown if permissions are not granted.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles all the necessary steps for an authorization. -Errors if authorization fails, otherwise passes the parameter to the operationHandler handler. -The following steps are executed:
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A MetadataWriter that takes a specific auxiliaryStrategy and relation type as input and -creates a Link header with the strategy identifier and the relation type as "rel" value.
-The strategy used to check if an identifier is any kind of auxiliary identifier.
-The strategy used to create a specific kind of auxiliary identifier.
-The value used to create the "rel" value of the Link header.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Determines the permissions of auxiliary resources by finding those of the corresponding subject resources.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An error thrown when incoming data is not supported. -Probably because an AsyncHandler returns false on the canHandle call.
-Default message is 'The given input is not supported by the server configuration.'.
-Optionalmessage: stringOptional, more specific, message.
-Optionaloptions: HttpErrorOptionsOptional error options.
-Optional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Encodes the input key with base64 encoding, -to make sure there are no invalid or special path characters.
-Sets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-ProtectedtoProtectedtoImplementation of an AccountIdRoute that adds the identifier relative to a base InteractionRoute.
-Returns the path that is the result of having the specified values for the dynamic parameters.
-Will throw an error in case the input parameters object is missing one of the expected keys.
Optionalparameters: Record<"accountId", string>Values for the dynamic parameters.
-Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-The path to verify.
-A AccountStore that uses an AccountLoginStorage to keep track of the accounts. -Needs to be initialized before it can be used.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Creates a new and empty account. -Since this account will not yet have a login method, -implementations should restrict what is possible with this account, -and should potentially have something in place to clean these accounts up if they are unused.
-Finds the setting of the account with the given identifier.
-The account identifier.
-The setting to find the value of.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Updates the settings for the account with the given identifier to the new values.
-The account identifier.
-The setting to update.
-The new value for the setting.
-AbstractA NotificationChannelType that handles the base case of parsing and serializing a notification channel.
-Note that the extractModes call always requires Read permissions on the target resource.
Uses SHACL to validate the incoming data in initChannel.
-Classes extending this can pass extra SHACL properties in the constructor to extend the validation check.
The completeChannel implementation is an empty function.
ProtectedconstructorThe URI of the notification channel type. -This will be added to the SHACL shape to validate incoming subscription data.
-The route corresponding to the URL of the subscription service of this channel type. -Channel identifiers will be generated by appending a value to this URL.
-The features that should be enabled for this channel type.
-Values are expected to be full URIs, but the notify: prefix can also be used.
Any additional properties that need to be added to the default SHACL shape.
-Protected ReadonlyfeaturesProtected ReadonlypathProtected ReadonlyshaclProtected OptionalshaclProtected ReadonlytypeThis function will be called after the serialized channel is sent back as a response, -allowing for any final actions that need to happen.
-The notification channel that is completed.
-Determines which modes are required to allow the given notification channel.
-The notification channel to verify.
-The required modes.
-Returns the SubscriptionService that describes how to subscribe to this channel type.
-ProtectedgetInitiates the channel by first calling validateSubscription followed by quadsToChannel. -Subclasses can override either function safely to impact the result of the function.
-ProtectedquadsConverts a set of quads to a NotificationChannel. -Assumes the data is valid, so this should be called after validateSubscription.
-The generated identifier will be a URL made by combining the base URL of the channel type with a unique identifier.
-The values of the default features will be added to the resulting channel, -subclasses with additional features that need to be added are responsible for parsing those quads.
-Data to convert.
-The identifier of the notification channel description in the dataset.
-The generated NotificationChannel.
-Converts the given channel to a JSON-LD description.
-All fields found in the channel, except lastEmit, will be part of the result subject,
-so subclasses should remove any fields that should not be exposed.
ProtectedvalidateValidates whether the given data conforms to the stored SHACL shape. -Will throw an UnprocessableEntityHttpError if validation fails. -Along with the SHACL check, this also makes sure there is only one matching entry in the dataset.
-The data to validate.
-The focus node that corresponds to the subject of the found notification channel description.
-Implementation of an ClientCredentialsIdRoute -that adds the identifier relative to a base AccountIdRoute.
-Returns the path that is the result of having the specified values for the dynamic parameters.
-Will throw an error in case the input parameters object is missing one of the expected keys.
Optionalparameters: Record<"accountId" | "clientCredentialsId", string>Values for the dynamic parameters.
-Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-The path to verify.
-A ClientCredentialsStore that uses a AccountLoginStorage for storing the tokens. -Needs to be initialized before it can be used.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Creates new token.
-Identifier to use for the new token.
-WebID to identify as when using this token.
-Find all tokens created by the given account.
-ID of the account.
-Find the ClientCredentials with the given label.
-Label of the token.
-Find the ClientCredentials with the given ID.
-ID of the token.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Can be used to instantiate objects using Components.js. -Default main module path is the root folder of the project. -For every generate call a new manager will be made, -but moduleState will be stored in between calls.
-Calls Components.js to instantiate a new object.
-Location of the config to instantiate.
-Iri of the object in the config that will be the result.
-Variables to send to Components.js
-The resulting object, corresponding to the given component IRI.
-A CookieStore that uses an ExpiringStorage to keep track of the stored cookies. -Cookies have a specified time to live in seconds, default is 14 days, -after which they will be removed.
-Sends e-mails using nodemailer.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Base class for FileIdentifierMapper implementations.
-Protected ReadonlybaseProtected ReadonlyloggerProtected ReadonlyrootProtected ReadonlyunknownProtectedgetProtectedgetProtectedgetProtectedgetDetermines the content type from the document identifier.
-The input identifier.
-OptionalcontentType: stringThe content-type provided with the request.
-The content type of the document.
-ProtectedgetProtectedgetStrips the baseRequestURI from the identifier.
-Incoming identifier.
-A string representing the relative path.
-ProtectedisMaps the given file path to a URL and determines its content type.
-The input file path.
-If the path corresponds to a file.
-A ResourceLink with all the necessary metadata.
-ProtectedmapMaps the given container identifier to a file path, -possibly making alterations to the direct translation.
-The input identifier.
-The direct translation of the identifier onto the file path.
-A ResourceLink with all the necessary metadata.
-ProtectedmapMaps the given document identifier to a file path, -possibly making alterations to the direct translation -(for instance, based on its content type)). -Determines the content type if none was provided.
-The input identifier.
-The direct translation of the identifier onto the file path.
-OptionalcontentType: stringThe content-type provided with the request.
-A ResourceLink with all the necessary metadata.
-Maps the given resource identifier / URL to a file path. -Determines the content type if none was provided. -For containers the content-type input is ignored.
-The input identifier.
-If we need the data or metadata file path.
-OptionalcontentType: stringThe content-type provided with the request.
-A ResourceLink with all the necessary metadata.
-ProtectedvalidateCheck whether the given relative path is valid.
-A relative path, as generated by getRelativePath.
-A resource identifier.
-A ForgotPasswordStore using an ExpiringStorage to hold the necessary records.
-Creates a Forgot Password Confirmation Record. This will be to remember that -a user has made a request to reset a password. Throws an error if the email doesn't -exist.
-The record id. This should be included in the reset password link.
-AbstractProvides a default implementation for getParentContainer
-which checks if the identifier is supported and not a root container.
-If not, the last part before the first relevant slash will be removed to find the parent.
Provides a default implementation for contains
-which does standard slash-semantics based string comparison.
Checks if the given container would contain the given identifier. -This does not check that either of these identifiers actually exist. -This is similar to calling getParentContainer on an identifier -and comparing the result.
-If transitive is false this only checks if container is the direct parent container of identifier.
Generates the identifier of the container this resource would be a member of. -This does not check if that identifier actually exists. -Will throw an error if the input identifier is a root container or is not supported.
-AbstractisChecks if the input corresponds to the identifier of a root container. -This does not check if this identifier actually exists.
-AbstractsupportsVerifies if this identifier is supported. -This does not check if this identifier actually exists, -but checks if the identifier is in scope for this class.
-AbstractBase class that implements all additional BaseLogger methods, -leaving only the implementation of SimpleLogger.
-AbstractlogLog the given message at the given level. -If the internal level is higher than the given level, the message may be voided.
-The level to log at.
-The message to log.
-Optionalmeta: LogMetadataOptional metadata to include in the log message.
-A LoginStorage that wraps around another IndexedStorage to add specific account requirements.
-All of this is tracked by adding a new field to the account object, -that keeps track of how many login objects are associated with the account.
-Protected ReadonlyaccountProtected ReadonlyloginProtected ReadonlystorageProtectedcheckProtectedcleanCreates an object of the given type. -The storage will generate an identifier for the newly created object.
-The type to create.
-The value to set for the created object.
-A representation of the newly created object, including its new identifier.
-ProtectedcreateCreates an index on a key of the given type, to allow for better queries involving those keys. -Similar to IndexedStorage.defineType these calls need to happen first.
-Defines a type in the storage, just like in an IndexedStorage, -but additionally it needs to be indicated if the type corresponds to a login method or not.
-Deletes the given object. -This will also delete all objects that reference that object if the corresponding key is not optional.
-The type of the object to delete.
-The identifier of the object.
-Returns an iterator over all objects of the given type.
-The type to iterate over.
-Finds all objects matching a specific IndexedQuery.
-The type of objects to find.
-The query to execute.
-A list of objects matching the query.
-Similar to IndexedStorage.find, but only returns the identifiers of the found objects.
-The type of objects to find.
-The query to execute.
-A list of identifiers of the matching objects.
-Returns the object of the given type with the given identifier.
-The type of object to get.
-The identifier of that object.
-A representation of the object, or undefined if there is no object of that type with that identifier.
Sets the value of a specific object. -The identifier in the object is used to identify the object.
-The type of the object to set.
-The new value for the object.
-Implementation of an PasswordIdRoute that adds the identifier relative to a base AccountIdRoute.
-Returns the path that is the result of having the specified values for the dynamic parameters.
-Will throw an error in case the input parameters object is missing one of the expected keys.
Optionalparameters: Record<"accountId" | "passwordId", string>Values for the dynamic parameters.
-Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-The path to verify.
-A PasswordStore that uses a KeyValueStorage to store the entries.
-Passwords are hashed and salted.
-Default saltRounds is 10.
Authenticate if the email and password are correct and return the account and login ID if they are. -Throw an error if they are not.
-The user's email.
-This user's password.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Confirms that the login has been verified.
-This can be used with, for example, email verification.
-The login can only be used after it is verified.
-In case verification is not required, this should be called immediately after the create call.
ID of the login.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the creation of pods. -Will call the stored PodStore with the provided settings.
-Protected ReadonlybaseProtected ReadonlyidentifierProtected ReadonlyloggerProtected ReadonlypodProtected ReadonlyrelativeProtected ReadonlywebChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedcreateCreates a pod with the given settings. -In case pod creation fails, the given WebID link will be removed, if there is one, before throwing an error.
-OptionalwebIdLink: stringProtectedgenerateOptionalname: stringHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedhandleLinks the WebID to the account if linkWebId is true.
-Also updates the oidcIssuer value in the settings object in that case.
Implementation of an PodIdRoute that adds the identifier relative to a base AccountIdRoute.
-Returns the path that is the result of having the specified values for the dynamic parameters.
-Will throw an error in case the input parameters object is missing one of the expected keys.
Optionalparameters: Record<"accountId" | "podId", string>Values for the dynamic parameters.
-Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-The path to verify.
-A PodStore implementation using a PodManager to create pods -and a AccountLoginStorage to store the data. -Needs to be initialized before it can be used.
-Adds the initial WebID as the owner of the pod.
-By default, this owner is not exposed through a link header.
-This can be changed by setting the constructor visible parameter to true.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Creates a new pod and updates the account accordingly.
-Identifier of the account that is creating the account.
-Settings to create a pod with.
-If the pod is allowed to overwrite existing data.
-The ID of the new pod resource.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Remove an owner from a pod. -This should not remove the last owner as a pod always needs to have at least one owner. -https://solidproject.org/TR/2022/protocol-20221231#server-storage-track-owner
-ID of the pod.
-WebID of the owner.
-Add or update an owner of a pod. -In case there already is an owner with this WebID, it will be updated, -otherwise a new owner will be added.
-ID of the pod.
-WebID of the owner.
-Whether the owner wants to be exposed or not.
-AbstractA ReadWriteLocker that allows for multiple simultaneous read operations. -Write operations will be blocked as long as read operations are not finished. -New read operations are allowed while this is going on, which will cause write operations to wait longer.
-Based on https://en.wikipedia.org/wiki/Readers–writer_lock#Using_two_mutexes . -As soon as 1 read lock request is made, the main lock is locked. -Internally a counter keeps track of the amount of active read locks. -Only when this number reaches 0 will the main lock be released again. -The internal count lock is only locked to increase/decrease this counter and is released afterwards. -This allows for multiple read operations, although only 1 at the time can update the counter, -which means there can still be a small waiting period if there are multiple simultaneous read operations.
-Classes extending this need to implement getCountLockIdentifier and modifyCount.
ProtectedconstructorUsed for creating read and write locks.
-Used for creating locks when updating the counter.
-Protected AbstractgetGenerate the identifier that will be used to acquire the count lock for the given identifier.
-There will be cases where this lock needs to be acquired
-while an active lock on the main resource is still being maintained.
-This means that if the input resourceLocker and countLocker use the same locking system
-this generated identifier needs to be different.
Protected AbstractmodifyUpdate the counter that keeps track of having open read locks there currently are.
-Identifier on which to update the number of read locks.
-+1 or -1.
ProtectedwithAcquires a new lock for the requested identifier. -Will resolve when the input function resolves.
-Identifier of resource that needs to be locked.
-Function to resolve while the resource is locked.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that only require reading the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that could modify the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Base implementation of ResourceStore for implementers of custom stores.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Generates resources by making use of a template engine. -The template folder structure will be kept. -Folders will be interpreted as containers and files as documents. -A FileIdentifierMapper will be used to generate identifiers that correspond to the relative structure.
-Metadata resources will be yielded separately from their subject resource.
-A relative templateFolder is resolved relative to cwd,
-unless it's preceded by @css:, e.g. @css:foo/bar.
A mapper is needed to convert the template file paths to identifiers relative to the given base identifier.
-TemplatedResourcesGeneratorArgs
-Generates resources with the given options, based on the given template folder. -The output Iterable should be sorted so that containers always appear before their contents.
-Folder where the templates are located.
-Base identifier.
-Options that can be used when generating resources.
-A map where the keys are the identifiers and the values the corresponding representations to store.
-AbstractChecks if a given method and path are satisfied and allows its handler to be executed if so.
-Implementations of this class should call canHandleInput in their canHandle call with the correct parameters.
canHandleInput expects a ResourceIdentifier to indicate it expects the target to have been validated already.
ProtectedconstructorProtected ReadonlyallProtected ReadonlyallowedProtected ReadonlyallowedProtected ReadonlybaseProtected ReadonlyhandlerChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedcanHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Creates an HTTP(S) server native Node.js http/https modules.
Will apply a ServerConfigurator to the server, -which should be used to attach listeners.
-Optionaloptions: BaseServerFactoryOptionsHandles the state feature by calling a NotificationHandler
-in case the NotificationChannel has a state value.
Deletes the state parameter from the channel afterwards.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA base TypedRepresentationConverter implementation for converters -that can convert from all its input types to all its output types.
-This base class handles the canHandle call by comparing the input content type to the stored input types
-and the output preferences to the stored output types.
Output weights are determined by multiplying all stored output weights with the weight of the input type.
-Determines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A ShorthandExtractor that that generates the base URL based on the input baseUrl value,
-or by using the port if the first isn't provided.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Adds the pod identifier as base url variable to the agent. -This allows for config templates that require a value for TEMPLATE_BASE_URL_URN, -which should equal the pod identifier.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Routes requests based on their base url. -Checks if any of the stored base URLs match the request identifier. -If there are no matches the base store will be returned if one was configured.
-Part of the dynamic pod creation. -Uses the identifiers that were added to the routing storage.
-OptionalbaseStore: ResourceStoreChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-Optionalrepresentation?: RepresentationA promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-Optionalrepresentation?: RepresentationA promise resolving if the input can be handled, rejecting with an Error if not.
-Stores the baseUrl value that was used to start the server
-and warns the user in case it differs from the previous one.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Implementation of an WebIdLinkRoute that adds the identifier relative to a base AccountIdRoute.
-Returns the path that is the result of having the specified values for the dynamic parameters.
-Will throw an error in case the input parameters object is missing one of the expected keys.
Optionalparameters: Record<"accountId" | "webIdLink", string>Values for the dynamic parameters.
-Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-The path to verify.
-A WebIdStore using a AccountLoginStorage to store the links. -Needs to be initialized before it can be used.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Stores all the relevant Conditions values and matches them based on RFC7232.
-Protected ReadonlyeOptional ReadonlymatchesETagValid if matching any of the given ETags.
-Optional ReadonlymodifiedValid if modified since the given date.
-Optional ReadonlynotValid if not matching any of the given ETags.
-Optional ReadonlyunmodifiedValid if not modified since the given date.
-Checks validity based on the given metadata.
-Optionalmetadata: RepresentationMetadataMetadata of the representation. Undefined if the resource does not exist.
-Optionalstrict: booleanHow to compare the ETag related headers. -If true, the comparison will happen on representation level. -If false, the comparison happens on resource level, ignoring the content-type.
-Creates a Conditions object based on the following headers:
-Implementation based on RFC7232
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Standard implementation of ETagHandler. -ETags are constructed by combining the last modified date with the content type of the representation.
-Generates an ETag for the given metadata. Returns undefined if no ETag could be generated.
-Metadata of the representation to generate an ETag for.
-Validates whether the given metadata corresponds to the given ETag.
-Metadata of the resource.
-ETag to compare to.
-True if the comparison needs to be on representation level. -False if it is on resource level and the content-type doesn't matter.
-Class with various constructors to facilitate creating a representation.
-A representation consists of 1) data, 2) metadata, and 3) a binary flag -to indicate whether the data is a binary stream or an object stream.
-An empty Representation
-The representation data
-The representation metadata
-Optionalbinary: booleanWhether the representation is a binary or object stream
-The representation data
-The representation metadata
-OptionalcontentType: stringThe representation's content type
-Optionalbinary: booleanWhether the representation is a binary or object stream
-The representation data
-The representation's content type
-Optionalbinary: booleanWhether the representation is a binary or object stream
-The representation data
-The representation's identifier
-Optionalmetadata: MetadataRecordThe representation metadata
-Optionalbinary: booleanWhether the representation is a binary or object stream
-The representation data
-The representation's identifier
-OptionalcontentType: stringThe representation's content type
-Optionalbinary: booleanWhether the representation is a binary or object stream
-Creates an Operation from an incoming HttpRequest by aggregating the results -of a TargetExtractor, MetadataParser, -ConditionsParser and BodyParser.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Writes to an HttpResponse based on the incoming ResponseDescription.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Responsible for extracting credentials from an incoming request.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Resource store that slices the data stream if there are range preferences.
-Only works for bytes range preferences on binary data streams.
-Does not support multipart range requests.
If the slice happens, unit/start/end values will be written to the metadata to indicate such. -The values are dependent on the preferences we got as an input, -as we don't know the actual size of the data stream.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-AbstractParses the body of an incoming HttpRequest and converts it to a Representation.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A composite handler that returns true if any of its handlers can handle the input and return true. -Handler errors are interpreted as false results.
-Creates a new BooleanHandler that stores the given handlers.
-Handlers over which it will run.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Caches output data from the source handler based on the input object.
-The fields parameter can be used to instead use one or more specific entries from the input object as cache key,
-so has as actual required typing (keyof TIn)[].
A WeakMap is used internally so strict object equality determines cache hits, -and data will be removed once the key stops existing. -This also means that the cache key needs to be an object. -Errors will be thrown in case a primitive is used.
-Optionalfields: string[]Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedfindReturns the WeakMap that contains actual objects that were cached,
-so the last WeakMap in the chain of maps.
Returns undefined if no such map exists because earlier keys were not cached.
Will always return a map if ensure is set to true,
-in such a case the intermediate maps will be created and added to the previous map.
ProtectedgetExtracts the values that will be used as keys from the input object.
-In case the fields value was undefined, this will return an array containing the input object itself.
Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates a key pair once and then caches it using both an internal variable and a KeyValueStorage. -The storage makes sure the keys remain the same between server restarts, -while the internal variable makes it so the storage doesn't have to be accessed every time a key is needed.
-Only the private key is stored in the internal storage, using the storageKey parameter.
-The public key is determined based on the private key and then also stored in memory.
The algorithm used for the keys.
-Caches resource existence in a WeakMap tied to the ResourceIdentifier object.
Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Cancel an active OIDC interaction.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A meta converter that takes an array of other converters as input. -It chains these converters by finding a path of converters -that can go from the given content-type to the given type preferences. -In case there are multiple paths, the one with the highest weight gets found. -Will error in case no path can be found.
-This is not a TypedRepresentationConverter since the supported output types -might depend on what is the input content-type.
-This converter should be the last in a WaterfallHandler if there are multiple, -since it will try to convert any representation with a content-type.
-Some suggestions on how this class can be even more optimized should this ever be needed in the future. -Most of these decrease computation time at the cost of more memory.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Calls the given array of TemplateEngines in the order they appear, -feeding the output of one into the input of the next.
-The first engine will be called with the provided contents and template parameters. -All subsequent engines will be called with no template parameter. -Contents will still be passed along and another entry will be added for the body of the previous output.
-Engines will be executed in the same order as the array.
-The name of the key used to pass the body of one engine to the next.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractConverts the input CLI arguments into an easily parseable key/value object.
-Due to how the application is built, there are certain CLI parameters -that need to be parsed before this class can be instantiated. -These can be ignored by this class as they will have been handled before it is called, -but that does mean that this class should not error if they are present, -e.g., by being strict throwing an error on these unexpected parameters.
-In case strict mode is preferred, the following should be added to the list of known parameters:
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A class that combines a CliExtractor and a ShorthandResolver. -Mainly exists so both such classes can be generated in a single Components.js instance.
-A PassthroughAdapter that overrides the find function
-by checking if there are stored client credentials for the given ID
-if no payload is found in the source.
Protected ReadonlyloggerProtected ReadonlynameProtected ReadonlysourceA factory that generates an Adapter to be used by the IDP to persist information.
The oidc-provider library will call the relevant functions when it needs to find/create/delete metadata.
-For a full explanation of how these functions work and what is expected,
-have a look at https://github.com/panva/node-oidc-provider/blob/main/example/my_adapter.js
Provides a view on a client credentials token, indicating the token identifier and its associated WebID.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-This Adapter redirects the find call to its source adapter.
-In case no client data was found in the source for the given Client ID,
-this class will do an HTTP GET request to that Client ID.
-If the result is a valid Client ID document, that will be returned instead.
See https://solidproject.org/TR/2022/oidc-20220328#clientids-document.
-Protected ReadonlyloggerProtected ReadonlynameProtected ReadonlysourceA factory that generates an Adapter to be used by the IDP to persist information.
The oidc-provider library will call the relevant functions when it needs to find/create/delete metadata.
-For a full explanation of how these functions work and what is expected,
-have a look at https://github.com/panva/node-oidc-provider/blob/main/example/my_adapter.js
Returns a JSON representation with metadata of the client that is requesting the OIDC interaction.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-This class is responsible for deciding how many affective workers are needed. -It also contains the logic for respawning workers when they are killed by the os.
-The workers values are interpreted as follows:
-| value | -actual workers | -
|---|---|
-m |
-num_cores - m workers (autoscale) (m < num_cores) |
-
-1 |
-num_cores - 1 workers (autoscale) |
-
0 |
-num_cores workers (autoscale) |
-
1 |
-single threaded mode (default) |
-
n |
-n workers |
-
Generates variable values by running a set of ShorthandExtractors on the input.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An AuxiliaryStrategy that provides its functionality through the combination of -an AuxiliaryIdentifierStrategy, MetadataGenerator and Validator.
-OptionalmetadataGenerator: MetadataGeneratorOptionalvalidator: ValidatorAdds 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.
-Used for: -Solid, §4.3.1: "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." -https://solid.github.io/specification/protocol#auxiliary-resources-server
-The above is an example of how that metadata would only be added in case the input is the subject identifier.
-Metadata to update.
-Returns the identifier of the auxiliary resource corresponding to the given resource. -This does not guarantee that this auxiliary resource exists.
-Should error if there are multiple results: see getAuxiliaryIdentifiers.
-The ResourceIdentifier of which we need the corresponding auxiliary resource.
-The ResourceIdentifier of the corresponding auxiliary resource.
-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 getAuxiliaryIdentifier.
-The ResourceIdentifier of which we need the corresponding auxiliary resources.
-The ResourceIdentifiers of the corresponding auxiliary resources.
-Returns the identifier of the resource which this auxiliary resource is referring to. -This does not guarantee that this resource exists.
-Identifier of the auxiliary resource.
-The ResourceIdentifier of the subject resource.
-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.
-Identifier to check.
-true if the input identifier points to an auxiliary resource.
-Validates if the representation contains valid data for an auxiliary resource. -Should throw an error in case the data is invalid.
-Representation of the auxiliary resource.
-Generates, serializes and emits a Notification using a NotificationGenerator, -NotificationSerializer and NotificationEmitter.
-Will not emit an event when it has the same state as the notification channel.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-This handler will pass all requests to the wrapped handler, -until a specific value has been set in the given storage. -After that all input will be rejected. -Once the value has been matched this behaviour will be cached, -so changing the value again afterwards will not enable this handler again.
-If handleStorage is set to true,
-this handler will set the value itself in the given storage after the source handler successfully resolved.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractCreates a Conditions object based on the input HttpRequest.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Initializes all pods that have been stored and loads them in memory. -This reads the pod settings from a permanent storage and uses those -to create the corresponding ResourceStores in memory, -so this is required every time the server starts.
-Part of the dynamic pod creation. -Reads the contents from the configuration storage, uses those values to instantiate ResourceStores, -and then adds them to the routing storage.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Pod manager that creates a store for the pod with a PodGenerator -and fills it with resources from a ResourcesGenerator.
-Part of the dynamic pod creation.
-Generator for the pod stores.
-Generator for the pod resources.
-Where to store the generated pods so they can be routed to.
-The default ResourceStore
-Creates a pod for the given settings.
-Settings describing the pod.
-An error thrown when a request conflict with current state of the server.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Handles the OIDC consent prompts where the user confirms they want to log in for the given client.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A RepresentationConverter that ensures -a representation for a certain content type is available.
-Representations of the same content type are served as is; -others are replaced by a constant document.
-This can for example be used to serve an index.html file, -which could then interactively load another representation.
-Options default to the most permissive values when not defined.
-Creates a new constant converter.
-The path to the constant representation.
-The content type of the constant representation.
-Extra options for the converter.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A MetadataWriter that takes a constant map of header names and values.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Initializer that sets up a container. -Will copy all the files and folders in the given path to the corresponding documents and containers.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A KeyValueStorage that prepends a relative path to the key. -Leading slashes of the relative path are trimmed, and a trailing slash is added if needed.
-Sets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-ProtectedtoProtectedtoA RepresentationConverter that creates a templated representation of a container.
-Determines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Parser for the content-length header.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Adds the Content-Type header containing value and parameters (if available).
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Parser for the content-type header.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A RepresentationConverter that changes the content type -but does not alter the representation.
-Useful for when a content type is binary-compatible with another one; -for instance, all JSON-LD files are valid JSON files.
-Map of content type patterns and content types to replace them by.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Gets the output content types this converter can convert the input type to, mapped to a numerical priority.
-Changes the content type on the representation.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-First, checks whether a context is stored locally before letting the super class do a fetch.
-This can be used when converting JSON-LD with Comunica-related libraries, such as rdf-parse.
To use this, add this document loader to the options of the call
-using the KeysRdfParseJsonLd.documentLoader.name key.
-All extra keys get passed in the Comunica ActionContext
-and this is the key that is used to define the document loader.
-See https://github.com/rubensworks/rdf-parse.js/blob/master/lib/RdfParser.ts
-and https://github.com/comunica/comunica/blob/master/packages/actor-rdf-parse-jsonld/lib/ActorRdfParseJsonLd.ts
Creates an object with the keys matching those of the input controls,
-and the values being the results received by the matching values in the same input.
If source is defined, the controls will be added to the output of that handler after passing the input.
-In case the control keys conflict with a key already present in the resulting object,
-the results will be merged.
Optionalsource: JsonInteractionHandler<Dict<Json>>Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedgenerateProtectedgenerateGenerate the controls for all the stored keys.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedisProtectedmergeConverts an error into a Representation of content type internal/error. -Then feeds that representation into its converter to create a representation based on the given preferences.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts a serialization based on the provided accept feature value.
-In case none was provided no conversion takes place.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An OperationHttpHandler that converts the response of its handler based on the Operation preferences. -If there are no preferences, or no data, the response will be returned as-is.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A ConvertingPatcher converts a document to its intermediateType,
-sends the result to the wrapped patcher, and then converts back to its original type.
-No changes will take place if no intermediateType is provided.
In case there is no resource yet and a new one needs to be created,
-the result of the wrapped patcher will be converted to the provided defaultType.
-In case no defaultType is provided, the patcher output will be returned directly.
Patcher that will be called with the Representation.
-Converter that will be used to generate intermediate Representation.
-OptionalintermediateType: stringContent-type of the intermediate Representation if conversion is needed.
-OptionaldefaultType: stringContent-type in case a new resource gets created and needs to be converted.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Rule that directs requests based on how the data would need to be converted.
-In case the given converter can convert the data to the requested type,
-it will be directed to the convertStore.
-Otherwise the defaultStore will be chosen.
In case there is no data and only an identifier the defaultStore will be checked
-if it contains the given identifier.
-If not, the convertStore will be returned.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-Optionalrepresentation?: RepresentationA promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-Optionalrepresentation?: RepresentationA promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-Optionalrepresentation?: RepresentationA promise resolving if the input can be handled, rejecting with an Error if not.
-Handles all the necessary steps for having cookies. -Refreshes the cookie expiration if there was a successful account interaction. -Adds the cookie and cookie expiration data to the output metadata, -unless it is already present in that metadata. -Checks the account settings to see if the cookie needs to be remembered.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates the necessary Set-Cookie header if a cookie value is detected in the metadata.
-The keys of the input cookieMap should be the URIs of the predicates
-used in the metadata when the object is a cookie value.
-The value of the map are objects that contain the name of the cookie,
-and the URI that is used to store the expiration date in the metadata, if any.
-If no expiration date is found in the metadata, none will be set for the cookie,
-causing it to be a session cookie.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Parses the cookie header and stores their values as metadata.
-The keys of the input cookieMap should be the cookie names,
-and the values the corresponding predicate that should be used to store the value in the metadata.
-The values of the cookies will be used as objects in the generated triples
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handler that sets CORS options on the response.
-In case of an OPTIONS request this handler will close the connection after adding its headers
-if preflightContinue is set to false.
Solid, §8.1: "A server MUST implement the CORS protocol [FETCH] such that, to the extent possible, -the browser allows Solid apps to send any request and combination of request headers to the server, -and the Solid app can read any response and response headers received from the server." -Full details: https://solidproject.org/TR/2021/protocol-20211217#cors-server
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Creates new accounts using an AccountStore;
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Takes the necessary steps to log a user in.
-ProtectedupdateUpdates the account setting that determines whether the login status needs to be remembered.
-ID of the account.
-Optionalremember: booleanIf the account should be remembered or not. The setting will not be updated if this is undefined.
-Handles the creation of client credential tokens.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Adds the create access mode to the result of the source in case the target resource does not exist.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the creation of email/password login combinations for an account.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the creation of pods. -Will call the stored PodCreator with the settings found in the input JSON.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Corresponds to a 201 response, containing the relevant location metadata.
-AbstractResponsible for extracting credentials from an incoming request.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Credentials extractor that extracts a WebID from a DPoP-bound access token.
-Reconstructs the original URL as requested by the client
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ResourceStore which uses a DataAccessor for backend access.
-The DataAccessor interface provides elementary store operations such as read and write. -This DataAccessorBasedStore uses those elementary store operations -to implement the more high-level ResourceStore contact, abstracting all common functionality -such that new stores can be added by implementing the more simple DataAccessor contract. -DataAccessorBasedStore thereby provides behaviours for reuse across different stores, such as:
-Currently "metadata" is seen as something that is not directly accessible. -That means that a consumer can't write directly to the metadata of a resource, only indirectly through headers. -(Except for containers where data and metadata overlap).
-The one thing this store does not take care of (yet?) are containment triples for containers
-Work has been done to minimize the number of required calls to the DataAccessor, -but the main disadvantage is that sometimes multiple calls are required where a specific store might only need one.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-ProtectedcleanProtectedcreateCreate containers starting from the root until the given identifier corresponds to an existing container. -Will throw errors if the identifier of the last existing "container" corresponds to an existing document.
-Identifier of the container which will need to exist.
-ProtectedcreateGenerate a valid URI to store a new Resource in the given container. -URI will be based on the slug header if there is one and is guaranteed to not exist yet.
-Identifier of the target container.
-Metadata of the new resource.
-ProtectedcreateURIGenerates a new URI for a resource in the given container, potentially using the given slug.
-Solid, §5.3: "Servers MUST allow creating new resources with a POST request to URI path ending /.
-Servers MUST create a resource with URI path ending /{id} in container /.
-Servers MUST create a container with URI path ending /{id}/ in container / for requests
-including the HTTP Link header with rel="type" targeting a valid LDP container type."
-https://solid.github.io/specification/protocol#writing-resources
Parent container of the new URI.
-Does the new URI represent a container?
-Optionalslug: stringSlug to use for the new URI.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-ProtectedgetReturns the metadata matching the identifier, ignoring the presence of a trailing slash or not.
-Solid, §3.1: "If two URIs differ only in the trailing slash, -and the server has associated a resource with one of them, -then the other URI MUST NOT correspond to another resource." -https://solid.github.io/specification/protocol#uri-slash-semantics
-First the identifier gets requested. If no result is found, -the identifier with differing trailing slash is requested.
-Identifier that needs to be checked.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-A representation corresponding to the identifier.
-ProtectedgetReturns the result of getNormalizedMetadata or undefined if a 404 error is thrown.
ProtectedhandleWarns when the representation has data and removes the content-type from the metadata.
-Container representation.
-ProtectedhasProtectedhasChecks if the given container has any non-auxiliary resources.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-ProtectedisChecks whether the given metadata represents a (potential) container, -based on the metadata.
-Metadata of the (new) resource.
-ProtectedisVerifies if this is the metadata of a root storage container.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-ProtectedremoveRemoves all generated data from metadata to prevent it from being stored permanently.
-ProtectedsafelyDeletes the given array of auxiliary identifiers. -Does not throw an error if something goes wrong.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-ProtectedupdateUpdates the last modified date of the given container
-ProtectedvalidateVerify if the given metadata matches the conditions.
-Optionalconditions: ConditionsOptionalmetadata: RepresentationMetadataProtectedvalidateVerify if the given identifier matches the stored base.
-ProtectedvalidateValidates if the slug and headers are valid. -Errors if slug exists, ends on slash, but ContainerType Link header is NOT present
-Is the slug supposed to represent a container?
-Optionalslug: stringIs the requested slug (if any).
-ProtectedwriteWrite the given resource to the DataAccessor. Metadata will be updated with necessary triples.
-For containers, handleContainerData will be used to verify the data.
Identifier of the resource.
-Corresponding Representation.
-Is the incoming resource a container?
-Should parent containers (potentially) be created?
-If the resource already exists.
-Identifiers of resources that were possibly modified.
-ProtectedwriteWrite the given metadata resource to the DataAccessor.
-Identifier of the metadata.
-Corresponding Representation.
-Identifiers of resources that were possibly modified.
-Handles the deletion of client credentials tokens.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates a Notification for a resource that was deleted. -This differs from other activity notifications in that there is no state and no resource metadata -since the resource no longer exists.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles DELETE Operations. -Calls the deleteResource function from a ResourceStore.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-In case a resource is being deleted but does not exist, -the server response code depends on the access modes the agent has on the parent container. -In case the agent has read access on the parent container, a 404 should be returned, -otherwise it should be 401/403.
-This class adds support for this by requiring read access on the parent container -in case the target resource does not exist.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the deletion of a password login method.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts JSON data by using it as input parameters for rendering a template.
-The extension field can be used to only support a specific type of templates,
-such as ".ejs" for EJS templates.
To find the templates it expects the Representation metadata to contain SOLID_META.template triples,
-with the objects being the template paths.
-For each of those templates there also needs to be a CONTENT_TYPE triple
-describing the content-type of that template.
The output of the result depends on the content-type matched with the template. -In case JSON is the most preferred output type, -the input representation will be returned unless a JSON template is defined.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Fills in EJS templates.
-Base URL of the server.
-The extensions that are supported by this template engine (defaults to 'ejs').
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA class that can send an e-mail.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A ReadWriteLocker that gives no priority to read or write operations: both use the same lock.
-ProtectedwithAcquires a new lock for the requested identifier. -Will resolve when the input function resolves.
-Identifier of resource that needs to be locked.
-Function to resolve while the resource is locked.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that only require reading the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that could modify the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-AbstractConverts an error into a ResponseDescription based on the request preferences.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts an Error object to JSON by copying its fields.
-Determines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts an error object into quads by creating a triple for each of name/message/stack.
-Determines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Serializes an Error by filling in the provided template. -Content-type is based on the constructor parameter.
-In case the input Error has an errorCode value,
-the converter will look in the descriptions for a file
-with the exact same name as that error code + extension.
-The templating engine will then be applied to that file.
-That result will be passed as an additional parameter to the main templating call,
-using the variable codeMessage.
OptionaltemplateOptions: TemplateOptionsDetermines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An IDP storage adapter that uses an ExpiringStorage -to persist data.
-The factory for a ExpiringStorageAdapter
-Supports the behaviour described in https://www.w3.org/DesignIssues/HTTPFilenameMapping.html -Determines content-type based on the file extension. -In case an identifier does not end on an extension matching its content-type, -the corresponding file will be appended with the correct extension, preceded by $.
-OptionalcustomTypes: Record<string, string>Protected ReadonlybaseProtected ReadonlyloggerProtected ReadonlyrootProtected ReadonlyunknownProtectedgetProtectedgetProtectedgetProtectedgetDetermines the content type from the document identifier.
-The input identifier.
-OptionalcontentType: stringThe content-type provided with the request.
-The content type of the document.
-ProtectedgetProtectedgetStrips the baseRequestURI from the identifier.
-Incoming identifier.
-A string representing the relative path.
-ProtectedisMaps the given file path to a URL and determines its content type.
-The input file path.
-If the path corresponds to a file.
-A ResourceLink with all the necessary metadata.
-ProtectedmapMaps the given container identifier to a file path, -possibly making alterations to the direct translation.
-The input identifier.
-The direct translation of the identifier onto the file path.
-A ResourceLink with all the necessary metadata.
-ProtectedmapMaps the given document identifier to a file path, -possibly making alterations to the direct translation -(for instance, based on its content type)). -Determines the content type if none was provided.
-The input identifier.
-The direct translation of the identifier onto the file path.
-OptionalcontentType: stringThe content-type provided with the request.
-A ResourceLink with all the necessary metadata.
-Maps the given resource identifier / URL to a file path. -Determines the content type if none was provided. -For containers the content-type input is ignored.
-The input identifier.
-If we need the data or metadata file path.
-OptionalcontentType: stringThe content-type provided with the request.
-A ResourceLink with all the necessary metadata.
-ProtectedstripProtectedvalidateCheck whether the given relative path is valid.
-A relative path, as generated by getRelativePath.
-A resource identifier.
-Factory that can create FileIdentifierMappers so the base and rootFilePath can be set dynamically. -Specifically used when identifiers need to be generated for a new pod (since pod identifiers are generated).
-AbstractParent class for template engines that accept handling based on whether the template extension is supported.
-ProtectedconstructorConstructor for ExtensionBasedTemplateEngine.
-Array of the extensions supported by the template engine (e.g. [ 'ejs' ]).
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-DataAccessor that uses the file system to store documents as files and containers as folders.
-Only binary data can be directly stored as files so will error on non-binary data.
-Removes the corresponding file/folder (and metadata file).
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Will return data stream directly to the file corresponding to the resource. -Will throw NotFoundHttpError if the input is a container.
-Will return corresponding metadata by reading the metadata file (if it exists) -and adding file system specific metadata elements.
-ProtectedgetProtectedverifyVerifies if there already is a file corresponding to the given resource. -If yes, that file is removed if it does not match the path given in the input ResourceLink. -This can happen if the content-type differs from the one that was stored.
-ResourceLink corresponding to the new resource data.
-Creates corresponding folder if necessary and writes metadata to metadata file if necessary.
-ProtectedwriteWrites the given data as a file (and potential metadata as additional file). -The metadata file will be written first and will be deleted if something goes wrong writing the actual data.
-Writes metadata for a resource. -It can safely be assumed that the subject resource already exists.
-Identifier of the subject resource.
-Metadata to store.
-ProtectedwriteWrites the metadata of the resource to a meta file.
-Path related metadata of the resource.
-Metadata to write.
-True if data was written to a file.
-SizeReporter that is used to calculate sizes of resources for a file based system.
-OptionalignoreFolders: string[]The estimated size of a resource in this reporter is simply the content-length header
-Returns the size of the given resource ( and its children ) in bytes
-A resource locker making use of the proper-lockfile library. -Note that no locks are kept in memory, thus this is considered thread- and process-safe. -While it stores the actual locks on disk, it also tracks them in memory for when they need to be released. -This means only the worker thread that acquired a lock can release it again, -making this implementation unusable in combination with a wrapping read/write lock implementation.
-This proper-lockfile library has its own retry mechanism for the operations, since a lock/unlock call will -either resolve successfully or reject immediately with the causing error. The retry function of the library -however will be ignored and replaced by our own LockUtils' retryFunction function.
-Create a new FileSystemResourceLocker
-Configures the locker using the specified FileSystemResourceLockerArgs instance.
-Acquires a lock on the requested identifier. -The promise will resolve when the lock has been acquired.
-Resource to acquire a lock on.
-Initializer method to be executed on server start. This makes sure that no pre-existing (dangling) locks -remain on disk, so that request will not be blocked because a lock was acquired in the previous server instance.
-NOTE: this also removes locks created by the GreedyReadWriteLocker. -(See issue: https://github.com/CommunitySolidServer/CommunitySolidServer/issues/1358)
-Releases a lock on the requested identifier. -The promise will resolve when the lock has been released. -If there is no lock on the resource, an error should be thrown.
-Resource to release the lock on.
-A FilterMetadataDataAccessor wraps a DataAccessor such that specific metadata properties -can be filtered before passing on the call to the wrapped DataAccessor.
-Construct an instance of FilterMetadataDataAccessor.
-The DataAccessor to wrap.
-Filter patterns to be used for metadata removal.
-Should throw a NotImplementedHttpError if the DataAccessor does not support storing the given Representation.
-Incoming Representation.
-Deletes the resource and its corresponding metadata.
-Solid, §5.4: "When a contained resource is deleted, the server MUST also remove the corresponding containment -triple, which has the effect of removing the deleted resource from the containing container." -https://solid.github.io/specification/protocol#deleting-resources
-Resource to delete.
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Returns a data stream stored for the given identifier. -It can be assumed that the incoming identifier will always correspond to a document.
-Identifier for which the data is requested.
-Returns the metadata corresponding to the identifier.
-If possible, it is suggested to add a posix:size triple to the metadata indicating the binary size.
-This is necessary for range requests.
Identifier for which the metadata is requested.
-Writes metadata for a container. -If the container does not exist yet it should be created, -if it does its metadata should be overwritten, except for the containment triples.
-Identifier of the container.
-Metadata to store.
-Writes data and metadata for a document. -If any data and/or metadata exist for the given identifier, it should be overwritten.
-Identifier of the resource.
-Data to store.
-Metadata to store.
-Writes metadata for a resource. -It can safely be assumed that the subject resource already exists.
-Identifier of the subject resource.
-Metadata to store.
-Represents a triple pattern to be used as a filter.
-Optionalsubject: stringOptionally filter based on a specific subject.
-Optionalpredicate: stringOptionally filter based on a predicate.
-Optionalobject: stringOptionally filter based on a specific object.
-Allows using a Finalizable as a Finalizer Handler.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractFinalizer is used to indicate an AsyncHandler that performs finalization logic.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A mapper that always returns a fixed content type for files.
-Base URL.
-Base file path.
-Fixed content type that will be used for all resources.
-An optional suffix that will be appended to all file paths. -Requested file paths without this suffix will be rejected.
-An optional suffix that will be appended to all URL. -Requested URLs without this suffix will be rejected.
-Protected ReadonlybaseProtected ReadonlycontentProtected ReadonlyloggerProtected ReadonlypathProtected ReadonlyrootProtected ReadonlyunknownProtected ReadonlyurlProtectedgetProtectedgetProtectedgetProtectedgetDetermines the content type from the document identifier.
-The input identifier.
-OptionalcontentType: stringThe content-type provided with the request.
-The content type of the document.
-ProtectedgetProtectedgetStrips the baseRequestURI from the identifier.
-Incoming identifier.
-A string representing the relative path.
-ProtectedisMaps the given file path to a URL and determines its content type.
-The input file path.
-If the path corresponds to a file.
-A ResourceLink with all the necessary metadata.
-ProtectedmapMaps the given container identifier to a file path, -possibly making alterations to the direct translation.
-The input identifier.
-The direct translation of the identifier onto the file path.
-A ResourceLink with all the necessary metadata.
-Maps the given document identifier to a file path, -possibly making alterations to the direct translation -(for instance, based on its content type)). -Determines the content type if none was provided.
-The input identifier.
-The direct translation of the identifier onto the file path.
-OptionalcontentType: stringThe content-type provided with the request.
-A ResourceLink with all the necessary metadata.
-Maps the given resource identifier / URL to a file path. -Determines the content type if none was provided. -For containers the content-type input is ignored.
-The input identifier.
-If we need the data or metadata file path.
-OptionalcontentType: stringThe content-type provided with the request.
-A ResourceLink with all the necessary metadata.
-ProtectedvalidateCheck whether the given relative path is valid.
-A relative path, as generated by getRelativePath.
-A resource identifier.
-An error thrown when an agent is not allowed to access data.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Forgets the chosen WebID in an OIDC interaction, -causing the next policy trigger to be one where a new WebID has to be chosen.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Responsible for the case where a user forgot their password and asks for a reset. -Will send out the necessary mail if the email address is known. -The JSON response will always be the same to prevent leaking which email addresses are stored.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates a record to reset the password for the given email address and then mails it. -In case there is no account, no error wil be thrown for privacy reasons. -Nothing will happen instead.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts application/x-www-form-urlencoded data to application/json. -Due to the nature of form data, the result will be a simple key/value JSON object.
-Determines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Error used for resources that have been moved temporarily. -Methods other than GET may or may not be changed to GET in subsequent requests.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlylocationReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Pod manager that uses an IdentifierGenerator and ResourcesGenerator -to create the default resources and identifier for a new pod.
-Creates a new pod, pre-populating it with the resources created by the data generator. -Will throw an error if the given identifier already has a resource.
-Handles GET Operations. -Calls the getRepresentation function from a ResourceStore.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-The GlobalQuotaStrategy sets a limit on the amount of data stored on the server globally.
-Get a Passthrough stream that will keep track of the available space. -If the quota is exceeded the stream will emit an error and destroy itself. -Like other Passthrough instances this will simply pass on the chunks, when the quota isn't exceeded.
-the identifier of the resource in question
-a Passthrough instance that errors when quota is exceeded
-Get an estimated size of the resource
-the metadata that might include the size
-a Size object containing the estimated size and unit of the resource
-Get the available space when writing data to the given identifier. -If the given resource already exists it will deduct the already taken up -space by that resource since it is going to be overwritten and thus counts -as available space.
-the identifier of the resource of which you want the available space
-the available space and the unit of the space as a Size object
-ProtectedgetA BaseReadWriteLocker that uses the same locker for the main lock and the count lock, -and uses a KeyValueStorage for keeping track of the counter.
-Since it is completely dependent on other implementations, -this locker is threadsafe if its inputs are as well.
-Used for creating read and write locks.
-Used for storing the amount of active read operations on a resource.
-Used to generate the identifier for the lock that is applied when updating the counter.
-Used to generate the identifier that will be used in the storage for storing the counter.
-Protected ReadonlycountProtected ReadonlycountProtected ReadonlylockerProtected ReadonlyreadProtected ReadonlystorageProtectedgetThis key is used for storing the count of active read operations.
-ProtectedgetGenerate the identifier that will be used to acquire the count lock for the given identifier.
-There will be cases where this lock needs to be acquired
-while an active lock on the main resource is still being maintained.
-This means that if the input resourceLocker and countLocker use the same locking system
-this generated identifier needs to be different.
ProtectedmodifyUpdates the count with the given modifier. -Creates the data if it didn't exist yet. -Deletes the data when the count reaches zero.
-ProtectedwithAcquires a new lock for the requested identifier. -Will resolve when the input function resolves.
-Identifier of resource that needs to be locked.
-Function to resolve while the resource is locked.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that only require reading the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that could modify the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Fills in Handlebars templates.
-Base URL of the server.
-The extensions that are supported by this template engine (defaults to 'hbs').
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A ServerConfigurator that attaches an HttpHandler to the request event of a Server.
-All incoming requests will be sent to the provided handler.
-Failsafes are added to make sure a valid response is sent in case something goes wrong.
The showStackTrace parameter can be used to add stack traces to error outputs.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Protected ReadonlyerrorHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Encodes the input key with SHA-256 hashing, -to make sure there are no invalid or special path characters.
-This class was created specifically to prevent the issue of identifiers being too long when storing data: -https://github.com/CommunitySolidServer/CommunitySolidServer/issues/1013
-This should eventually be replaced by a more structural approach once internal storage has been refactored -and data migration from older versions and formats is supported.
-Sets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-ProtectedtoProtectedtoA Map implementation that maps the Key object to a string using the provided hash function. -This ensures that equal objects that are not the same instance are mapped to the same value.
-true if an element in the Map existed and has been removed, or false if the element does not exist.
-Returns a specified element from the Map object. If the value that is associated to the provided key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the Map.
-Returns the element associated with the specified key. If no element is associated with the specified key, undefined is returned.
-boolean indicating whether an element with the specified key exists or not.
-Handles HEAD Operations. -Calls the getRepresentation function from a ResourceStore.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handler that sets custom headers on the response.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Used to link file paths and URLs together. -The reason we use a separate object instead of a key/value Record, -is that this makes it easier to override the values in Components.js, -which can be useful if someone wants to replace the HTML for certain URLs.
-Stores the HTML templates associated with specific InteractionRoutes.
-This class will only handle GET operations for which there is a matching template, -if HTML is more preferred than JSON. -The reason for doing it like this instead of a standard content negotiation flow, -is because we only want to return the HTML pages on GET requests.
-Templates will receive the parameter idpIndex in their context pointing to the root index URL of the IDP API
-and an authenticating parameter indicating if this is an active OIDC interaction.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A class for all errors that could be thrown by Solid. -All errors inheriting from this should fix the status code thereby hiding the HTTP internals from other components.
-Creates a new HTTP error. Subclasses should call this with their fixed status code.
-HTTP status code needed for the HTTP response.
-Error name. Useful for logging and stack tracing.
-Optionalmessage: stringError message.
-Optional options.
-Optional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic OptionalprepareOptional override for formatting stack traces
-StaticstackAbstractAn HTTP request handler.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An InteractionRoute for routes that have a dynamic identifier in their path.
-Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-The path to verify.
-A specific implementation of HashMap where the key type is ResourceIdentifier.
-Optionaliterable: Iterable<readonly [ResourceIdentifier, T]>true if an element in the Map existed and has been removed, or false if the element does not exist.
-Returns an iterable of key, value pairs for every entry in the map.
-Executes a provided function once per each key/value pair in the Map, in insertion order.
-OptionalthisArg: unknownReturns a specified element from the Map object. If the value that is associated to the provided key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the Map.
-Returns the element associated with the specified key. If no element is associated with the specified key, undefined is returned.
-boolean indicating whether an element with the specified key exists or not.
-Returns an iterable of keys in the map
-Adds a new element with a specified key and value to the Map. If an element with the same key already exists, the element will be updated.
-A specific implementation of WrappedSetMultiMap where the key type is ResourceIdentifier.
-Optionaliterable: Iterable<readonly [ResourceIdentifier, T | ReadonlySet<T>]>Adds the given key/value binding to the Map.
-Returns a Readonly Map representation of this Map.
-true if an element in the Map existed and has been removed, or false if the element does not exist.
-Deletes the given key/value binding from the Map.
-Iterates over all distinct keys in this Map.
-Iterates over all key/value bindings in this Map.
-Iterates over all distinct keys in this Map, together with a Set of their values.
-Loops over all key/value bindings.
-OptionalthisArg: unknownReturns all values stored for the given key.
-Returns undefined if there are no values for this key.
boolean indicating whether an element with the specified key exists or not.
-Returns true if this key/value binding exists in the Map.
-Returns an iterable of keys in the map
-Adds a new element with a specified key and value to the Map. If an element with the same key already exists, the element will be updated.
-Creates an OIDC Provider based on the provided configuration and parameters.
-The provider will be cached and returned on subsequent calls.
-Cookie and JWT keys will be stored in an internal storage, so they can be re-used over multiple threads.
-Necessary claims for Solid OIDC interactions will be added.
-Routes will be updated based on the baseUrl and oidcPath.
JSON config for the OIDC library
-Remaining parameters required for the factory.
-Generates the active Interaction object if there is an ongoing OIDC interaction. -Finds the account ID if there is cookie metadata.
-Calls the stored InteractionHandler with that information and returns the result.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Guarantees that certain PATCH operations MUST NOT update certain triples in metadata resources. -Furthermore, this class also handles the patching for metadata resources. -List of triples that must not be updated are given during instantiation with the ImmutableTriple class. -When there is a change to an Immutable Triple, then a ConflictError will be thrown.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A DataAccessor is the building block closest to the actual data storage. -It should not worry about most Solid logic, most of that will be handled before it is called. -There are a few things it still needs to do, and it is very important every implementation does this:
-getChildren.Deletes the resource and its corresponding metadata.
-Solid, §5.4: "When a contained resource is deleted, the server MUST also remove the corresponding containment -triple, which has the effect of removing the deleted resource from the containing container." -https://solid.github.io/specification/protocol#deleting-resources
-Resource to delete.
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Returns a data stream stored for the given identifier. -It can be assumed that the incoming identifier will always correspond to a document.
-Identifier for which the data is requested.
-Returns the metadata corresponding to the identifier.
-If possible, it is suggested to add a posix:size triple to the metadata indicating the binary size.
-This is necessary for range requests.
Identifier for which the metadata is requested.
-Writes metadata for a container. -If the container does not exist yet it should be created, -if it does its metadata should be overwritten, except for the containment triples.
-Identifier of the container.
-Metadata to store.
-Writes data and metadata for a document. -If any data and/or metadata exist for the given identifier, it should be overwritten.
-Identifier of the resource.
-Data to store.
-Metadata to store.
-Writes metadata for a resource. -It can safely be assumed that the subject resource already exists.
-Identifier of the subject resource.
-Metadata to store.
-Allow containers to have a custom representation. -The index representation will be returned when the following conditions are fulfilled:
-indexName exists in the container. (default: "index.html")mediaRange (default: "text/html")
-Otherwise the request will be passed on to the source store.
-In case the index representation should always be returned when it exists,
-the mediaRange should be set to "*∕*".Note: this functionality is not yet part of the specification. Relevant issues are:
- -Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Allows using an Initializable as an Initializer Handler.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractInitializer is used to indicate an AsyncHandler that performs initialization logic.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractHandler used for IDP interactions.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-InteractionHandler that only accepts input of which the target matches the stored route.
-Rejects operations that target a different route, -otherwise the input parameters are passed to the source handler.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Returns the required access modes from the source ModesExtractor. -In case create permissions are required, -verifies if any of the containers permissions also need to be created -and adds the corresponding identifier/mode combinations.
-Certain permissions depend on the existence of the target resource. -The provided ResourceSet will be used for that.
-ResourceSet that can verify the target resource existence.
-IdentifierStrategy that will be used to determine parent containers.
-The source ModesExtractor.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-An InteractionHandler that sits in-between -an InteractionHandler and a JsonInteractionHandler. -It converts the input data stream into a JSON object to be used by the stored handler.
-Since the JSON body is only made during the handle call, it can not be used during the canHandle,
-so the canHandle call of the stored handler is not called,
-meaning this class accepts all input that can be converted to JSON.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Uses a JSON file to store key/value pairs.
-Sets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-AbstractA handler that consumes and returns a JSON object, -designed to be used for IDP/OIDC interactions.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Serializes a Notification into a JSON-LD string.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A KeyValueStorage for JSON-like objects using a ResourceStore as backend.
-Creates a base URL by joining the input base URL with the container string. -The storage assumes it has ownership over all entries in the target container -so no other classes should access resources there to prevent issues.
-Assumes the input keys can be safely used to generate identifiers, -which will be appended to the stored base URL.
-All non-404 errors will be re-thrown.
-Protected ReadonlycontainerProtected ReadonlyloggerProtected ReadonlysourceProtectedgetRecursively iterates through the container to find all documents.
-ProtectedidentifierConverts an internal identifier to an external key.
-ProtectedkeyConverts a key into an identifier for internal storage.
-ProtectedsafelyReturns the representation for the given identifier. -Returns undefined if a 404 error is thrown. -Re-throws the error in all other cases.
-Sets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-A simple ShorthandExtractor that extracts a single value from the input map. -Returns the default value if it was defined in case no value was found in the map.
-OptionaldefaultValue: unknownChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Stores all the NotificationChannel in a KeyValueStorage. -Encodes IDs/topics before storing them in the KeyValueStorage.
-Uses a ReadWriteLocker to prevent internal race conditions.
-Adds the given channel to the storage.
-Channel to add.
-Returns the requested channel.
-undefined if no match was found or if the notification channel expired.
The identifier of the notification channel.
-Returns the identifiers of all notification channel entries that have the given identifier as their topic. -The identifiers can potentially correspond to expired channels.
-The identifier that is the topic.
-Updates the given notification channel.
-The id and the topic can not be updated.
The channel to update.
-Wraps around another LoggerFactory that can be set lazily. -This is useful when objects are instantiated (and when they create loggers) -before the logging system has been fully instantiated, -as is the case when using a dependency injection framework such as Components.js.
-Loggers can be created even before a LoggerFactory is set; -any log messages will be buffered and re-emitted.
-OptionalbufferAdds a link to the auxiliary resource when called on the subject resource.
-Specifically:
In case the input is metadata of an auxiliary resource no metadata will be added
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A MetadataWriter that takes a linking metadata predicates to Link header "rel" values. -The values of the objects will be put in a Link header with the corresponding "rel" value.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Represents the values that are parsed as metadata
-The value corresponding to the rel value that will be used as predicate in the metadata.
Optionalephemeral: boolean(Optional) Indicates whether it will be stored by the server.
-OptionalallowList: string[](Optional) Contains the objects that are allowed to be used with the given predicate.
-ReadonlyallowReadonlyephemeralReadonlyvalueAdds the object to the metadata when it is allowed
-The link target.
-Metadata of the resource.
-Logger
-Parses Link headers with a specific rel value and adds them as metadata with the given predicate.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the linking of WebIDs to account, -thereby registering them to the server IDP.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Listens to an ActivityEmitter and calls the stored NotificationHandlers in case of an event -for every matching notification channel found.
-Takes the rate feature into account so only channels that want a new notification will receive one.
Extends StaticHandler so it can be more easily injected into a Components.js configuration. -No class takes this one as input, so to make sure Components.js instantiates it, -it needs to be added somewhere where its presence has no impact, such as the list of initializers.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Transforms an HTTP redirect into a hypermedia document with a redirection link, -such that scripts running in a browser can redirect the user to the next page.
-This handler addresses the situation where:
-Regular HTTP redirects are performed via responses with 3xx status codes. -However, since the consumer of the API in this case is a browser script, -a 3xx response would only reach that script and not move the page for the user.
-Therefore, this handler changes a 3xx response into a 200 response -with an explicit link to the next page, -enabling the script to move the user to the next page.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An InteractionHandler that locks the path generated with the stored route during an operation. -If the route is the base account route, this can be used to prevent multiple operations on the same account.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Store that for every call acquires a lock before executing it on the requested resource, -and releases it afterwards. -In case the request returns a Representation the lock will only be released when the data stream is finished.
-For auxiliary resources the lock will be applied to the subject resource. -The actual operation is still executed on the auxiliary resource.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-ProtectedcreateWraps a representation to make it reset the timeout timer every time data is read.
-The representation to wrap
-Function to call to reset the timer.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-ProtectedgetAcquires the correct identifier to lock this resource. -For auxiliary resources this means the subject identifier.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-ProtectedlockedAcquires a lock that is only released when all data of the resulting representation data has been read, -an error occurs, or the timeout has been triggered. -The resulting data stream will be adapted to reset the timer every time data is read.
-In case the data of the resulting stream is not needed it should be closed to prevent a timeout error.
-Identifier that should be locked.
-Function to be executed while the resource is locked.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-ProtectedwaitSets up the global logger factory.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Responsible for logging a user out. -In practice this means making sure the cookie is no longer valid.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A MetadataWriter that takes a map directly converting metadata predicates to headers. -The header value(s) will be the same as the corresponding object value(s).
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts Markdown data to HTML.
-The generated HTML will be injected into the given template using the parameter htmlBody.
-A standard Markdown string will be converted to a
tag, so html and body tags should be part of the template.
-In case the Markdown body starts with a header (#), that value will also be used as title parameter.
Determines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A KeyValueStorage that hashes keys in case they would be longer than the set limit.
-Hashed keys are prefixed with a certain value to prevent issues with incoming keys that are already hashed.
-The default max length is 150 and the default prefix is $hash$.
This class mostly exists to prevent issues when writing storage entries to disk.
-Keys that are too long would cause issues with the file name limit.
-For this reason, only the part after the last / in a key is hashed, to preserve the expected file structure.
Protected ReadonlyhashProtected ReadonlyloggerProtected ReadonlymaxProtected ReadonlysourceProtectedgetProtectedgetSets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-ProtectedwrapA KeyValueStorage which uses a JavaScript Map for internal storage.
-Sets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-A resource locker making use of the async-lock library.
-Note that all locks are kept in memory until they are unlocked which could potentially result
-in a memory leak if locks are never unlocked, so make sure this is covered with expiring locks for example,
-and/or proper finally handles.
Acquires a lock on the requested identifier. -The promise will resolve when the lock has been acquired.
-Resource to acquire a lock on.
-Releases a lock on the requested identifier. -The promise will resolve when the lock has been released. -If there is no lock on the resource, an error should be thrown.
-Resource to release the lock on.
-AbstractGeneric interface for classes that add metadata to a RepresentationMetadata.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA parser that takes a specific part of an HttpRequest and converts it into metadata, -such as the value of a header entry.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA serializer that converts metadata to headers for an HttpResponse.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Only accepts requests where the input has a (possibly nested) method field
-that matches any one of the given methods.
-In case of a match, the input will be sent to the source handler.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates permissions for the base set of methods that always require the same permissions. -Specifically: GET, HEAD, POST, PUT and DELETE.
-Certain permissions depend on the existence of the target resource. -The provided ResourceSet will be used for that.
-ResourceSet that can verify the target resource existence.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An error thrown when data was found for the requested identifier, but is not supported by the target resource. -Can keep track of the methods that are not allowed.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataReadonlymethodsOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-AbstractExtracts all AccessModes that are necessary to execute the given Operation.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A MetadataWriter that generates all the necessary headers related to the modification date of a resource.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-This initializer simply writes the version number of the server to the storage. -This will be relevant in the future when we look into migration initializers.
-It automatically parses the version number from the package.json.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Store that notifies listeners of changes to its source
-by emitting a changed event.
Alias for emitter.on(eventName, listener).
Synchronously calls each of the listeners registered for the event namedeventName, in the order they were registered, passing the supplied arguments
-to each.
Returns true if the event had listeners, false otherwise.
const EventEmitter = require('events');
const myEmitter = new EventEmitter();
// First listener
myEmitter.on('event', function firstListener() {
console.log('Helloooo! first listener');
});
// Second listener
myEmitter.on('event', function secondListener(arg1, arg2) {
console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
});
// Third listener
myEmitter.on('event', function thirdListener(...args) {
const parameters = args.join(', ');
console.log(`event with parameters ${parameters} in third listener`);
});
console.log(myEmitter.listeners('event'));
myEmitter.emit('event', 1, 2, 3, 4, 5);
// Prints:
// [
// [Function: firstListener],
// [Function: secondListener],
// [Function: thirdListener]
// ]
// Helloooo! first listener
// event with parameters 1, 2 in second listener
// event with parameters 1, 2, 3, 4, 5 in third listener
-
-
-Returns an array listing the events for which the emitter has registered
-listeners. The values in the array are strings or Symbols.
const EventEmitter = require('events');
const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});
const sym = Symbol('symbol');
myEE.on(sym, () => {});
console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
-
-
-Returns the number of listeners listening to the event named eventName.
If listener is provided, it will return how many times the listener
-is found in the list of the listeners of the event.
Returns a copy of the array of listeners for the event named eventName.
server.on('connection', (stream) => {
console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
-
-
-Alias for emitter.removeListener().
Adds the listener function to the end of the listeners array for the
-event named eventName. No checks are made to see if the listener has
-already been added. Multiple calls passing the same combination of eventNameand listener will result in the listener being added, and called, multiple
-times.
server.on('connection', (stream) => {
console.log('someone connected!');
});
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
By default, event listeners are invoked in the order they are added. Theemitter.prependListener() method can be used as an alternative to add the
-event listener to the beginning of the listeners array.
const myEE = new EventEmitter();
myEE.on('foo', () => console.log('a'));
myEE.prependListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
// b
// a
-
-
-Adds a one-timelistener function for the event named eventName. The
-next time eventName is triggered, this listener is removed and then invoked.
server.once('connection', (stream) => {
console.log('Ah, we have our first user!');
});
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
By default, event listeners are invoked in the order they are added. Theemitter.prependOnceListener() method can be used as an alternative to add the
-event listener to the beginning of the listeners array.
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
// b
// a
-
-
-Adds the listener function to the beginning of the listeners array for the
-event named eventName. No checks are made to see if the listener has
-already been added. Multiple calls passing the same combination of eventNameand listener will result in the listener being added, and called, multiple
-times.
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
Adds a one-timelistener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this
-listener is removed, and then invoked.
server.prependOnceListener('connection', (stream) => {
console.log('Ah, we have our first user!');
});
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
Returns a copy of the array of listeners for the event named eventName,
-including any wrappers (such as those created by .once()).
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));
// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];
// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();
// Logs "log once" to the console and removes the listener
logFnWrapper();
emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');
// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
-
-
-Removes all listeners, or those of the specified eventName.
It is bad practice to remove listeners added elsewhere in the code,
-particularly when the EventEmitter instance was created by some other
-component or module (e.g. sockets or file streams).
Returns a reference to the EventEmitter, so that calls can be chained.
Removes the specified listener from the listener array for the event namedeventName.
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
-
-
-removeListener() will remove, at most, one instance of a listener from the
-listener array. If any single listener has been added multiple times to the
-listener array for the specified eventName, then removeListener() must be
-called multiple times to remove each instance.
Once an event is emitted, all listeners attached to it at the
-time of emitting are called in order. This implies that anyremoveListener() or removeAllListeners() calls after emitting and before the last listener finishes execution
-will not remove them fromemit() in progress. Subsequent events behave as expected.
const myEmitter = new MyEmitter();
const callbackA = () => {
console.log('A');
myEmitter.removeListener('event', callbackB);
};
const callbackB = () => {
console.log('B');
};
myEmitter.on('event', callbackA);
myEmitter.on('event', callbackB);
// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
// A
// B
// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
// A
-
-
-Because listeners are managed using an internal array, calling this will
-change the position indices of any listener registered after the listener
-being removed. This will not impact the order in which listeners are called,
-but it means that any copies of the listener array as returned by
-the emitter.listeners() method will need to be recreated.
When a single function has been added as a handler multiple times for a single
-event (as in the example below), removeListener() will remove the most
-recently added instance. In the example the once('ping')listener is removed:
const ee = new EventEmitter();
function pong() {
console.log('pong');
}
ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);
ee.emit('ping');
ee.emit('ping');
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
Optional[captureCreates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-By default EventEmitters will print a warning if more than 10 listeners are
-added for a particular event. This is a useful default that helps finding
-memory leaks. The emitter.setMaxListeners() method allows the limit to be
-modified for this specific EventEmitter instance. The value can be set toInfinity (or 0) to indicate an unlimited number of listeners.
Returns a reference to the EventEmitter, so that calls can be chained.
Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Error used for resources that have been moved permanently. -Methods other than GET may or may not be changed to GET in subsequent requests.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlylocationReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Parses an N3 Patch document and makes sure it conforms to the specification requirements. -Requirements can be found at Solid Protocol, §5.3.1: https://solid.github.io/specification/protocol#n3-patch
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Extracts the required access modes from an N3 Patch.
-Solid, §5.3.1: "When ?conditions is non-empty, servers MUST treat the request as a Read operation. -When ?insertions is non-empty, servers MUST (also) treat the request as an Append operation. -When ?deletions is non-empty, servers MUST treat the request as a Read and Write operation." -https://solid.github.io/specification/protocol#n3-patch
-Certain permissions depend on the existence of the target resource. -The provided ResourceSet will be used for that.
-ResourceSet that can verify the target resource existence.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Applies an N3 Patch to a representation, or creates a new one if required. -Follows all the steps from Solid, §5.3.1: https://solid.github.io/specification/protocol#n3-patch
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Does not do any checks to verify if the agent doing the request is actually the owner of the WebID. -This should only be used for debugging.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An error thrown when no data was found for the requested identifier.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-The server either does not recognize the request method, or it lacks the ability to fulfil the request. -Usually this implies future availability (e.g., a new feature of a web-service API).
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Outputs quads describing all the subscription services of the server, -as described in https://solidproject.org/TR/2022/notifications-protocol-20221231#discovery and -https://solidproject.org/TR/2022/notifications-protocol-20221231#description-resource-data-model.
-In the future, if there is ever a need to add notification channels to the description resource as described above, -this functionality should probably be added here as well.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractEmits a serialized Notification to the channel.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractCreates a Notification based on the provided input.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractMakes sure an activity gets emitted to the relevant channel.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractConverts a Notification into a Representation that can be transmitted.
-This is a separate class between a generator and emitter, -so that a specific notification channel type can add extra metadata to the Representation if needed.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles notification subscriptions by creating a notification channel.
-Uses the information from the provided NotificationChannelType to validate the input -and verify the request has the required permissions available. -If successful the generated channel will be stored in a NotificationChannelStorage.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Allows clients to unsubscribe from notification channels.
-Should be wrapped in a route handler that only allows DELETE operations.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Represents on OAuth error that is being thrown. -OAuth error responses have additional fields that need to be present in the JSON response, -as described in RFC 6749, §4.1.2.1.
-Optionalname: stringOptionalstatusCode: numberOptionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymandatoryReadonlymetadataOptionalstackReadonlystatusStatic OptionalprepareOptional override for formatting stack traces
-StaticstackProtectedgenerateStaticcaptureStaticisA ControlHandler that only returns results if there is an active OIDC interaction.
-Optionalsource: JsonInteractionHandler<Dict<Json>>Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedgenerateProtectedgenerateGenerate the controls for all the stored keys.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedisProtectedmergeHTTP handler that redirects all requests to the OIDC library.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Corresponds to a 200 or 206 response, containing relevant metadata and potentially data. -A 206 will be returned if range metadata is found in the metadata object.
-Metadata concerning the response.
-Optionaldata: Guarded<Readable>Potential data.
-AbstractHandler for a specific operation type.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractAn HTTP handler that makes use of an already parsed Operation.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A BaseRouterHandler for an OperationHttpHandler.
-Protected ReadonlyallProtected ReadonlyallowedProtected ReadonlyallowedProtected ReadonlybaseProtected ReadonlyhandlerChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedcanHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Reconstructs the original URL of an incoming HttpRequest.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Adds link headers indicating who the owners are when accessing the base URL of a pod. -Only owners that have decided to be visible will be shown.
-Solid, §4.1: "When a server wants to advertise the owner of a storage, -the server MUST include the Link header with rel="http://www.w3.org/ns/solid/terms#owner" -targeting the URI of the owner in the response of HTTP HEAD or GET requests targeting the root container." -https://solidproject.org/TR/2022/protocol-20221231#server-storage-link-owner
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Allows control access if the request is being made by an owner of the pod containing the resource.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedfindProtectedfindFinds all pods that contain the given identifiers. -Return value is a record where the keys are the identifiers and the values the associated pod.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA class that validates if a someone owns a WebId. -Will throw an error if the WebId is not valid or ownership could not be validated. -The error message should contain a description of what is wrong and how it can be resolved.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A composite handler that executes handlers in parallel.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Determines delete and create permissions for those resources that need it
-by making sure the parent container has the required permissions.
Create requires append permissions on the parent container.
-Delete requires write permissions on both the parent container and the resource itself.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Parses requests and sends the resulting Operation to the wrapped OperationHttpHandler. -Errors are caught and handled by the ErrorHandler. -In case the OperationHttpHandler returns a result it will be sent to the ResponseWriter.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-ProtectedhandleHandles the error output correctly based on the preferences.
-ProtectedhandleInterprets the request and passes the generated Operation object to the stored OperationHttpHandler.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A BaseReadWriteLocker that stores the counter and its associated locks in memory. -The consequence of this is that multiple read requests are possible as long as they occur on the same worker thread. -A read request from a different worker thread will have to wait -until those from the current worker thread are finished.
-The main reason for this class is due to the file locker that we use only allowing locks to be released -by the same worker thread that acquired them.
-ProtectedgetGenerate the identifier that will be used to acquire the count lock for the given identifier.
-There will be cases where this lock needs to be acquired
-while an active lock on the main resource is still being maintained.
-This means that if the input resourceLocker and countLocker use the same locking system
-this generated identifier needs to be different.
ProtectedmodifyUpdate the counter that keeps track of having open read locks there currently are.
-Identifier on which to update the number of read locks.
-+1 or -1.
ProtectedwithAcquires a new lock for the requested identifier. -Will resolve when the input function resolves.
-Identifier of resource that needs to be locked.
-Function to resolve while the resource is locked.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that only require reading the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that could modify the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-OIDC Adapter that calls the corresponding functions of the source Adapter. -Can be extended by adapters that do not want to override all functions -by implementing a decorator pattern.
-A factory that generates an Adapter to be used by the IDP to persist information.
The oidc-provider library will call the relevant functions when it needs to find/create/delete metadata.
-For a full explanation of how these functions work and what is expected,
-have a look at https://github.com/panva/node-oidc-provider/blob/main/example/my_adapter.js
A RepresentationConverter that does not perform any conversion.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-DataAccessor that calls the corresponding functions of the source DataAccessor. -Can be extended by data accessors that do not want to override all functions -by implementing a decorator pattern.
-Should throw a NotImplementedHttpError if the DataAccessor does not support storing the given Representation.
-Incoming Representation.
-Deletes the resource and its corresponding metadata.
-Solid, §5.4: "When a contained resource is deleted, the server MUST also remove the corresponding containment -triple, which has the effect of removing the deleted resource from the containing container." -https://solid.github.io/specification/protocol#deleting-resources
-Resource to delete.
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Returns a data stream stored for the given identifier. -It can be assumed that the incoming identifier will always correspond to a document.
-Identifier for which the data is requested.
-Returns the metadata corresponding to the identifier.
-If possible, it is suggested to add a posix:size triple to the metadata indicating the binary size.
-This is necessary for range requests.
Identifier for which the metadata is requested.
-Writes metadata for a container. -If the container does not exist yet it should be created, -if it does its metadata should be overwritten, except for the containment triples.
-Identifier of the container.
-Metadata to store.
-Writes data and metadata for a document. -If any data and/or metadata exist for the given identifier, it should be overwritten.
-Identifier of the resource.
-Data to store.
-Metadata to store.
-Writes metadata for a resource. -It can safely be assumed that the subject resource already exists.
-Identifier of the subject resource.
-Metadata to store.
-AbstractAbstract class to create a KeyValueStorage by wrapping around another one.
-Exposes abstract functions to modify the key before passing it to the the source storage.
-ProtectedconstructorSets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-Protected AbstracttoProtected AbstracttoStore that calls the corresponding functions of the source Store. -Can be extended by stores that do not want to override all functions -by implementing a decorator pattern.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Handles the submission of the Login Form and logs the user in.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Takes the necessary steps to log a user in.
-Same input that was passed to the handle function.
-ProtectedupdateUpdates the account setting that determines whether the login status needs to be remembered.
-ID of the account.
-Optionalremember: booleanIf the account should be remembered or not. The setting will not be updated if this is undefined.
-AbstractExecutes the given Patch.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles PATCH Operations. -Calls the modifyResource function from a ResourceStore.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ResourceStore using decorator pattern for the modifyResource function.
-If the original store supports the Patch, behaviour will be identical,
-otherwise the PatchHandler will be called instead.
Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Redirects requests to specific PermissionReaders based on their identifier. -The keys are regular expression strings. -The regular expressions should all start with a slash -and will be evaluated relative to the base URL.
-Will error if no match is found.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Authorizer that bases its decision on the output it gets from its PermissionReader.
-For each permission it checks if the reader allows that for at least one credential type,
-if yes, authorization is granted.
-undefined values for reader results are interpreted as false.
The existence of the target resource determines the output status code for certain situations. -The provided ResourceSet will be used for that.
-ResourceSet that can verify the target resource existence.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractDiscovers the permissions of the given credentials on the given identifier. -If the reader finds no permission for the requested identifiers and credentials, -it can return an empty or incomplete map.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Allows users to choose which WebID they want to authenticate as during an OIDC interaction.
-One of the main reason picking a WebID is a separate class/request from consenting to the OIDC interaction, -is because the OIDC-provider will only give the information we need for consent -once we have added an accountId to the OIDC interaction, which we do in this class. -The library also really wants to use that accountId as the value that you use for generating the tokens, -meaning we can't just use another value there, so we need to assign the WebID to it, -unless we use a hacky workaround.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Filter that errors on JSON-LD with a plain application/json content-type. -This will not store metadata, only throw errors if necessary.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractHandles creating a pod and linking the created WebID.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-The PodQuotaStrategy sets a limit on the amount of data stored on a per pod basis
-Get a Passthrough stream that will keep track of the available space. -If the quota is exceeded the stream will emit an error and destroy itself. -Like other Passthrough instances this will simply pass on the chunks, when the quota isn't exceeded.
-the identifier of the resource in question
-a Passthrough instance that errors when quota is exceeded
-Get an estimated size of the resource
-the metadata that might include the size
-a Size object containing the estimated size and unit of the resource
-Get the available space when writing data to the given identifier. -If the given resource already exists it will deduct the already taken up -space by that resource since it is going to be overwritten and thus counts -as available space.
-the identifier of the resource of which you want the available space
-the available space and the unit of the space as a Size object
-ProtectedgetGet the currently used/occupied space.
-the identifier that should be used to calculate the total
-a Size object containing the requested value. -If quota is not relevant for this identifier, Size.amount should be Number.MAX_SAFE_INTEGER
-A StorageLocationStrategy to be used when the server has pods which each are a different storage. -The IdentifierGenerator that is used to generate URLs for the pods -is used here to determine what the root pod URL is.
-Returns the identifier of the storage that contains the given resource. -Can error if the input identifier is not part of any storage.
-Handles POST Operations. -Calls the addResource function from a ResourceStore.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An error thrown when access was denied due to the conditions on the request.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-AbstractCreates RepresentationPreferences based on the incoming HTTP headers in a HttpRequest.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Helper class that checks if the stored RepresentationConverter and RepresentationPreferences -support the given input RepresentationPreferences and Representation.
-Creates a new object by combining the input arguments together with the stored preferences and checks -if the converter can handle that object.
-A wrapper handler that will only run the wrapped handler if it is executed from:
-Creates a new ProcessHandler
-The wrapped handler
-The ClusterManager in use
-Whether to execute the source handler when the process is the primary or a worker.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractUsed to generate custom interactionPolicy.Prompts.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Redirects requests based on the OIDC Interaction prompt. -Errors in case no match was found.
-The reason we use this intermediate handler -instead of letting the OIDC library redirect directly to the correct page, -is because that library creates a cookie with of scope of the target page. -By having the library always redirect to the index page, -the cookie is relevant for all pages and other pages can see if we are still in an interaction.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Extracts the "public credentials", to be used for data everyone has access to. -This class mainly exists so a Credentials is still generated in case the token parsing fails.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles PUT Operations. -Calls the setRepresentation function from a ResourceStore.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts internal/quads to most major RDF serializations.
OptionaloutputDetermines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA QuotaStrategy is used when we want to set a limit to the amount of data that can be -stored on the server. -This can range from a limit for the whole server to a limit on a per pod basis. -The way the size of a resource is calculated is implemented by the implementing classes. -This can be bytes, quads, file count, ...
-ProtectedconstructorGet a Passthrough stream that will keep track of the available space. -If the quota is exceeded the stream will emit an error and destroy itself. -Like other Passthrough instances this will simply pass on the chunks, when the quota isn't exceeded.
-the identifier of the resource in question
-a Passthrough instance that errors when quota is exceeded
-Get an estimated size of the resource
-the metadata that might include the size
-a Size object containing the estimated size and unit of the resource
-Get the available space when writing data to the given identifier. -If the given resource already exists it will deduct the already taken up -space by that resource since it is going to be overwritten and thus counts -as available space.
-the identifier of the resource of which you want the available space
-the available space and the unit of the space as a Size object
-Protected AbstractgetGet the currently used/occupied space.
-the identifier that should be used to calculate the total
-a Size object containing the requested value. -If quota is not relevant for this identifier, Size.amount should be Number.MAX_SAFE_INTEGER
-The QuotaValidator validates data streams by making sure they would not exceed the limits of a QuotaStrategy.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates the necessary content-range header if there is range metadata.
-If the start or end is unknown, a * will be used instead.
-According to the RFC, this is incorrect,
-but is all we can do as long as we don't know the full length of the representation in advance.
-For the same reason, the total length of the representation will always be *.
This class also adds the content-length header. -This will contain either the full size for standard requests, -or the size of the slice for range requests.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An error thrown when the requested range is not supported.
-Default message is 'The requested range is not supported.'.
-Optionalmessage: stringOptional, more specific, message.
-Optionaloptions: HttpErrorOptionsOptional error options.
-Optional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Parses the range header into range preferences.
-If the range corresponds to a suffix-length range, it will be stored in start as a negative value.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts incoming HttpRequest to a Representation without any further parsing.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Patcher that converts the representation data to a representation with an N3 store, does the patch using this store -and then converts the representation with store back to a representation with data which gets returned
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractApplies a Patch on an N3.js Store.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Converts most major RDF serializations to internal/quads.
Custom contexts can be defined to be used when parsing JSON-LD. -The keys of the object should be the URL of the context, -and the values the file path of the contexts to use when the JSON-LD parser would fetch the given context. -We use filepaths because embedding them directly into the configurations breaks Components.js.
-Determines whether the given conversion request is supported, -given the available content type conversions:
-Matches all inputs to all outputs.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Validates a Representation by verifying if the data stream contains valid RDF data. -It does this by letting the stored RepresentationConverter convert the data.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Store that only allow read operations on the underlying source.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Helper class for instantiating multiple objects with Components.js. -See https://github.com/LinkedSoftwareDependencies/Components.js/issues/26
-An error corresponding to a 3xx status code. -Includes the location it redirects to.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlylocationReadonlymetadataOptionalstackReadonlystatusStatic OptionalprepareOptional override for formatting stack traces
-StaticstackProtectedgenerateStaticcaptureStaticisInternally we create redirects by throwing specific RedirectHttpErrors. -This Error handler converts those to RedirectResponseDescriptions that are used for output.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handler that redirects paths matching given patterns -to their corresponding URL, substituting selected groups.
-Creates a handler for the provided redirects.
-A mapping between URL patterns.
-Base URL of the server.
-To extract the target from the request.
-To write the redirect to the response.
-Desired 30x redirection code (defaults to 308).
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A Redis Locker that can be used as both:
-The Read Write algorithm roughly goes as follows:
-The Resource locking algorithm uses a single mutex/lock.
-All operations, such as checking for a write lock AND read count, are executed in a single Lua script. -These scripts are used by Redis as a single new command. -Redis executes its operations in a single thread, as such, each such operation can be considered atomic.
-The operation to (un)lock will always resolve with either 1/OK/true if succeeded or 0/false if not succeeded. -Rejection with errors will be happen on actual failures. Retrying the (un)lock operations will be done by making -use of the LockUtils' retryFunctionUntil function.
-Creates a new RedisClient
-Redis connection string of a standalone Redis node
-Override default AttemptSettings
-OptionalredisSettings: RedisSettingsAddition settings used to create the Redis client or to interact with the Redis server
-Acquires a lock on the requested identifier. -The promise will resolve when the lock has been acquired.
-Resource to acquire a lock on.
-Releases a lock on the requested identifier. -The promise will resolve when the lock has been released. -If there is no lock on the resource, an error should be thrown.
-Resource to release the lock on.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that only require reading the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that could modify the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Routes requests to a store based on the path of the identifier.
-The identifier will be stripped of the base URI after which regexes will be used to find the correct store.
-The trailing slash of the base URI will still be present so the first character a regex can match would be that /.
-This way regexes such as /container/ can match containers in any position.
In case none of the regexes match an error will be thrown.
-The keys of the storeMap will be converted into actual RegExp objects that will be used for testing.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-Optionalrepresentation?: RepresentationA promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-Optionalrepresentation?: RepresentationA promise resolving if the input can be handled, rejecting with an Error if not.
-Utility class to easily configure Regex to ResourceStore mappings in the config files.
-A route that is relative to another route. -The relative path will be joined to the input base, -which can either be an absolute URL or an InteractionRoute of which the path will be used.
-Returns the path that is the result of having the specified values for the dynamic parameters.
-Will throw an error in case the input parameters object is missing one of the expected keys.
Optionalparameters: Record<TBase, string>Values for the dynamic parameters.
-Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-The path to verify.
-AbstractConverts a Representation from one media type to another, based on the given preferences.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Store that provides (optional) conversion of incoming and outgoing Representations.
-Store we retrieve data from and send data to.
-Used to distinguish regular resources (which may be converted) -from metadata resources (which always need conversion).
-Determines when data should be converted.
-OptionalinConverts data before passing to the source store.
-OptionalinThe preferred input format for the source store, as passed to the inConverter.
-OptionaloutConverts data after retrieval from the source store.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Stores the metadata triples and provides methods for easy access. -Most functions return the metadata object to allow for chaining.
-Optionalidentifier: MetadataIdentifierIdentifier of the resource relevant to this metadata. -A blank node will be generated if none is provided. -Strings will be converted to named nodes.
-Optionaloverrides: MetadataRecordKey/value map of extra values that need to be added to the metadata.
-Optionalmetadata: RepresentationMetadataStarts as a copy of the input metadata.
-Optionaloverrides: MetadataRecordKey/value map of extra values that need to be added to the metadata. -Will override values that were set by the input metadata.
-Optionalidentifier: MetadataIdentifierIdentifier of the resource relevant to this metadata.
-OptionalcontentType: string | ContentTypeOverride for the content type of the representation.
-Optionalmetadata: RepresentationMetadataStarts as a copy of the input metadata.
-OptionalcontentType: string | ContentTypeOverride for the content type of the representation.
-OptionalcontentType: string | ContentTypeThe content type of the representation.
-Optionalmetadata: string | MetadataRecord | RepresentationMetadataMetadata values (defaulting to content type if a string)
-Shorthand for the CONTENT_LENGTH predicate.
-Shorthand for the CONTENT_TYPE predicate.
-Shorthand for the ContentType as an object (with parameters)
-Identifier of the resource this metadata is relevant to. -Will update all relevant triples if this value gets changed.
-Adds a value linked to the identifier. Strings get converted to literals.
-Predicate linking identifier to value.
-Value(s) to add.
-Optionalgraph: MetadataGraphOptional graph of where to add the values to.
-Subject of quad to add.
-Predicate of quad to add.
-Object of quad to add.
-Optionalgraph: MetadataGraphOptional graph of quad to add.
-Predicate to get the value for.
-Optionalgraph: MetadataGraphOptional graph where the triple should be found.
-The corresponding value. Undefined if there is no match
-Finds all object values matching the given predicate and/or graph.
-Optional predicate to get the values for.
-Optionalgraph: MetadataGraphOptional graph where to get from.
-An array with all matches.
-Verifies if a specific triple can be found in the metadata. -Undefined parameters are interpreted as wildcards.
-All matching metadata quads.
-Removes the given value from the metadata. Strings get converted to literals.
-Predicate linking identifier to value.
-Value(s) to remove.
-Optionalgraph: MetadataGraphOptional graph of where to remove the values from.
-Removes all values linked through the given predicate.
-Predicate to remove.
-Optionalgraph: MetadataGraphOptional graph where to remove from.
-Subject of quad to remove.
-Predicate of quad to remove.
-Object of quad to remove.
-Optionalgraph: MetadataGraphOptional graph of quad to remove.
-Sets the value for the given predicate, removing all other instances.
-In case the object is undefined this is identical to removeAll(predicate).
Predicate linking to the value.
-Optionalobject: MetadataValueValue(s) to set.
-Optionalgraph: MetadataGraphOptional graph where the triple should be stored.
-Helper function to import all entries from the given metadata. -If the new metadata has a different identifier the internal one will be updated.
-Metadata to import.
-Handles a patch operation by getting the representation from the store, applying a RepresentationPatcher,
-and then writing the result back to the store.
In case there is no original representation (the store throws a NotFoundHttpError),
-the patcher is expected to create a new one.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractHandles the patching of a specific Representation.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractConverts an incoming HttpRequest to an Operation.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Resets a password if a valid recordId is provided,
-which should have been generated by a different handler.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Corresponds to a 205 response.
-AbstractA handler that takes care of all the necessary steps when logging a user in,
-such as generating a cookie and setting the necessary OIDC information.
-Classes that resolve login methods should extend this class and implement the login method.
ProtectedconstructorChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractloginTakes the necessary steps to log a user in.
-Same input that was passed to the handle function.
-ProtectedupdateUpdates the account setting that determines whether the login status needs to be remembered.
-ID of the account.
-Optionalremember: booleanIf the account should be remembered or not. The setting will not be updated if this is undefined.
-The result of executing an operation.
-Status code to return.
-Optionalmetadata: RepresentationMetadataMetadata corresponding to the response (and data potentially).
-Optionaldata: Guarded<Readable>Data that needs to be returned.
-AbstractWrites the ResponseDescription to the HttpResponse.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Uses a FileIdentifierMapper to generate a root file path variable based on the identifier. -Will throw an error if the resulting file path already exists.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A StorageLocationStrategy to be used when the server has one storage in the root container of the server.
-Returns the identifier of the storage that contains the given resource. -Can error if the input identifier is not part of any storage.
-A BaseRouterHandler for an HttpHandler. -Uses a TargetExtractor to generate the target identifier.
-Protected ReadonlyallProtected ReadonlyallowedProtected ReadonlyallowedProtected ReadonlybaseProtected ReadonlyhandlerChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedcanHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractFinds which store needs to be accessed for the given resource, -potentially based on the Representation of incoming data.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-Optionalrepresentation?: RepresentationA promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-Optionalrepresentation?: RepresentationA promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-Optionalrepresentation?: RepresentationA promise resolving if the input can be handled, rejecting with an Error if not.
-An AuxiliaryIdentifierStrategy that combines multiple AuxiliaryIdentifierStrategies into one.
-Uses isAuxiliaryIdentifier to know which strategy to route to.
Returns the identifier of the auxiliary resource corresponding to the given resource. -This does not guarantee that this auxiliary resource exists.
-Should error if there are multiple results: see getAuxiliaryIdentifiers.
-The ResourceIdentifier of the corresponding auxiliary resource.
-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 getAuxiliaryIdentifier.
-The ResourceIdentifier of which we need the corresponding auxiliary resources.
-The ResourceIdentifiers of the corresponding auxiliary resources.
-ProtectedgetReturns the identifier of the resource which this auxiliary resource is referring to. -This does not guarantee that this resource exists.
-Identifier of the auxiliary resource.
-The ResourceIdentifier of the subject resource.
-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.
-Identifier to check.
-true if the input identifier points to an auxiliary resource.
-An AuxiliaryStrategy that combines multiple AuxiliaryStrategies into one.
-Uses isAuxiliaryIdentifier to know which strategy to call for which call.
addMetadata will either call all strategies if the input is the subject identifier,
-or only the matching strategy if the input is an auxiliary identifier.
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.
-Used for: -Solid, §4.3.1: "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." -https://solid.github.io/specification/protocol#auxiliary-resources-server
-The above is an example of how that metadata would only be added in case the input is the subject identifier.
-Metadata to update.
-Returns the identifier of the auxiliary resource corresponding to the given resource. -This does not guarantee that this auxiliary resource exists.
-Should error if there are multiple results: see getAuxiliaryIdentifiers.
-The ResourceIdentifier of the corresponding auxiliary resource.
-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 getAuxiliaryIdentifier.
-The ResourceIdentifier of which we need the corresponding auxiliary resources.
-The ResourceIdentifiers of the corresponding auxiliary resources.
-ProtectedgetReturns the identifier of the resource which this auxiliary resource is referring to. -This does not guarantee that this resource exists.
-Identifier of the auxiliary resource.
-The ResourceIdentifier of the subject resource.
-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.
-Identifier to check.
-true if the input identifier points to an auxiliary resource.
-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.
-Identifier of the auxiliary resource.
-Whether this auxiliary resources uses its own authorization instead of the subject resource authorization.
-Identifier of the auxiliary resource.
-Validates if the representation contains valid data for an auxiliary resource. -Should throw an error in case the data is invalid.
-Representation of the auxiliary resource.
-Store that routes the incoming request to a specific store based on the stored ResourceRouter. -In case no store was found for one of the functions that take no data (GET/PATCH/DELETE), -a 404 will be thrown. In the other cases the error of the router will be thrown (which would probably be 400).
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Returns a simple text description of an error. -This class is a failsafe in case the wrapped error handler fails.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Initializes a set of accounts based on the input data. -These accounts have exactly 1 email/password login method, and 0 or more pods. -The pod settings that can be defined are identical to those of the CreatePodHandler.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A composite handler that will try to run all supporting handlers sequentially
-and return the value of the last supported handler.
-The canHandle check of this handler will always succeed.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractConfigures a Server by attaching listeners for specific events.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Creates and starts an HTTP server.
-Optionalport: numberOptionalsocketPath: stringChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA handler that computes a specific value from a given map of values.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractConverts a key/value object, extracted from the CLI or passed as a parameter, -into a new key/value object where the keys are variables defined in the Components.js configuration. -The resulting values are the values that should be assigned to those variables.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A variant of a JsonResourceStorage where the entries() call
-does not recursively iterate through all containers.
-Only the documents that are found in the root container are returned.
This class was created to support migration where different storages are nested in one main .internal container,
-and we specifically want to only return entries of one storage.
Protected ReadonlycontainerProtected ReadonlyloggerProtected ReadonlysourceProtectedgetRecursively iterates through the container to find all documents.
-ProtectedidentifierConverts an internal identifier to an external key.
-ProtectedkeyConverts a key into an identifier for internal storage.
-ProtectedsafelyReturns the representation for the given identifier. -Returns undefined if a 404 error is thrown. -Re-throws the error in all other cases.
-Sets the value for the given key.
-Key to set/update.
-Value to store.
-The storage.
-An IdentifierStrategy that assumes there is only 1 root and all other identifiers are made by appending to that root.
-Checks if the given container would contain the given identifier. -This does not check that either of these identifiers actually exist. -This is similar to calling getParentContainer on an identifier -and comparing the result.
-If transitive is false this only checks if container is the direct parent container of identifier.
Generates the identifier of the container this resource would be a member of. -This does not check if that identifier actually exists. -Will throw an error if the input identifier is a root container or is not supported.
-Checks if the input corresponds to the identifier of a root container. -This does not check if this identifier actually exists.
-Verifies if this identifier is supported. -This does not check if this identifier actually exists, -but checks if the identifier is in scope for this class.
-A stream that slices a part out of another stream.
-start and end are inclusive.
-If end is not defined it is until the end of the stream.
Negative start values can be used to instead slice that many streams off the end of the stream.
-This requires the size field to be defined.
Both object and non-object streams are supported. -This needs to be explicitly specified, -as the class makes no assumptions based on the object mode of the source stream.
-If false then the stream will automatically end the writable side when the
-readable side ends. Set initially by the allowHalfOpen constructor option,
-which defaults to false.
This can be changed manually to change the half-open behavior of an existingDuplex stream instance, but must be changed before the 'end' event is
-emitted.
ReadonlyclosedIs true after 'close' has been emitted.
-Is true after readable.destroy() has been called.
ReadonlyerroredReturns error if the stream has been destroyed with an error.
-Is true if it is safe to call readable.read(), which means
-the stream has not been destroyed or emitted 'error' or 'end'.
Readonly ExperimentalreadableReturns whether the stream was destroyed or errored before emitting 'end'.
Readonly ExperimentalreadableReturns whether 'data' has been emitted.
ReadonlyreadableGetter for the property encoding of a given Readable stream. The encodingproperty can be set using the readable.setEncoding() method.
ReadonlyreadableBecomes true when 'end' event is emitted.
ReadonlyreadableThis property reflects the current state of a Readable stream as described
-in the Three states section.
ReadonlyreadableReturns the value of highWaterMark passed when creating this Readable.
ReadonlyreadableThis property contains the number of bytes (or objects) in the queue
-ready to be read. The value provides introspection data regarding
-the status of the highWaterMark.
ReadonlyreadableGetter for the property objectMode of a given Readable stream.
ProtectedremainingProtectedremainingProtected ReadonlysourceReadonlywritableIs true if it is safe to call writable.write(), which means
-the stream has not been destroyed, errored or ended.
ReadonlywritableNumber of times writable.uncork() needs to be
-called in order to fully uncork the stream.
ReadonlywritableIs true after writable.end() has been called. This property
-does not indicate whether the data has been flushed, for this use writable.writableFinished instead.
ReadonlywritableIs set to true immediately before the 'finish' event is emitted.
ReadonlywritableReturn the value of highWaterMark passed when creating this Writable.
ReadonlywritableThis property contains the number of bytes (or objects) in the queue
-ready to be written. The value provides introspection data regarding
-the status of the highWaterMark.
ReadonlywritableIs true if the stream's buffer has been full and stream will emit 'drain'.
ReadonlywritableGetter for the property objectMode of a given Writable stream.
Static ReadonlycaptureStaticcaptureSets or gets the default captureRejection value for all emitters.
-StaticdefaultStatic ReadonlyerrorThis symbol shall be used to install a listener for only monitoring 'error'
-events. Listeners installed using this symbol are called before the regular
-'error' listeners are called.
Installing a listener using this symbol does not change the behavior once an
-'error' event is emitted, therefore the process will still crash if no
-regular 'error' listener is installed.
Optional[captureOptional_constructOptional_writevEvent emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Event emitter -The defined events on documents including:
-Rest...args: any[]This method returns a new stream with chunks of the underlying stream paired with a counter
-in the form [index, chunk]. The first index value is 0 and it increases by 1 for each chunk produced.
Optionaloptions: Pick<ArrayOptions, "signal">a stream of indexed pairs.
-ProtectedbinaryProtectedcheckThe writable.cork() method forces all written data to be buffered in memory.
-The buffered data will be flushed when either the uncork or end methods are called.
The primary intent of writable.cork() is to accommodate a situation in which
-several small chunks are written to the stream in rapid succession. Instead of
-immediately forwarding them to the underlying destination, writable.cork()buffers all the chunks until writable.uncork() is called, which will pass them
-all to writable._writev(), if present. This prevents a head-of-line blocking
-situation where data is being buffered while waiting for the first small chunk
-to be processed. However, use of writable.cork() without implementingwritable._writev() may have an adverse effect on throughput.
See also: writable.uncork(), writable._writev().
Destroy the stream. Optionally emit an 'error' event, and emit a 'close'event (unless emitClose is set to false). After this call, the readable
-stream will release any internal resources and subsequent calls to push()will be ignored.
Once destroy() has been called any further calls will be a no-op and no
-further errors except from _destroy() may be emitted as 'error'.
Implementors should not override this method, but instead implement readable._destroy().
Optionalerror: ErrorError which will be passed as payload in 'error' event
This method returns a new stream with the first limit chunks dropped from the start.
-the number of chunks to drop from the readable.
-Optionaloptions: Pick<ArrayOptions, "signal">a stream with limit chunks dropped from the start.
-Rest...args: any[]Calling the writable.end() method signals that no more data will be written
-to the Writable. The optional chunk and encoding arguments allow one
-final additional chunk of data to be written immediately before closing the
-stream.
Calling the write method after calling end will raise an error.
-// Write 'hello, ' and then end with 'world!'.
const fs = require('fs');
const file = fs.createWriteStream('example.txt');
file.write('hello, ');
file.end('world!');
// Writing more now is not allowed!
-
-
-Optionalcb: (() => void)Calling the writable.end() method signals that no more data will be written
-to the Writable. The optional chunk and encoding arguments allow one
-final additional chunk of data to be written immediately before closing the
-stream.
Calling the write method after calling end will raise an error.
-// Write 'hello, ' and then end with 'world!'.
const fs = require('fs');
const file = fs.createWriteStream('example.txt');
file.write('hello, ');
file.end('world!');
// Writing more now is not allowed!
-
-
-Optional data to write. For streams not operating in object mode, chunk must be a string, Buffer or Uint8Array. For object mode streams, chunk may be any
-JavaScript value other than null.
Optionalcb: (() => void)Calling the writable.end() method signals that no more data will be written
-to the Writable. The optional chunk and encoding arguments allow one
-final additional chunk of data to be written immediately before closing the
-stream.
Calling the write method after calling end will raise an error.
-// Write 'hello, ' and then end with 'world!'.
const fs = require('fs');
const file = fs.createWriteStream('example.txt');
file.write('hello, ');
file.end('world!');
// Writing more now is not allowed!
-
-
-Optional data to write. For streams not operating in object mode, chunk must be a string, Buffer or Uint8Array. For object mode streams, chunk may be any
-JavaScript value other than null.
Optionalencoding: BufferEncodingThe encoding if chunk is a string
Optionalcb: (() => void)Returns an array listing the events for which the emitter has registered
-listeners. The values in the array are strings or Symbols.
const EventEmitter = require('events');
const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});
const sym = Symbol('symbol');
myEE.on(sym, () => {});
console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
-
-
-This method is similar to Array.prototype.every and calls fn on each chunk in the stream
-to check if all awaited return values are truthy value for fn. Once an fn call on a chunk
-awaited return value is falsy, the stream is destroyed and the promise is fulfilled with false.
-If all of the fn calls on the chunks return a truthy value, the promise is fulfilled with true.
a function to call on each chunk of the stream. Async or not.
-Optionaloptions: Pick<ArrayOptions, "signal">Optionaloptions: ArrayOptionsa promise evaluating to true if fn returned a truthy value for every one of the chunks.
This method allows filtering the stream. For each chunk in the stream the fn function will be called
-and if it returns a truthy value, the chunk will be passed to the result stream.
-If the fn function returns a promise - that promise will be awaited.
a function to filter chunks from the stream. Async or not.
-Optionaloptions: Pick<ArrayOptions, "signal">Optionaloptions: ArrayOptionsa stream filtered with the predicate fn.
-This method is similar to Array.prototype.find and calls fn on each chunk in the stream
-to find a chunk with a truthy value for fn. Once an fn call's awaited return value is truthy,
-the stream is destroyed and the promise is fulfilled with value for which fn returned a truthy value.
-If all of the fn calls on the chunks return a falsy value, the promise is fulfilled with undefined.
a promise evaluating to the first chunk for which fn evaluated with a truthy value,
-or undefined if no element was found.
Optionaloptions: Pick<ArrayOptions, "signal">Optionaloptions: ArrayOptionsThis method returns a new stream by applying the given callback to each chunk of the stream -and then flattening the result.
-It is possible to return a stream or another iterable or async iterable from fn and the result streams -will be merged (flattened) into the returned stream.
-a function to map over every chunk in the stream. May be async. May be a stream or generator.
-Optionaloptions: Pick<ArrayOptions, "signal">Optionaloptions: ArrayOptionsa stream flat-mapped with the function fn.
-This method allows iterating a stream. For each chunk in the stream the fn function will be called.
-If the fn function returns a promise - that promise will be awaited.
This method is different from for await...of loops in that it can optionally process chunks concurrently.
-In addition, a forEach iteration can only be stopped by having passed a signal option
-and aborting the related AbortController while for await...of can be stopped with break or return.
-In either case the stream will be destroyed.
This method is different from listening to the 'data' event in that it uses the readable event
-in the underlying machinary and can limit the number of concurrent fn calls.
a function to call on each chunk of the stream. Async or not.
-Optionaloptions: Pick<ArrayOptions, "signal">Optionaloptions: ArrayOptionsa promise for when the stream has finished.
-Returns the current max listener value for the EventEmitter which is either
-set by emitter.setMaxListeners(n) or defaults to defaultMaxListeners.
The readable.isPaused() method returns the current operating state of theReadable. This is used primarily by the mechanism that underlies thereadable.pipe() method. In most
-typical cases, there will be no reason to
-use this method directly.
const readable = new stream.Readable();
readable.isPaused(); // === false
readable.pause();
readable.isPaused(); // === true
readable.resume();
readable.isPaused(); // === false
-
-
-The iterator created by this method gives users the option to cancel the destruction
-of the stream if the for await...of loop is exited by return, break, or throw,
-or if the iterator should destroy the stream if the stream emitted an error during iteration.
Optionaloptions: { OptionaldestroyWhen set to false, calling return on the async iterator,
-or exiting a for await...of iteration using a break, return, or throw will not destroy the stream.
-Default: true.
Returns the number of listeners listening to the event named eventName.
If listener is provided, it will return how many times the listener
-is found in the list of the listeners of the event.
The name of the event being listened for
-Optionallistener: FunctionThe event handler function
-Returns a copy of the array of listeners for the event named eventName.
server.on('connection', (stream) => {
console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
-
-
-This method allows mapping over the stream. The fn function will be called for every chunk in the stream.
-If the fn function returns a promise - that promise will be awaited before being passed to the result stream.
a function to map over every chunk in the stream. Async or not.
-Optionaloptions: Pick<ArrayOptions, "signal">Optionaloptions: ArrayOptionsa stream mapped with the function fn.
-ProtectedobjectRest...args: any[]Rest...args: any[]The readable.pause() method will cause a stream in flowing mode to stop
-emitting 'data' events, switching out of flowing mode. Any data that
-becomes available will remain in the internal buffer.
const readable = getReadableStreamSomehow();
readable.on('data', (chunk) => {
console.log(`Received ${chunk.length} bytes of data.`);
readable.pause();
console.log('There will be no additional data for 1 second.');
setTimeout(() => {
console.log('Now data will start flowing again.');
readable.resume();
}, 1000);
});
-
-
-The readable.pause() method has no effect if there is a 'readable'event listener.
Rest...args: any[]Rest...args: any[]Returns a copy of the array of listeners for the event named eventName,
-including any wrappers (such as those created by .once()).
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));
// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];
// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();
// Logs "log once" to the console and removes the listener
logFnWrapper();
emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');
// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
-
-
-The readable.read() method reads data out of the internal buffer and
-returns it. If no data is available to be read, null is returned. By default,
-the data is returned as a Buffer object unless an encoding has been
-specified using the readable.setEncoding() method or the stream is operating
-in object mode.
The optional size argument specifies a specific number of bytes to read. Ifsize bytes are not available to be read, null will be returned _unless_the stream has ended, in which
-case all of the data remaining in the internal
-buffer will be returned.
If the size argument is not specified, all of the data contained in the
-internal buffer will be returned.
The size argument must be less than or equal to 1 GiB.
The readable.read() method should only be called on Readable streams
-operating in paused mode. In flowing mode, readable.read() is called
-automatically until the internal buffer is fully drained.
const readable = getReadableStreamSomehow();
// 'readable' may be triggered multiple times as data is buffered in
readable.on('readable', () => {
let chunk;
console.log('Stream is readable (new data received in buffer)');
// Use a loop to make sure we read all currently available data
while (null !== (chunk = readable.read())) {
console.log(`Read ${chunk.length} bytes of data...`);
}
});
// 'end' will be triggered once when there is no more data available
readable.on('end', () => {
console.log('Reached end of stream.');
});
-
-
-Each call to readable.read() returns a chunk of data, or null. The chunks
-are not concatenated. A while loop is necessary to consume all data
-currently in the buffer. When reading a large file .read() may return null,
-having consumed all buffered content so far, but there is still more data to
-come not yet buffered. In this case a new 'readable' event will be emitted
-when there is more data in the buffer. Finally the 'end' event will be
-emitted when there is no more data to come.
Therefore to read a file's whole contents from a readable, it is necessary
-to collect chunks across multiple 'readable' events:
const chunks = [];
readable.on('readable', () => {
let chunk;
while (null !== (chunk = readable.read())) {
chunks.push(chunk);
}
});
readable.on('end', () => {
const content = chunks.join('');
});
-
-
-A Readable stream in object mode will always return a single item from
-a call to readable.read(size), regardless of the value of thesize argument.
If the readable.read() method returns a chunk of data, a 'data' event will
-also be emitted.
Calling read after the 'end' event has
-been emitted will return null. No runtime error will be raised.
Optionalsize: numberOptional argument to specify how much data to read.
-This method calls fn on each chunk of the stream in order, passing it the result from the calculation -on the previous element. It returns a promise for the final value of the reduction.
-If no initial value is supplied the first chunk of the stream is used as the initial value.
-If the stream is empty, the promise is rejected with a TypeError with the ERR_INVALID_ARGS code property.
The reducer function iterates the stream element-by-element which means that there is no concurrency parameter
-or parallelism. To perform a reduce concurrently, you can extract the async function to readable.map method.
a reducer function to call over every chunk in the stream. Async or not.
-Optionalinitial: undefinedthe initial value to use in the reduction.
-Optionaloptions: Pick<ArrayOptions, "signal">a promise for the final value of the reduction.
-Removes all listeners, or those of the specified eventName.
It is bad practice to remove listeners added elsewhere in the code,
-particularly when the EventEmitter instance was created by some other
-component or module (e.g. sockets or file streams).
Returns a reference to the EventEmitter, so that calls can be chained.
Optionalevent: string | symbolRest...args: any[]The readable.resume() method causes an explicitly paused Readable stream to
-resume emitting 'data' events, switching the stream into flowing mode.
The readable.resume() method can be used to fully consume the data from a
-stream without actually processing any of that data:
getReadableStreamSomehow()
.resume()
.on('end', () => {
console.log('Reached the end, but did not read anything.');
});
-
-
-The readable.resume() method has no effect if there is a 'readable'event listener.
The readable.setEncoding() method sets the character encoding for
-data read from the Readable stream.
By default, no encoding is assigned and stream data will be returned asBuffer objects. Setting an encoding causes the stream data
-to be returned as strings of the specified encoding rather than as Bufferobjects. For instance, calling readable.setEncoding('utf8') will cause the
-output data to be interpreted as UTF-8 data, and passed as strings. Callingreadable.setEncoding('hex') will cause the data to be encoded in hexadecimal
-string format.
The Readable stream will properly handle multi-byte characters delivered
-through the stream that would otherwise become improperly decoded if simply
-pulled from the stream as Buffer objects.
const readable = getReadableStreamSomehow();
readable.setEncoding('utf8');
readable.on('data', (chunk) => {
assert.equal(typeof chunk, 'string');
console.log('Got %d characters of string data:', chunk.length);
});
-
-
-The encoding to use.
-By default EventEmitters will print a warning if more than 10 listeners are
-added for a particular event. This is a useful default that helps finding
-memory leaks. The emitter.setMaxListeners() method allows the limit to be
-modified for this specific EventEmitter instance. The value can be set toInfinity (or 0) to indicate an unlimited number of listeners.
Returns a reference to the EventEmitter, so that calls can be chained.
This method is similar to Array.prototype.some and calls fn on each chunk in the stream
-until the awaited return value is true (or any truthy value). Once an fn call on a chunk
-awaited return value is truthy, the stream is destroyed and the promise is fulfilled with true.
-If none of the fn calls on the chunks return a truthy value, the promise is fulfilled with false.
a function to call on each chunk of the stream. Async or not.
-Optionaloptions: Pick<ArrayOptions, "signal">Optionaloptions: ArrayOptionsa promise evaluating to true if fn returned a truthy value for at least one of the chunks.
This method allows easily obtaining the contents of a stream.
-As this method reads the entire stream into memory, it negates the benefits of streams. It's intended -for interoperability and convenience, not as the primary way to consume streams.
-Optionaloptions: Pick<ArrayOptions, "signal">a promise containing an array with the contents of the stream.
-The writable.uncork() method flushes all data buffered since cork was called.
When using writable.cork() and writable.uncork() to manage the buffering
-of writes to a stream, defer calls to writable.uncork() usingprocess.nextTick(). Doing so allows batching of allwritable.write() calls that occur within a given Node.js event
-loop phase.
stream.cork();
stream.write('some ');
stream.write('data ');
process.nextTick(() => stream.uncork());
-
-
-If the writable.cork() method is called multiple times on a stream, the
-same number of calls to writable.uncork() must be called to flush the buffered
-data.
stream.cork();
stream.write('some ');
stream.cork();
stream.write('data ');
process.nextTick(() => {
stream.uncork();
// The data will not be flushed until uncork() is called a second time.
stream.uncork();
});
-
-
-See also: writable.cork().
The readable.unpipe() method detaches a Writable stream previously attached
-using the pipe method.
If the destination is not specified, then all pipes are detached.
If the destination is specified, but no pipe is set up for it, then
-the method does nothing.
const fs = require('fs');
const readable = getReadableStreamSomehow();
const writable = fs.createWriteStream('file.txt');
// All the data from readable goes into 'file.txt',
// but only for the first second.
readable.pipe(writable);
setTimeout(() => {
console.log('Stop writing to file.txt.');
readable.unpipe(writable);
console.log('Manually close the file stream.');
writable.end();
}, 1000);
-
-
-Optionaldestination: WritableStreamOptional specific stream to unpipe
-Passing chunk as null signals the end of the stream (EOF) and behaves the
-same as readable.push(null), after which no more data can be written. The EOF
-signal is put at the end of the buffer and any buffered data will still be
-flushed.
The readable.unshift() method pushes a chunk of data back into the internal
-buffer. This is useful in certain situations where a stream is being consumed by
-code that needs to "un-consume" some amount of data that it has optimistically
-pulled out of the source, so that the data can be passed on to some other party.
The stream.unshift(chunk) method cannot be called after the 'end' event
-has been emitted or a runtime error will be thrown.
Developers using stream.unshift() often should consider switching to
-use of a Transform stream instead. See the API for stream implementers section for more information.
// Pull off a header delimited by \n\n.
// Use unshift() if we get too much.
// Call the callback with (error, header, stream).
const { StringDecoder } = require('string_decoder');
function parseHeader(stream, callback) {
stream.on('error', callback);
stream.on('readable', onReadable);
const decoder = new StringDecoder('utf8');
let header = '';
function onReadable() {
let chunk;
while (null !== (chunk = stream.read())) {
const str = decoder.write(chunk);
if (str.includes('\n\n')) {
// Found the header boundary.
const split = str.split(/\n\n/);
header += split.shift();
const remaining = split.join('\n\n');
const buf = Buffer.from(remaining, 'utf8');
stream.removeListener('error', callback);
// Remove the 'readable' listener before unshifting.
stream.removeListener('readable', onReadable);
if (buf.length)
stream.unshift(buf);
// Now the body of the message can be read from the stream.
callback(null, header, stream);
return;
}
// Still reading the header.
header += str;
}
}
}
-
-
-Unlike push, stream.unshift(chunk) will not
-end the reading process by resetting the internal reading state of the stream.
-This can cause unexpected results if readable.unshift() is called during a
-read (i.e. from within a _read implementation on a
-custom stream). Following the call to readable.unshift() with an immediate push will reset the reading state appropriately,
-however it is best to simply avoid calling readable.unshift() while in the
-process of performing a read.
Chunk of data to unshift onto the read queue. For streams not operating in object mode, chunk must be a string, Buffer, Uint8Array or null. For object mode
-streams, chunk may be any JavaScript value.
Optionalencoding: BufferEncodingEncoding of string chunks. Must be a valid Buffer encoding, such as 'utf8' or 'ascii'.
Prior to Node.js 0.10, streams did not implement the entire stream module API
-as it is currently defined. (See Compatibility for more information.)
When using an older Node.js library that emits 'data' events and has a pause method that is advisory only, thereadable.wrap() method can be used to create a Readable
-stream that uses
-the old stream as its data source.
It will rarely be necessary to use readable.wrap() but the method has been
-provided as a convenience for interacting with older Node.js applications and
-libraries.
const { OldReader } = require('./old-api-module.js');
const { Readable } = require('stream');
const oreader = new OldReader();
const myReader = new Readable().wrap(oreader);
myReader.on('readable', () => {
myReader.read(); // etc.
});
-
-
-An "old style" readable stream
-The writable.write() method writes some data to the stream, and calls the
-supplied callback once the data has been fully handled. If an error
-occurs, the callback will be called with the error as its
-first argument. The callback is called asynchronously and before 'error' is
-emitted.
The return value is true if the internal buffer is less than thehighWaterMark configured when the stream was created after admitting chunk.
-If false is returned, further attempts to write data to the stream should
-stop until the 'drain' event is emitted.
While a stream is not draining, calls to write() will buffer chunk, and
-return false. Once all currently buffered chunks are drained (accepted for
-delivery by the operating system), the 'drain' event will be emitted.
-Once write() returns false, do not write more chunks
-until the 'drain' event is emitted. While calling write() on a stream that
-is not draining is allowed, Node.js will buffer all written chunks until
-maximum memory usage occurs, at which point it will abort unconditionally.
-Even before it aborts, high memory usage will cause poor garbage collector
-performance and high RSS (which is not typically released back to the system,
-even after the memory is no longer required). Since TCP sockets may never
-drain if the remote peer does not read the data, writing a socket that is
-not draining may lead to a remotely exploitable vulnerability.
Writing data while the stream is not draining is particularly
-problematic for a Transform, because the Transform streams are paused
-by default until they are piped or a 'data' or 'readable' event handler
-is added.
If the data to be written can be generated or fetched on demand, it is
-recommended to encapsulate the logic into a Readable and use pipe. However, if calling write() is preferred, it is
-possible to respect backpressure and avoid memory issues using the 'drain' event:
function write(data, cb) {
if (!stream.write(data)) {
stream.once('drain', cb);
} else {
process.nextTick(cb);
}
}
// Wait for cb to be called before doing any other write.
write('hello', () => {
console.log('Write completed, do more writes now.');
});
-
-
-A Writable stream in object mode will always ignore the encoding argument.
Optional data to write. For streams not operating in object mode, chunk must be a string, Buffer or Uint8Array. For object mode streams, chunk may be any
-JavaScript value other than null.
Optionalencoding: BufferEncodingThe encoding, if chunk is a string.
Optionalcb: ((error: undefined | null | Error) => void)false if the stream wishes for the calling code to wait for the 'drain' event to be emitted before continuing to write additional data; otherwise true.
The writable.write() method writes some data to the stream, and calls the
-supplied callback once the data has been fully handled. If an error
-occurs, the callback will be called with the error as its
-first argument. The callback is called asynchronously and before 'error' is
-emitted.
The return value is true if the internal buffer is less than thehighWaterMark configured when the stream was created after admitting chunk.
-If false is returned, further attempts to write data to the stream should
-stop until the 'drain' event is emitted.
While a stream is not draining, calls to write() will buffer chunk, and
-return false. Once all currently buffered chunks are drained (accepted for
-delivery by the operating system), the 'drain' event will be emitted.
-Once write() returns false, do not write more chunks
-until the 'drain' event is emitted. While calling write() on a stream that
-is not draining is allowed, Node.js will buffer all written chunks until
-maximum memory usage occurs, at which point it will abort unconditionally.
-Even before it aborts, high memory usage will cause poor garbage collector
-performance and high RSS (which is not typically released back to the system,
-even after the memory is no longer required). Since TCP sockets may never
-drain if the remote peer does not read the data, writing a socket that is
-not draining may lead to a remotely exploitable vulnerability.
Writing data while the stream is not draining is particularly
-problematic for a Transform, because the Transform streams are paused
-by default until they are piped or a 'data' or 'readable' event handler
-is added.
If the data to be written can be generated or fetched on demand, it is
-recommended to encapsulate the logic into a Readable and use pipe. However, if calling write() is preferred, it is
-possible to respect backpressure and avoid memory issues using the 'drain' event:
function write(data, cb) {
if (!stream.write(data)) {
stream.once('drain', cb);
} else {
process.nextTick(cb);
}
}
// Wait for cb to be called before doing any other write.
write('hello', () => {
console.log('Write completed, do more writes now.');
});
-
-
-A Writable stream in object mode will always ignore the encoding argument.
Optional data to write. For streams not operating in object mode, chunk must be a string, Buffer or Uint8Array. For object mode streams, chunk may be any
-JavaScript value other than null.
Optionalcb: ((error: undefined | null | Error) => void)false if the stream wishes for the calling code to wait for the 'drain' event to be emitted before continuing to write additional data; otherwise true.
StaticaddExperimentalListens once to the abort event on the provided signal.
Listening to the abort event on abort signals is unsafe and may
-lead to resource leaks since another third party with the signal can
-call e.stopImmediatePropagation(). Unfortunately Node.js cannot change
-this since it would violate the web standard. Additionally, the original
-API makes it easy to forget to remove listeners.
This API allows safely using AbortSignals in Node.js APIs by solving these
-two issues by listening to the event such that stopImmediatePropagation does
-not prevent the listener from running.
Returns a disposable so that it may be unsubscribed from more easily.
-import { addAbortListener } from 'node:events';
function example(signal) {
let disposable;
try {
signal.addEventListener('abort', (e) => e.stopImmediatePropagation());
disposable = addAbortListener(signal, (e) => {
// Do something when signal is aborted.
});
} finally {
disposable?.[Symbol.dispose]();
}
}
-
-
-Disposable that removes the abort listener.
StaticfromA utility method for creating duplex streams.
-Stream converts writable stream into writable Duplex and readable stream
-to Duplex.Blob converts into readable Duplex.string converts into readable Duplex.ArrayBuffer converts into readable Duplex.AsyncIterable converts into a readable Duplex. Cannot yield null.AsyncGeneratorFunction converts into a readable/writable transform
-Duplex. Must take a source AsyncIterable as first parameter. Cannot yield
-null.AsyncFunction converts into a writable Duplex. Must return
-either null or undefinedObject ({ writable, readable }) converts readable and
-writable into Stream and then combines them into Duplex where the
-Duplex will write to the writable and read from the readable.Promise converts into readable Duplex. Value null is ignored.StaticfromStaticgetReturns a copy of the array of listeners for the event named eventName.
For EventEmitters this behaves exactly the same as calling .listeners on
-the emitter.
For EventTargets this is the only way to get the event listeners for the
-event target. This is useful for debugging and diagnostic purposes.
const { getEventListeners, EventEmitter } = require('events');
{
const ee = new EventEmitter();
const listener = () => console.log('Events are fun');
ee.on('foo', listener);
getEventListeners(ee, 'foo'); // [listener]
}
{
const et = new EventTarget();
const listener = () => console.log('Events are fun');
et.addEventListener('foo', listener);
getEventListeners(et, 'foo'); // [listener]
}
-
-
-StaticgetReturns the currently set max amount of listeners.
-For EventEmitters this behaves exactly the same as calling .getMaxListeners on
-the emitter.
For EventTargets this is the only way to get the max event listeners for the
-event target. If the number of event handlers on a single EventTarget exceeds
-the max set, the EventTarget will print a warning.
import { getMaxListeners, setMaxListeners, EventEmitter } from 'node:events';
{
const ee = new EventEmitter();
console.log(getMaxListeners(ee)); // 10
setMaxListeners(11, ee);
console.log(getMaxListeners(ee)); // 11
}
{
const et = new EventTarget();
console.log(getMaxListeners(et)); // 10
setMaxListeners(11, et);
console.log(getMaxListeners(et)); // 11
}
-
-
-StaticisStaticlistenerA class method that returns the number of listeners for the given eventNameregistered on the given emitter.
const { EventEmitter, listenerCount } = require('events');
const myEmitter = new EventEmitter();
myEmitter.on('event', () => {});
myEmitter.on('event', () => {});
console.log(listenerCount(myEmitter, 'event'));
// Prints: 2
-
-
-The emitter to query
-The event name
-Staticonconst { on, EventEmitter } = require('events');
(async () => {
const ee = new EventEmitter();
// Emit later on
process.nextTick(() => {
ee.emit('foo', 'bar');
ee.emit('foo', 42);
});
for await (const event of on(ee, 'foo')) {
// The execution of this inner block is synchronous and it
// processes one event at a time (even with await). Do not use
// if concurrent execution is required.
console.log(event); // prints ['bar'] [42]
}
// Unreachable here
})();
-
-
-Returns an AsyncIterator that iterates eventName events. It will throw
-if the EventEmitter emits 'error'. It removes all listeners when
-exiting the loop. The value returned by each iteration is an array
-composed of the emitted event arguments.
An AbortSignal can be used to cancel waiting on events:
const { on, EventEmitter } = require('events');
const ac = new AbortController();
(async () => {
const ee = new EventEmitter();
// Emit later on
process.nextTick(() => {
ee.emit('foo', 'bar');
ee.emit('foo', 42);
});
for await (const event of on(ee, 'foo', { signal: ac.signal })) {
// The execution of this inner block is synchronous and it
// processes one event at a time (even with await). Do not use
// if concurrent execution is required.
console.log(event); // prints ['bar'] [42]
}
// Unreachable here
})();
process.nextTick(() => ac.abort());
-
-
-The name of the event being listened for
-Optionaloptions: StaticEventEmitterOptionsthat iterates eventName events emitted by the emitter
StaticonceCreates a Promise that is fulfilled when the EventEmitter emits the given
-event or that is rejected if the EventEmitter emits 'error' while waiting.
-The Promise will resolve with an array of all the arguments emitted to the
-given event.
This method is intentionally generic and works with the web platform EventTarget interface, which has no special'error' event
-semantics and does not listen to the 'error' event.
const { once, EventEmitter } = require('events');
async function run() {
const ee = new EventEmitter();
process.nextTick(() => {
ee.emit('myevent', 42);
});
const [value] = await once(ee, 'myevent');
console.log(value);
const err = new Error('kaboom');
process.nextTick(() => {
ee.emit('error', err);
});
try {
await once(ee, 'myevent');
} catch (err) {
console.log('error happened', err);
}
}
run();
-
-
-The special handling of the 'error' event is only used when events.once()is used to wait for another event. If events.once() is used to wait for the
-'error' event itself, then it is treated as any other kind of event without
-special handling:
const { EventEmitter, once } = require('events');
const ee = new EventEmitter();
once(ee, 'error')
.then(([err]) => console.log('ok', err.message))
.catch((err) => console.log('error', err.message));
ee.emit('error', new Error('boom'));
// Prints: ok boom
-
-
-An AbortSignal can be used to cancel waiting for the event:
const { EventEmitter, once } = require('events');
const ee = new EventEmitter();
const ac = new AbortController();
async function foo(emitter, event, signal) {
try {
await once(emitter, event, { signal });
console.log('event emitted!');
} catch (error) {
if (error.name === 'AbortError') {
console.error('Waiting for the event was canceled!');
} else {
console.error('There was an error', error.message);
}
}
}
foo(ee, 'foo', ac.signal);
ac.abort(); // Abort waiting for the event
ee.emit('foo'); // Prints: Waiting for the event was canceled!
-
-
-Optionaloptions: StaticEventEmitterOptionsOptionaloptions: StaticEventEmitterOptionsStaticsetconst {
setMaxListeners,
EventEmitter
} = require('events');
const target = new EventTarget();
const emitter = new EventEmitter();
setMaxListeners(5, target, emitter);
-
-
-Optionaln: numberA non-negative number. The maximum number of listeners per EventTarget event.
Rest...eventTargets: (EventEmitter | _DOMEventTarget)[]StatictoConverts the contents of the slug header to metadata.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Stores all data and metadata of resources in a SPARQL backend. -Communication is done by sending SPARQL queries. -Queries are constructed in such a way to keep everything consistent, -such as updating containment triples and deleting old data when it is overwritten.
-Since metadata is hidden, no containment triples are stored for metadata files.
-All input container metadata is stored in its metadata identifier. -The containment triples are stored in the graph corresponding to the actual identifier -so those don't get overwritten.
-Only Quad data streams are supported.
-Removes all graph data relevant to the given identifier.
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Returns all triples stored for the corresponding identifier. -Note that this will not throw a 404 if no results were found.
-Returns the metadata for the corresponding identifier. -Will throw 404 if no metadata was found.
-Writes the given metadata for the container.
-Reads the given data stream and stores it together with the metadata.
-Reads the metadata and stores it.
-BodyParser that supports application/sparql-update content.
-Will convert the incoming update string to algebra in a SparqlUpdatePatch.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates permissions for a SPARQL DELETE/INSERT body. -Updates with only an INSERT can be done with just append permissions, -while DELETEs require write permissions as well.
-Certain permissions depend on the existence of the target resource. -The provided ResourceSet will be used for that.
-ResourceSet that can verify the target resource existence.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Supports application/sparql-update PATCH requests on RDF resources.
-Only DELETE/INSERT updates without variables are supported.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractHandles the state feature of notifications.
-Every implementation of a specific notification channel type should make sure an instance of this class
-gets called when a state notification can be sent out.
Implementations of this class should handle all channels and filter out those that need a state notification.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Determines the most relevant activity for a Notification in case none was provided.
-This is relevant for the state feature where a notification channel needs to know the current state of a resource.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Used to link file paths with relative URLs. -By using a separate class instead of a key/value map it is easier to replace values in Components.js.
-Handler that serves static resources on specific paths.
-Relative file paths are assumed to be relative to the current working directory.
-Relative file paths can be preceded by @css:, e.g. @css:foo/bar,
-in case they need to be relative to the module root.
-File paths ending in a slash assume the target is a folder and map all of its contents.
Creates a handler for the provided static resources.
-A list of StaticAssetEntry.
-The base URL of the server.
-Specific options.
-Optionalexpires?: numberCache expiration time in seconds.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Stores a static template folder that will be used to call the wrapped TemplatedResourcesGenerator.
-Generates resources with the given options. -The output Iterable should be sorted so that containers always appear before their contents.
-Base identifier.
-Options that can be used when generating resources.
-A map where the keys are the identifiers and the values the corresponding representations to store.
-A handler that always resolves and always returns the stored value. -Will return undefined if no value is stored.
-The generic type extends any due to Components.js requirements.
Optionalvalue: TChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An JsonInteractionHandler that always returns the same JSON response on all requests.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Adds a fixed set of triples to the storage description resource, -with the resource identifier as subject.
-This can be used to add descriptions that a storage always needs to have,
-such as the <> a pim:Storage triple.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Template engine that renders output based on a static template file.
-Creates a new StaticTemplateEngine.
-The template engine that should be used for processing the template.
-The static template to be used.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Utility handler that can handle all input and always throws an instance of the given error.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractGenerates Quads that need to be added to the given storage description resource.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Adds a link header pointing to the relevant storage description resource. -Recursively checks parent containers until a storage container is found, -and then appends the provided relative path to determine the storage description resource.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates the response for GET requests targeting a storage description resource. -The input path needs to match the relative path used to generate storage description resources -and will be used to verify if the container it is linked to is an actual storage.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedgetDetermine the identifier of the root storage based on the identifier of the root storage description resource.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Emits notifications on StreamingHTTPChannel2023 streams. -Uses the response streams found in the provided map. -The key should be the identifier of the topic resource.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Listens to an ActivityEmitter and calls the stored NotificationHandlers in case of an event -for every matching notification channel found.
-Extends StaticHandler so it can be more easily injected into a Components.js configuration. -No class takes this one as input, so to make sure Components.js instantiates it, -it needs to be added somewhere where its presence has no impact, such as the list of initializers.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A SetMultiMap linking identifiers to a set of Streaming HTTP streams. -An extension of WrappedSetMultiMap to make sure Components.js allows us to create this in the config, -as WrappedSetMultiMap has a constructor not supported.
-Will be used to instantiate the internal Map.
-Optionaliterable: Iterable<readonly [string, PassThrough | ReadonlySet<PassThrough>]>Entries to add to the map.
-Loops over all key/value bindings.
-OptionalthisArg: unknownA MetadataWriter that adds a link to the receiveFrom endpoint -of the corresponding Streaming HTTP notifications channel
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles request to Streaming HTTP receiveFrom endopints. -All allowed requests are stored in the StreamingHttpMap
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Extends the functionality of an ExtensionBasedMapper to support identifiers containing subdomains. -This is mostly only relevant in case you want to support multiple pods with subdomain identifiers -in a single ResourceStore.
-When converting to/from file paths, the subdomain is interpreted as a folder in the rootFilePath.
-The rest of the path is then interpreted relative to that folder.
-E.g. http://alice.test.com/foo results in the relative path /alice/foo.
In case there is no subdomain in the URL, the baseSubdomain parameter is used instead.
-E.g., if the baseSubdomain is "www", http://test.com/foo would result in the relative path /www/foo.
-This means that there is no identifier that maps to the rootFilePath itself.
-To prevent the possibility of 2 identifiers linking to the same file,
-identifiers containing the default subdomain are rejected.
-E.g., http://www.test.com/foo would result in a 403, even if http://test.com/foo exists.
OptionalcustomTypes: Record<string, string>Protected ReadonlybaseProtected ReadonlyloggerProtected ReadonlyrootProtected ReadonlyunknownProtectedgetProtectedgetProtectedgetProtectedgetDetermines the content type from the document identifier.
-The input identifier.
-OptionalcontentType: stringThe content-type provided with the request.
-The content type of the document.
-ProtectedgetProtectedgetGets the relative path as though the subdomain url is the base, and then prepends it with the subdomain.
-Examples assuming http://test.com/ is the base url and www the base subdomain:
ProtectedisMaps the given file path to a URL and determines its content type.
-The input file path.
-If the path corresponds to a file.
-A ResourceLink with all the necessary metadata.
-ProtectedmapMaps the given container identifier to a file path, -possibly making alterations to the direct translation.
-The input identifier.
-The direct translation of the identifier onto the file path.
-A ResourceLink with all the necessary metadata.
-ProtectedmapMaps the given document identifier to a file path, -possibly making alterations to the direct translation -(for instance, based on its content type)). -Determines the content type if none was provided.
-The input identifier.
-The direct translation of the identifier onto the file path.
-OptionalcontentType: stringThe content-type provided with the request.
-A ResourceLink with all the necessary metadata.
-Maps the given resource identifier / URL to a file path. -Determines the content type if none was provided. -For containers the content-type input is ignored.
-The input identifier.
-If we need the data or metadata file path.
-OptionalcontentType: stringThe content-type provided with the request.
-A ResourceLink with all the necessary metadata.
-ProtectedrelativeConverts a relative path to a URL.
-Examples assuming http://test.com/ is the base url and www the base subdomain:
ProtectedstripProtectedvalidateCheck whether the given relative path is valid.
-A relative path, as generated by getRelativePath.
-A resource identifier.
-Generates identifiers by using the name as a subdomain on the base URL.
-Non-alphanumeric characters will be replaced with -.
When extracting the pod, the base URl is also seen as a pod as there is no issue of nested containers here.
-Extracts the root pod this identifier would be in. -This assumes the identifier of that pod was generated by the same instance of this interface.
-Generates container identifiers based on an input name. -This is simply string generation, no resource-related checks are run.
-An IdentifierStrategy that interprets all subdomains of the given base URL as roots.
-Checks if the given container would contain the given identifier. -This does not check that either of these identifiers actually exist. -This is similar to calling getParentContainer on an identifier -and comparing the result.
-If transitive is false this only checks if container is the direct parent container of identifier.
Generates the identifier of the container this resource would be a member of. -This does not check if that identifier actually exists. -Will throw an error if the input identifier is a root container or is not supported.
-Checks if the input corresponds to the identifier of a root container. -This does not check if this identifier actually exists.
-Verifies if this identifier is supported. -This does not check if this identifier actually exists, -but checks if the identifier is in scope for this class.
-Generates all resources found in specific subfolders of the given template folder. -In case the same resource is defined in several subfolders, -the data of the last subfolder in the list will be used.
-The results of all the subfolders will be merged so the end result is still a sorted stream of identifiers.
-One of the main use cases for this class is so template resources can be in a separate folder -than their corresponding authorization resources, -allowing for authorization-independent templates.
-Generates resources with the given options, based on the given template folder. -The output Iterable should be sorted so that containers always appear before their contents.
-Folder where the templates are located.
-Base identifier.
-Options that can be used when generating resources.
-A map where the keys are the identifiers and the values the corresponding representations to store.
-Helper class that uses a suffix to determine if a resource is an auxiliary resource or not. -Simple string matching is used, so the dot needs to be included if needed, e.g. ".acl".
-Returns the identifier of the auxiliary resource corresponding to the given resource. -This does not guarantee that this auxiliary resource exists.
-Should error if there are multiple results: see getAuxiliaryIdentifiers.
-The ResourceIdentifier of which we need the corresponding auxiliary resource.
-The ResourceIdentifier of the corresponding auxiliary resource.
-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 getAuxiliaryIdentifier.
-The ResourceIdentifier of which we need the corresponding auxiliary resources.
-The ResourceIdentifiers of the corresponding auxiliary resources.
-Returns the identifier of the resource which this auxiliary resource is referring to. -This does not guarantee that this resource exists.
-Identifier of the auxiliary resource.
-The ResourceIdentifier of the subject resource.
-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.
-Identifier to check.
-true if the input identifier points to an auxiliary resource.
-Generates identifiers by appending the name to a stored base identifier.
-Non-alphanumeric characters will be replaced with -.
Extracts the root pod this identifier would be in. -This assumes the identifier of that pod was generated by the same instance of this interface.
-Generates container identifiers based on an input name. -This is simply string generation, no resource-related checks are run.
-AbstractExtracts a ResourceIdentifier from an incoming HttpRequest.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Adds metadata to an error to indicate the identifier of the originally targeted resource.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractGeneric interface for classes that implement a template engine. -A template engine renders content into a template.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Creates a new ResourceStore when creating a pod based on a Components.js configuration.
-Part of the dynamic pod creation.
-Factory used for Components.js instantiation.
-Handler used for setting variable values.
-Where to store the configuration values to instantiate the store for this pod.
-Base URL of the server.
-OptionalconfigTemplatePath: stringWhere to find the configuration templates.
-Creates a ResourceStore based on the given input. -Should error if there already is a store for the given identifier.
-Parameters to be used for the new pod.
-A new ResourceStore to be used for the new pod.
-Validates ownership of a WebId by seeing if a specific triple can be added.
-expiration parameter is how long the token should be valid in minutes.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A NotificationHandler that only accepts input for a specific notification channel type.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA RepresentationConverter that allows requesting the supported types.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractgetGets the output content types this converter can convert the input type to, mapped to a numerical priority.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An error thrown when an agent is not authorized.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Combines the results of several CredentialsExtractors into one. -If multiple of these extractors return a value for the same key, -the last result will be used.
-ProtectedallChecks if all handlers can handle the input. -If not, throw an error based on the errors of the failed handlers.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Combines the results of the handlers into a single output.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractUtility handler that allows combining the results of multiple handlers into one.
-Will run the handlers and then call the abstract combine function with the results,
-which then generates the handler's output.
Creates a new UnionHandler.
When requireAll is false or ignoreErrors is true,
-the length of the input to combine can vary;
-otherwise, it is exactly the number of handlers.
The handlers whose output is to be combined.
-If true, will fail if any of the handlers do not support the input. -If false, only the handlers that support the input will be called; -will fail only if none of the handlers can handle the input.
-If true, ignores handlers that fail by omitting their output; -if false, fails when any handlers fail.
-ProtectedallChecks if all handlers can handle the input. -If not, throw an error based on the errors of the failed handlers.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Protected AbstractcombineCombines the results of the handlers into a single output.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Combines the results of multiple PermissionReaders.
-Every permission in every credential type is handled according to the rule false > true > undefined.
ProtectedallChecks if all handlers can handle the input. -If not, throw an error based on the errors of the failed handlers.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedcombineCombines the results of the handlers into a single output.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Combines the results of multiple PreferenceParsers. -Will throw an error if multiple parsers return a range as these can't logically be combined.
-ProtectedallChecks if all handlers can handle the input. -If not, throw an error based on the errors of the failed handlers.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedcombineCombines the results of the handlers into a single output.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Allows users to remove WebIDs linked to their account.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Credentials extractor that authenticates a constant agent -(useful for development or debugging purposes).
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Credentials extractor which simply interprets the contents of the Authorization header as a WebID.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Provides live update functionality following -the Solid WebSockets API Spec solid-0.1.
-The baseUrl parameter should be the same one that is used to advertise with the Updates-Via header.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handler that does not support any input and will always throw an error.
-OptionalerrorMessage: stringHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-An error thrown when the media type of incoming data is not supported by a parser.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsOptional ReadonlycauseReadonlyerrorReadonlymetadataOptionalstackReadonlystatusStatic ReadonlyisChecks whether the given error is an instance of this class.
-Static ReadonlystatusThe status code corresponding to this error class.
-Static ReadonlyuriA unique URI identifying this error class.
-Responsible for adding/updating/deleting owners in pods.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedfindExtract the pod ID from the path and find the associated pod. -Asserts that the given account ID is the creator of this pod.
-OptionalaccountId: stringHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Allows the password of a login to be updated.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles migrating account data from v6 to the newer format. -Will only trigger if it is detected that this server was previously started on an older version -and at least one account was found. -Confirmation will be asked to the user through a CLI prompt. -After migration is complete the old data will be removed.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedcreateCreates a new account based on the account data found in the old storage.
-Will always create an account and password entry.
-In case useIdp is true, will create a WebID link entry.
-In case there is an associated podBaseUrl, will create a pod and owner entry.
Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-ProtectedisA ValidatingDataAccessor wraps a DataAccessor such that the data stream is validated while being written. -An AtomicDataAccessor can be used to prevent data being written in case validation fails.
-Should throw a NotImplementedHttpError if the DataAccessor does not support storing the given Representation.
-Incoming Representation.
-Deletes the resource and its corresponding metadata.
-Solid, §5.4: "When a contained resource is deleted, the server MUST also remove the corresponding containment -triple, which has the effect of removing the deleted resource from the containing container." -https://solid.github.io/specification/protocol#deleting-resources
-Resource to delete.
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Returns a data stream stored for the given identifier. -It can be assumed that the incoming identifier will always correspond to a document.
-Identifier for which the data is requested.
-Returns the metadata corresponding to the identifier.
-If possible, it is suggested to add a posix:size triple to the metadata indicating the binary size.
-This is necessary for range requests.
Identifier for which the metadata is requested.
-Writes metadata for a container. -If the container does not exist yet it should be created, -if it does its metadata should be overwritten, except for the containment triples.
-Identifier of the container.
-Metadata to store.
-Writes data and metadata for a document. -If any data and/or metadata exist for the given identifier, it should be overwritten.
-Identifier of the resource.
-Data to store.
-Metadata to store.
-Writes metadata for a resource. -It can safely be assumed that the subject resource already exists.
-Identifier of the subject resource.
-Metadata to store.
-AbstractGeneric interface for classes that validate Representations in some way.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractUpdates the variables stored in the given agent. -Can be used to set variables that are required for the Components.js instantiation -but which should not be provided by the request. -E.g.: The exact file path (when required) should be determined by the server to prevent abuse.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A VariableHandler that will set the given variable to the given value, -unless there already is a value for the variable and override is false.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Adds the current version of the API to the JSON output. -This version number should be updated every time the API changes.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Utility class for the common case of a JsonInteractionHandler -describing the expected input on a GET request which is needed to do a POST request.
-Returns the result of a JsonView on GET requests. -POST requests are sent to the JsonInteractionHandler. -Other methods will be rejected.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A ReadWriteLocker where the locks expire after a given time.
-As ReadWriteLocker.withReadLock but the locked function gets called with a maintainLock callback function
-to reset the lock expiration every time it is called.
-The resulting promise will reject once the lock expires.
Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked. -Receives a callback as input parameter to maintain the lock.
-As ReadWriteLocker.withWriteLock but the locked function gets called with a maintainLock
-callback function to reset the lock expiration every time it is called.
-The resulting promise will reject once the lock expires.
Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked. -Receives a callback as input parameter to maintain the lock.
-A logger that does nothing on a log message.
-A factory that always returns VoidLogger, which does nothing on log messages.
-Create a logger instance for the given label.
-A label that is used to identify the given logger.
-Adds all the available permissions to the response metadata, -which can be used to generate the correct WAC-Allow header.
-This class does many things similar to the AuthorizingHttpHandler, -so in general it is a good idea to make sure all these classes cache their results.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Add the necessary WAC-Allow header values. -Solid, §10.1: "Servers exposing client’s access privileges on a resource URL MUST advertise -by including the WAC-Allow HTTP header in the response of HTTP HEAD and GET requests." -https://solid.github.io/specification/protocol#web-access-control
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A composite handler that tries multiple handlers one by one -until it finds a handler that supports the input. -The handlers will be checked in the order they appear in the input array, -allowing for more fine-grained handlers to check before catch-all handlers.
-Creates a new WaterfallHandler that stores the given handlers.
-Handlers over which it will run.
-Checks whether any of the stored handlers can handle the given input.
-The data that would need to be handled.
-A promise resolving if at least 1 handler supports to input, or rejecting if none do.
-Finds a handler that supports the given input and then lets it handle the given data.
-The data that needs to be handled.
-A promise corresponding to the handle call of a handler that supports the input. -It rejects if no handlers support the given data.
-Identical to AsyncHandler.handleSafe but optimized for composite -by only needing 1 canHandle call on members.
-The input data.
-A promise corresponding to the handle call of a handler that supports the input. -It rejects if no handlers support the given data.
-Finds the permissions of a resource as defined in the corresponding ACL resource. -Does not make any deductions such as checking parent containers for create permissions -or applying control permissions for ACL resources.
-Specific access checks are done by the provided AccessChecker.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Checks if an agent is allowed to execute the requested actions. -Will throw an error if this is not the case.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Emits notifications on WebSocketChannel2023 subscription. -Uses the WebSockets found in the provided map. -The key should be the identifier of the matching channel.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstractA handler that is called when a valid WebSocketChannel2023 connection has been made.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Listens for WebSocket connections and verifies whether they are valid WebSocketChannel2023 connections, -in which case its WebSocket2023Handler will be alerted.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Keeps track of the WebSockets that were opened for a WebSocketChannel2023 channel. -The WebSockets are stored in the map using the identifier of the matching channel.
-cleanupTimer defines in minutes how often the stored WebSockets are closed
-if their corresponding channel has expired.
-Defaults to 60 minutes.
-Open WebSockets will not receive notifications if their channel expired.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handler that advertises a WebSocket through the Updates-Via header.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-The notification channel type WebSocketChannel2023 as described in -https://solid.github.io/notifications/websocket-channel-2023
-Requires read permissions on a resource to be able to receive notifications.
-Optionalfeatures: string[]Protected ReadonlyfeaturesProtected ReadonlyloggerProtected ReadonlypathProtected ReadonlyshaclProtected OptionalshaclProtected ReadonlytypeThis function will be called after the serialized channel is sent back as a response, -allowing for any final actions that need to happen.
-The notification channel that is completed.
-Determines which modes are required to allow the given notification channel.
-The notification channel to verify.
-The required modes.
-Returns the SubscriptionService that describes how to subscribe to this channel type.
-ProtectedgetInitiates the channel by first calling validateSubscription followed by quadsToChannel. -Subclasses can override either function safely to impact the result of the function.
-ProtectedquadsConverts a set of quads to a NotificationChannel. -Assumes the data is valid, so this should be called after validateSubscription.
-The generated identifier will be a URL made by combining the base URL of the channel type with a unique identifier.
-The values of the default features will be added to the resulting channel, -subclasses with additional features that need to be added are responsible for parsing those quads.
-Data to convert.
-The identifier of the notification channel description in the dataset.
-The generated NotificationChannel.
-Converts the given channel to a JSON-LD description.
-All fields found in the channel, except lastEmit, will be part of the result subject,
-so subclasses should remove any fields that should not be exposed.
ProtectedvalidateValidates whether the given data conforms to the stored SHACL shape. -Will throw an UnprocessableEntityHttpError if validation fails. -Along with the SHACL check, this also makes sure there is only one matching entry in the dataset.
-The data to validate.
-The focus node that corresponds to the subject of the found notification channel description.
-AbstractA handler to support requests trying to open a WebSocket connection.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-AbstracthandleHandles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A SetMultiMap linking identifiers to a set of WebSockets. -An extension of WrappedSetMultiMap to make sure Components.js allows us to create this in the config, -as WrappedSetMultiMap has a constructor not supported.
-Will be used to instantiate the internal Map.
-Optionaliterable: Iterable<readonly [string, WebSocket | ReadonlySet<WebSocket>]>Entries to add to the map.
-Loops over all key/value bindings.
-OptionalthisArg: unknownServerConfigurator that adds WebSocket functionality to an existing Server.
-Listens for WebSocket requests and sends them to its handler.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-The notification channel type WebhookChannel2023 as described in -https://solid.github.io/notifications/webhook-channel-2023
-Requires read permissions on a resource to be able to receive notifications.
-Also handles the state feature if present.
The route corresponding to the URL of the subscription service of this channel type.
-The route to the WebID that needs to be used when generating DPoP tokens for notifications.
-The StateHandler that will be called after a successful subscription.
-Optionalfeatures: string[]The features that need to be enabled for this channel type.
-Protected ReadonlyfeaturesProtected ReadonlyloggerProtected ReadonlypathProtected ReadonlyshaclProtected OptionalshaclProtected ReadonlytypeThis function will be called after the serialized channel is sent back as a response, -allowing for any final actions that need to happen.
-The notification channel that is completed.
-Determines which modes are required to allow the given notification channel.
-The notification channel to verify.
-The required modes.
-Returns the SubscriptionService that describes how to subscribe to this channel type.
-ProtectedgetInitiates the channel by first calling validateSubscription followed by quadsToChannel. -Subclasses can override either function safely to impact the result of the function.
-ProtectedquadsConverts a set of quads to a NotificationChannel. -Assumes the data is valid, so this should be called after validateSubscription.
-The generated identifier will be a URL made by combining the base URL of the channel type with a unique identifier.
-The values of the default features will be added to the resulting channel, -subclasses with additional features that need to be added are responsible for parsing those quads.
-Data to convert.
-The identifier of the notification channel description in the dataset.
-The generated NotificationChannel.
-Converts the given channel to a JSON-LD description.
-All fields found in the channel, except lastEmit, will be part of the result subject,
-so subclasses should remove any fields that should not be exposed.
ProtectedvalidateValidates whether the given data conforms to the stored SHACL shape. -Will throw an UnprocessableEntityHttpError if validation fails. -Along with the SHACL check, this also makes sure there is only one matching entry in the dataset.
-The data to validate.
-The focus node that corresponds to the subject of the found notification channel description.
-Emits a notification representation using the WebhookChannel2023 specification.
-At the time of writing it is not specified how exactly a notification sender should make its requests verifiable, -so for now we use a token similar to those from Solid-OIDC, signed by the server itself.
-Generates a DPoP token and proof, and adds those to the HTTP request that is sent to the target.
-The expiration input parameter is how long the generated token should be valid in minutes.
-Default is 20.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Generates a fixed WebID that we use to identify the server for notifications sent using a WebhookChannel2023.
-This is used in tandem with the tokens generated by the WebhookEmitter.
-This is a minimal WebID with only the solid:oidcIssuer triple.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-A WinstonLogger implements the Logger interface using a given winston logger.
-Log the given message at the given level. -If the internal level is higher than the given level, the message may be voided.
-The level to log at.
-The message to log.
-Optionalmeta: unknownOptional metadata to include in the log message.
-Uses the winston library to create loggers for the given logging level. -By default, it will print to the console with colorized logging levels.
-This creates instances of WinstonLogger.
-Spawns the necessary workers when starting in multithreaded mode.
-Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Wraps around an existing ReadWriteLocker and adds expiration logic to prevent locks from getting stuck.
-Instance of ResourceLocker to use for acquiring a lock.
-Time in ms after which the lock expires.
-Protected ReadonlyexpirationProtected ReadonlylockerProtected ReadonlyloggerAs ReadWriteLocker.withReadLock but the locked function gets called with a maintainLock callback function
-to reset the lock expiration every time it is called.
-The resulting promise will reject once the lock expires.
Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked. -Receives a callback as input parameter to maintain the lock.
-As ReadWriteLocker.withWriteLock but the locked function gets called with a maintainLock
-callback function to reset the lock expiration every time it is called.
-The resulting promise will reject once the lock expires.
Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked. -Receives a callback as input parameter to maintain the lock.
-A storage that wraps around another storage and expires resources based on the given (optional) expiry date. -Will delete expired entries when trying to get their value. -Has a timer that will delete all expired data every hour (default value).
-KeyValueStorage to actually store the data.
-How often the expired data needs to be checked in minutes.
-Deletes the value stored for the given key.
-Key to delete.
-If there was a value to delete.
-Checks whether there is a value stored for the given key.
-Sets the value for the given key. -Should error if the data is already expired.
-The storage.
-Sets the value for the given key. -Should error if the data is already expired.
-The storage.
-An IndexedStorage that makes use of 2 KeyValueStorages to implement the interface. -Due to being limited by key/value storages, there are some restrictions on the allowed type definitions:
-All of the above to create a tree-like structure of references. -Such a tree is then stored in one of the storages. -The other storage is used to store all indexes that are used to find the correct tree object when solving queries.
-ProtectedrootThe root type for this storage.
-Use this instead of rootTypeVar to prevent having to check for undefined.
-This value will always be defined if the type definitions have been validated.
Creates an object of the given type. -The storage will generate an identifier for the newly created object.
-The type to create.
-The value to set for the created object.
-A representation of the newly created object, including its new identifier.
-Creates an index on a key of the given type, to allow for better queries involving those keys. -Similar to IndexedStorage.defineType these calls need to happen first.
-Informs the storage of the definition of a specific type. -A definition is a key/value object with the values being a valid ValueTypeDescription. -Generally, this call needs to happen for every type of this storage, -and before any calls are made to interact with the data.
-Deletes the given object. -This will also delete all objects that reference that object if the corresponding key is not optional.
-The type of the object to delete.
-The identifier of the object.
-Returns an iterator over all objects of the given type.
-The type to iterate over.
-Finds all objects matching a specific IndexedQuery.
-The type of objects to find.
-The query to execute.
-A list of objects matching the query.
-Similar to IndexedStorage.find, but only returns the identifiers of the found objects.
-The type of objects to find.
-The query to execute.
-A list of identifiers of the matching objects.
-ProtectedfindFinds the IDs of all root objects that contain objects of the given type matching the given query -by making use of the indexes applicable to the keys in the query. -This function only looks at the keys in the query with primitive values, -object values in the query referencing parent objects are not considered. -Similarly, only indexes are used, keys without index are also ignored.
-If an array of root IDs is provided as input, -the result will be an intersection of this array and the found identifiers.
-If the result is an empty array, it means that there is no valid identifier matching the query,
-while an undefined result means there is no index matching any of the query keys,
-so a result can't be determined.
OptionalrootIds: string[]Returns the object of the given type with the given identifier.
-The type of object to get.
-The identifier of that object.
-A representation of the object, or undefined if there is no object of that type with that identifier.
ProtectedgetFinds all objects in the provided object that can be found by following the provided path of virtual keys.
-ProtectedgetReturns all relations where the given type is the parent.
-ProtectedgetFinds the record in the given object that contains the given type/id combination. -This function assumes it was already verified through an index that this object contains the given combination.
-ProtectedgetProtectedgetReturns the relation where the given type is the child.
-Will return undefined for the root type as that one doesn't have a parent.
ProtectedgetFinds all records that can be found in the given object by following the given path of virtual keys.
-ProtectedgetProtectedgetFinds the root object that contains the requested type/id combination.
-Sets the value of a specific object. -The identifier in the object is used to identify the object.
-The type of the object to set.
-The new value for the object.
-ProtectedsolveFinds all objects of the given type matching the query.
-The rootIds array can be used to restrict the IDs of root objects to look at,
-which is relevant for the recursive calls the function does.
Will throw an error if there is no index that can be used to solve the query.
-OptionalrootIds: string[]ProtectedtoConverts a VirtualObject into a TypeObject. -To be used when outputting results.
-ProtectedupdateUpdate all indexes for an object of the given type, and all its children.
-OptionalnewObj: VirtualObjectProtectedupdateProtectedupdateUpdates all indexes for an object of the given type.
-OptionaloldObj: VirtualObjectOptionalnewObj: VirtualObjectProtectedupdateReplaces an object of the given type. -The identifier in the value is used to determine which object.
-Replaces part of an object of the given type with the given partial value. -The identifier in the value is used to determine which object.
-ProtectedvalidateMakes sure the defined types fulfill all the requirements necessary for types on this storage. -Will throw an error if this is not the case. -This should be called before doing any data interactions. -Stores success in a variable so future calls are instantaneous.
-A SetMultiMap that uses an internal Map based on the provided constructor.
-In case no input constructor is provided, the default Map implementation will be used.
-It is required that the value type of this map is not Set or any extension of Set,
-otherwise the set and add functions wil break.
true if an element in the Map existed and has been removed, or false if the element does not exist.
-Loops over all key/value bindings.
-OptionalthisArg: unknownboolean indicating whether an element with the specified key exists or not.
-Implements BaseLogger around a SimpleLogger, -which can be swapped out a runtime.
-Log the given message at the given level. -If the internal level is higher than the given level, the message may be voided.
-The level to log at.
-The message to log.
-Optionalmeta: LogMetadataOptional metadata to include in the log message.
-Adds the WWW-Authenticate header with the injected value in case the response status code is 401.
Checks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-Input that needs to be handled.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Parses CLI args using the yargs library. -Specific settings can be enabled through the provided options.
-Parameters that should be parsed from the CLI.
-Additional options to configure yargs.
-JSON parameters cannot be optional due to https://github.com/LinkedSoftwareDependencies/Components-Generator.js/issues/87
-Protected ReadonlyyargsProtected ReadonlyyargvChecks whether the input can be handled by this class. -If it cannot handle the input, rejects with an error explaining why.
-Input that could potentially be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-Handles the given input. This may only be called if canHandle did not reject. -When unconditionally calling both in sequence, consider handleSafe instead.
-A promise resolving when handling is finished.
-Helper function that first runs canHandle followed by handle. -Throws the error of canHandle if the data cannot be handled, -or returns the result of handle otherwise.
-Input data that will be handled if it can be handled.
-A promise resolving if the input can be handled, rejecting with an Error if not.
-This class exists as wrapper around a yargs Options object, -thereby allowing us to create these in a Components.js configuration.
-Format details can be found at https://yargs.js.org/docs/#api-reference-optionskey-opt
-Name of the parameter. Corresponds to the first parameter passed to the yargs.options function.
Options for a single parameter that should be parsed.
-Resolves a path to its absolute form. -Absolute inputs will not be changed (except changing Windows to POSIX). -Relative inputs will be interpreted relative to process.cwd().
-Path to check (POSIX or Windows).
-The potentially changed path (POSIX).
-Generates resources with the given generator and adds them to the given store.
-Settings from which the pod is being created.
-Generator to be used.
-Store to be updated.
-The amount of resources that were added.
-Adds a header value without overriding previous values.
-Helper function to generate type quads for a Container or Resource.
-Metadata to add to.
-If the identifier corresponds to a container.
-Links a template file with a given content-type to the metadata using the SOLID_META.template predicate.
-Metadata to update.
-Path to the template.
-Content-type of the template after it is rendered.
-Obtains the values of all fulfilled promises.
-If there are rejections (and ignoreErrors is false), throws a combined error of all rejected promises.
Asserts oidcInteraction is defined, throws the correct error in case this is not the case.
-The error contains the relevant error code that can be used to explain more extensively what the issue is
-and why an OIDC interaction is needed.
OptionaloidcInteraction: InteractionInteraction object to check.
-Verify whether the given Representation matches the given conditions.
-If true, add the corresponding ETag to the body metadata.
-If not, destroy the data stream and throw a NotModifiedHttpError with the same ETag.
-If conditions is not defined, nothing will happen.
This uses the strict conditions check which takes the content type into account; -therefore, this should only be called after content negotiation, when it is certain what the output will be.
-Note that browsers only keep track of one ETag, and the Vary header has no impact on this, -meaning the browser could send us the ETag for a Turtle resource even though it is requesting JSON-LD; -this is why we have to check ETags after content negotiation.
-The representation to compare the conditions against.
-Used to generate the ETag to return with the 304 response.
-Optionalconditions: ConditionsThe conditions to assert.
-Cleans incoming preferences to prevent unwanted behaviour. -Makes sure internal types have weight 0, unless specifically requested in the preferences, -and interprets empty preferences as accepting everything.
-Preferences that need to be updated.
-A copy of the the preferences with the necessary updates.
-Helper function to clone a representation, the original representation can still be used. -This function loads the entire stream in memory.
-The representation to clone.
-The cloned representation.
-Combines a list of errors into a single HttpError. -Status code depends on the input errors. If they all share the same status code that code will be re-used. -If they are all within the 4xx range, 400 will be used, otherwise 500.
-Errors to combine.
-Creates a class that is an implementation of EventEmitter -but with specific typings based on GenericEventEmitter. -Useful in case a class needs to extend EventEmitter and wants specific internal typings.
-Creates a regular expression that matches URLs containing the given baseUrl, or a subdomain of the given baseUrl. -In case there is a subdomain, the first match of the regular expression will be that subdomain.
-Examples with baseUrl http://test.com/foo/:
http://test.com/foo/http://test.com/foo/bar/bazhttp://alice.bob.test.com/foo/bar/baz, first match result will be alice.bobhttp://test.com/http://alicetest.com/foo/Base URL for the regular expression.
-Creates a Vocabulary with the given baseUri as namespace and all localNames as entries.
-The values are the local names expanded from the given base URI as strings.
-The terms field contains all the same values but as NamedNode instead.
This function is used when converting a URI to a file path. Decodes all components of a URI path, -with the exception of encoded slash characters, as this would lead to unexpected file locations -being targeted (resulting in erroneous behaviour of the file based backend). -Characters that would result in an illegal file path remain percent encoded.
-The path to decode the URI path components of.
-A decoded copy of the provided URI path (ignoring encoded slash characters).
-This function is used in the process of converting a file path to a URI. Encodes all (non-slash) -special characters in a URI path, with the exception of encoded slash characters, as this would -lead to unnecessary double encoding, resulting in a URI that differs from the expected result.
-The path to encode the URI path components of.
-An encoded copy of the provided URI path (ignoring encoded slash characters).
-Adds the given terms to error metadata.
-The keys will be converted to predicates by prepending them with the SOLID_ERROR_TERM namespace.
-The values will become literals.
Terms to add to the metadata.
-Optionalmetadata: RepresentationMetadataMetadata to add the terms to. A new metadata object will be created if this is undefined.
-Creates a new Vocabulary that extends an existing one by adding new local names.
-The Vocabulary to extend.
-Rest...newNames: TNew[]The new local names that need to be added.
-Extracts all the error metadata terms and converts them to a simple object.
-All predicates in the SOLID_ERROR_TERM namespace will be found.
-The namespace will be removed from the predicate and the remainder will be used as a key.
-The object literal values will be used as values in the resulting object.
Metadata to extract the terms from.
-Splits a URL (or similar) string into a part containing its scheme and one containing the rest.
-E.g., http://test.com/ results in { scheme: 'http://', rest: 'test.com/' }.
String to parse.
-Fetches an RDF dataset from the given URL.
-Response will be a Representation with content-type internal/quads.
-Creates a new iterable with all elements that pass the test implemented by the provided function. -Similar to the Array.prototype.filter function. -See the documentation of the above function for more details.
-Iterable on which to call the map function.
-Function that is called to test every element.
-OptionalthisArg: unknownValue to use as this when executing callbackFn.
Filters a list of handlers to only keep those that can handle the input. -Will error if no matching handlers are found.
-Handlers to filter.
-Input that needs to be supported.
-Returns the first element in the provided iterable that satisfies the provided testing function.
-If no values satisfy the testing function, undefined is returned.
-Similar to the Array.prototype.find function.
-See the documentation of the above function for more details.
Iterable on which to call the map function.
-Function that is called to test every element.
-OptionalthisArg: unknownValue to use as this when executing callbackFn.
Finds a handler that can handle the given input data. -Otherwise an error gets thrown.
-List of handlers to search in.
-The input data.
-A promise resolving to a handler that supports the data or otherwise rejecting.
-Updates the oidcInteraction object with the necessary data in case a prompt gets updated.
Interaction to update.
-New data to add to the interaction.
-If this new data needs to be merged with already existing data in the interaction.
-Removes the WebID, the accountId, from the OIDC session object,
-allowing us to replace it with a new value.
-If there is no session in the Interaction, nothing will happen.
The OIDC provider.
-The current interaction.
-Default StreamingHTTPChanel2023 for a topic. -Currently channel description is only used internally and never sent to the client. -The default channel uses Turtle.
-Generates a new HttpError class with the given status code and name. -In general, status codes are used to uniquely identify error types, -so there should be no 2 classes with the same value there.
-To make sure Components.js can work with these newly generated classes,
-the generated class should be called BaseHttpError as that name is an entry in .componentsignore.
-The actual class should then extend BaseHttpError and have a correct constructor,
-so the Components.js generator can generate the correct components JSON-LD file during build.
Generates a RedirectHttpErrorClass, similar to how generateHttpErrorClass works.
-The difference is that here a location field also gets set and the getInstance method
-also uses the RedirectHttpError.isInstance function.
Finds the type from the given types that has the best match with the given preferences, -based on the calculated weight.
-Types for which we want to find the best match.
-Preferences to match the types against.
-A ValuePreference containing the best match and the corresponding weight. -Undefined if there is no match.
-For a media type converter that can generate the given types, -this function tries to find the type that best matches the given preferences.
-This function combines several other conversion utility functions -to determine what output a converter should generate: -it cleans the preferences with cleanPreferences to support empty preferences -and to prevent the accidental generation of internal types, -after which the best match gets found based on the weights.
-Media types that can be converted to.
-Preferences for output type.
-The best match. Undefined if there is no match.
-Finds the result of calling map.get(key).
-If there is no result, it instead returns the result of the default function.
-The Map will also be updated to assign that default value to the given key.
Finds the result of calling map.get(key).
-If there is no result, it instead returns the result of the default function.
-The Map will also be updated to assign the resolved default value to the given key.
Gets a logger instance for the given class instance.
-The following shows a typical pattern on how to create loggers:
-class MyClass {
protected readonly logger = getLoggerFor(this);
}
-
-
-If no class is applicable, a logger can also be created as follows:
-const logger = getLoggerFor('MyFunction');
-
-
-A class instance or a class string name.
-Creates a relative URL by removing the base URL. -Will throw an error in case the resulting target is not withing the base URL scope.
-Base URL.
-Incoming request of which the target needs to be extracted.
-Will extract the target from the request.
-Returns the absolute path to the template. -Returns undefined if the input does not contain a file path.
-Optionaltemplate: TemplateTries to match the given type to the given preferences. -In case there are multiple matches the most specific one will be chosen as per RFC 7231.
-Type for which the matching weight is needed.
-Preferences to match the type to.
-The corresponding weight from the preferences or 0 if there is no match.
-Measures the weights for all the given types when matched against the given preferences. -Results will be sorted by weight. -Weights of 0 indicate that no match is possible.
-Types for which we want to calculate the weights.
-Preferences to match the types against.
-An array with a ValuePreference object for every input type, sorted by calculated weight.
-Makes sure that listeners always receive the error event of a stream, -even if it was thrown before the listener was attached.
-When guarding a stream it is assumed that error listeners already attached should be ignored, -only error listeners attached after the stream is guarded will prevent an error from being logged.
-If the input is already guarded the guard will be reset, -which means ignoring error listeners already attached.
-Stream that can potentially throw an error.
-The stream.
-Converts a string or array to a stream and applies an error guard so that it is Guarded.
-Data to stream.
-Optionaloptions: ReadableOptionsOptions to pass to the Readable constructor. See Readable.from.
-Checks if the scheme part of the specified url matches at least one of the provided options.
-A string representing the URL.
-Rest...schemes: string[]Scheme value options (the function will check whether at least one matches the URL scheme).
-True if the URL scheme matches at least one of the provided options, false otherwise.
-Converts a ResourceIdentifier into a string unique to that identifier.
-Import the OIDC-provider package.
-As oidc-provider is an ESM package and CSS is CJS, we have to use a dynamic import here.
-Unfortunately, there is a Node/Jest bug that causes segmentation faults when doing such an import in Jest:
-https://github.com/nodejs/node/issues/35889
-To work around that, we do the import differently, in case we are in a Jest test run.
-This can be detected via the env variables: https://jestjs.io/docs/environment-variables.
-There have been reports of JEST_WORKER_ID being undefined, so to be sure we check both.
Checks whether the identifier corresponds to a container identifier.
-Identifier to check.
-Checks if the given stream is an HttpRequest.
-Verifies if the given value is a Promise or not.
-Object to check.
-Determines whether the object is a RepresentationMetadata.
Determines whether the object is a ResourceIdentifier.
-Concatenates all the given strings into a normalized URL. -Will place slashes between input strings if necessary.
-Join all arguments together and normalize the resulting url.
-This works similar to path.join but you shouldn't use path.join for urls since it works
-differently depending on the operating system and also doesn't work for some cases.
Rest...parts: string[]Will list class names of components instantiated implementing the SingleThreaded -interface while the application is being run in multithreaded mode.
-The componentsManager being used to set up the application
-Creates a new iterable with the results of calling a provided function on every element in the calling array. -Similar to the Array.prototype.map function. -See the documentation of the above function for more details.
-Checks if the value of an HTTP Authorization header matches a specific scheme (e.g. Basic, Bearer, etc).
-Name of the authorization scheme (case insensitive).
-Optionalauthorization: stringThe value of the Authorization header (may be undefined).
-True if the Authorization header uses the specified scheme, false otherwise.
-Checks if the given type matches the given preferences.
-Type to match.
-Optionalpreferred: ValuePreferencesPreferences to match against.
-Modifies a SetMultiMap in place by removing and adding the requested entries. -Removals happen before additions.
-Map to start from.
-ModifyOptions describing the necessary changes.
-Parses an Accept header string.
-The Accept header string.
-Determines if invalid values throw errors (true) or log warnings (false). Defaults to false.
An array of Accept objects, sorted by weight. Accept parts -with invalid syntax are ignored and removed from the returned array.
-Parses an Accept-Charset header string.
-The Accept-Charset header string.
-Determines if invalid values throw errors (true) or log warnings (false). Defaults to false.
An array of AcceptCharset objects, sorted by weight. Invalid ranges -are ignored and not returned.
-Parses an Accept-DateTime header string.
-The Accept-DateTime header string.
-Determines if invalid values throw errors (true) or log warnings (false). Defaults to false.
An array with a single AcceptDatetime object, -or an empty array if a range in an invalid format is detected.
-Parses an Accept-Encoding header string.
-The Accept-Encoding header string.
-Determines if invalid values throw errors (true) or log warnings (false). Defaults to false.
An array of AcceptEncoding objects, sorted by weight. Invalid ranges -are ignored and not returned.
-Parses an Accept-Language header string.
-The Accept-Language header string.
-Determines if invalid values throw errors (true) or log warnings (false). Defaults to false.
An array of AcceptLanguage objects, sorted by weight. Invalid ranges -are ignored and not returned.
-Parses a list of split parameters and checks their validity. Parameters with invalid -syntax are ignored and not returned.
-A list of split parameters (token [ "=" ( token / quoted-string ) ])
-The double quoted strings that need to be replaced.
-Determines if invalid values throw errors (true) or log warnings (false). Defaults to false.
An array of name/value objects corresponding to the parameters.
-Parses the given path with the given InteractionRoute. -This assumes this call will succeed and thus expects the path to have the correct format. -If not, a 500 error will be thrown.
-Route to parse with.
-Path to parse.
-Helper function to convert a Readable into an array of quads.
-The readable object.
-Options for the parser.
-A promise containing the array of quads.
-Pipes one stream into another and emits errors of the first stream with the second. -If the first stream errors, the second one will be destroyed with the given error. -This will also make the stream Guarded.
-Initial readable stream.
-The destination for writing data.
-OptionalmapError: ((error: Error) => Error)Optional function that takes the error and converts it to a new error.
-The destination stream.
-Serializes a preferences object to a string for display purposes.
-Preferences to serialize
-Reads the template and returns it as a string.
-Optionaltemplate: TemplateSimilar to the Array.prototype.reduce function, but for an iterable. -See the documentation of the above function for more details. -The first element will be used as the initial value.
-Similar to the Array.prototype.reduce function, but for an iterable. -See the documentation of the above function for more details.
-Resets the internal logger factory, which holds the global logger factory. -For testing purposes only.
-Calls callback with the resolved value of object.
-In case object is a Promise, the result will also be a Promise,
-otherwise the result will be sync.
Converts a given Response (from a request that was already made) to an RDF dataset. -In case the given Response object was already parsed its body can be passed along as a string.
-The converter will be used to convert the response body to RDF.
-Response will be a Representation with content-type internal/quads.
-Optionalbody: stringSets the global logger factory. -This causes loggers created by getLoggerFor to delegate to a logger from the given factory.
-A logger factory.
-Wraps the callback for setInterval so errors get caught and logged. -Parameters are identical to the setInterval parameters starting from the 3rd argument. -The logger and message will be used when the callback throws an error. -Supports asynchronous callback functions.
-Converts a URI path to the canonical version by splitting on slashes, -decoding any percent-based encodings, and then encoding any special characters. -This function is used to clean unwanted characters in the components of -the provided path.
-The path to convert to its canonical URI path form.
-The canonical URI path form of the provided path.
-Convert an exported interface name to the properly expected Components.js type URI.
-The currently used ComponentsManager
-An interface name
-A Components.js type URI
-Converts a string to a named node when needed.
-Subject to potentially transform.
-Converts an object term when needed.
-Object to potentially transform.
-OptionalpreferLiteral: booleanWhether strings are converted to literals or named nodes.
-OptionalpreferLiteral: booleanOptionalpreferLiteral: booleanConverts a string to a named node when needed.
-Subject to potentially transform.
-Replaces all double quoted strings in the input string with "0", "1", etc.
The Accept header string.
-The transformed string and a map with keys "0", etc. and values the original string that was there.
Transforms a stream, ensuring that all errors are forwarded.
-The stream to be transformed.
-The transformation options.
-The transformed stream
-Updates the dc:modified time to the given time.
-Metadata to update.
-Last modified date. Defaults to current time.
-Same functionality as the yup validate function, but throws a BadRequestHttpError if there is an error.
-Optionaloptions: ValidateOptions<AnyObject>Asserts that the two given IDs are identical. -To be used when a request tries to access a resource to ensure they're not accessing someone else's data.
-Optionalinput: stringInput ID.
-Optionalexpected: stringExpected ID.
-The Community Solid Server is open software -that provides you with a Solid Pod and identity. -This Pod acts as your own personal storage space -so you can share data with people and Solid applications.
-As an open and modular implementation of the -Solid specifications, -the Community Solid Server is a great companion:
-🧑🏽 for people who want to try out having their own Pod
-👨🏿💻 for developers who want to quickly create and test Solid apps
-👩🏻🔬 for researchers who want to design new features for Solid
-And, of course, for many others who like to experience Solid.
-Make sure you have Node.js 18.0 or higher. -If this is your first time using Node.js, -you can find instructions on how to do this here.
-npx @solid/community-server
-
-
-Now visit your brand new server at http://localhost:3000/!
-To persist your pod's contents between restarts, use:
-npx @solid/community-server -c @css:config/file.json -f data/
-
-
-In case you prefer to use Docker instead, -you can find instructions for this and other methods in the -documentation.
-Substantial changes to server behavior can be achieved via JSON configuration files. -The Community Solid Server uses Components.js -to specify how modules and components need to be wired together at runtime.
-Recipes for configuring the server can be found at CommunitySolidServer/recipes.
-Examples and guidance on custom configurations
-are available in the config folder,
-and the configurations tutorial.
-There is also a configuration generator.
The server allows writing and plugging in custom modules -without altering its base source code.
-The 📗 API documentation and -the 📓 user documentation -can help you find your way. -There is also a repository of 📚 comprehensive tutorials
-The Solid Community Server code -is copyrighted by Inrupt Inc. -and imec -and available under the MIT License.
-Don't hesitate to start a discussion -or report a bug.
-There's also a Matrix-based, CSS-focused chat
-Learn more about Solid at solidproject.org.
-Creates the accounts.
-Email address for the account login.
-OptionalnameName to use for the pod. If undefined the pod will be made in the root of the server.
-Password for the account login.
-Adds the login methods.
-Creates the pods.
-Used to store account data.
-Creates a new and empty account. -Since this account will not yet have a login method, -implementations should restrict what is possible with this account, -and should potentially have something in place to clean these accounts up if they are unused.
-Finds the setting of the account with the given identifier.
-The account identifier.
-The setting to find the value of.
-Updates the settings for the account with the given identifier to the new values.
-The account identifier.
-The setting to update.
-The new value for the setting.
-A factory that generates an Adapter to be used by the IDP to persist information.
The oidc-provider library will call the relevant functions when it needs to find/create/delete metadata.
-For a full explanation of how these functions work and what is expected,
-have a look at https://github.com/panva/node-oidc-provider/blob/main/example/my_adapter.js
A JWK where the alg parameter is always defined.
JWK "alg" (Algorithm) Parameter.
-OptionalcrvOptionaldOptionaldpOptionaldqOptionaleOptionalextJWK "ext" (Extractable) Parameter.
-OptionalkOptionalkey_JWK "key_ops" (Key Operations) Parameter.
-OptionalkidJWK "kid" (Key ID) Parameter.
-OptionalktyJWK "kty" (Key Type) Parameter.
-OptionalnOptionalothOptionalpOptionalqOptionalqiOptionaluseJWK "use" (Public Key Use) Parameter.
-OptionalxOptionalx5cJWK "x5c" (X.509 Certificate Chain) Parameter.
-Optionalx5tJWK "x5t" (X.509 Certificate SHA-1 Thumbprint) Parameter.
-Optionalx5t#"x5t#S256" (X.509 Certificate SHA-256 Thumbprint) Parameter.
-Optionalx5uJWK "x5u" (X.509 URL) Parameter.
-OptionalyParameters that can be used to instantiate the server through code.
-OptionalargvAn array containing CLI arguments passed to start the process. -Entries here have the lowest priority for assigning values to variables.
-OptionalconfigPath to the server config file(s). Defaults to @css:config/default.json.
OptionalloaderProperties that will be used when building the Components.js manager. -Default values:
-typeChecking: false, as the server components would otherwise error.mainModulePath: @css:, which resolves to the directory of the CSS package.
-This is useful for packages that depend on the CSS
-but do not create any new modules themselves.OptionalshorthandCLI argument names and their corresponding values.
-E.g.: { rootFilePath: '.data' }.
-Abbreviated parameter names can not be used, so { f: '.data' } would not work.
In case both shorthand and variableBindings have entries that would result in a value for the same variable,
-variableBindings has priority.
OptionalvariableValues to apply to the Components.js variables.
-These are the variables CLI values will be converted to.
-The keys should be the variable URIs.
-E.g.: { 'urn:solid-server:default:variable:rootFilePath': '.data' }.
OptionalallowOptionalautoOptionaldecodeOptionaldefaultOptionalemitOptionalencodingOptionalflushPerforms any final actions after the source has ended
-OptionalhighOptionalobjectOptionalreadableOptionalreadableOptionalsignalWhen provided the corresponding AbortController can be used to cancel an asynchronous action.
OptionaltransformTransforms data from the source by calling the push method
OptionalwritableOptionalwritableOptionalwritableThe AtomicDataAccessor interface has identical function signatures as -the DataAccessor, with the additional constraint that every function call -must be atomic in its effect: either the call fully succeeds, reaching the -desired new state; or it fails, upon which the resulting state remains -identical to the one before the call.
-Should throw a NotImplementedHttpError if the DataAccessor does not support storing the given Representation.
-Incoming Representation.
-Deletes the resource and its corresponding metadata.
-Solid, §5.4: "When a contained resource is deleted, the server MUST also remove the corresponding containment -triple, which has the effect of removing the deleted resource from the containing container." -https://solid.github.io/specification/protocol#deleting-resources
-Resource to delete.
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Returns a data stream stored for the given identifier. -It can be assumed that the incoming identifier will always correspond to a document.
-Identifier for which the data is requested.
-Returns the metadata corresponding to the identifier.
-If possible, it is suggested to add a posix:size triple to the metadata indicating the binary size.
-This is necessary for range requests.
Identifier for which the metadata is requested.
-Writes metadata for a container. -If the container does not exist yet it should be created, -if it does its metadata should be overwritten, except for the containment triples.
-Identifier of the container.
-Metadata to store.
-Writes data and metadata for a document. -If any data and/or metadata exist for the given identifier, it should be overwritten.
-Identifier of the resource.
-Data to store.
-Metadata to store.
-Writes metadata for a resource. -It can safely be assumed that the subject resource already exists.
-Identifier of the subject resource.
-Metadata to store.
-A ResourceStore of which all operations are atomic.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Verifies if the requested operation is allowed.
-Extracts the credentials from the incoming request.
-Extracts the required modes from the generated Operation.
-Handler to call if the operation is authorized.
-Reads the permissions available for the Operation.
-A strategy for handling auxiliary related ResourceIdentifiers.
-Returns the identifier of the auxiliary resource corresponding to the given resource. -This does not guarantee that this auxiliary resource exists.
-Should error if there are multiple results: see getAuxiliaryIdentifiers.
-The ResourceIdentifier of which we need the corresponding auxiliary resource.
-The ResourceIdentifier of the corresponding auxiliary resource.
-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 getAuxiliaryIdentifier.
-The ResourceIdentifier of which we need the corresponding auxiliary resources.
-The ResourceIdentifiers of the corresponding auxiliary resources.
-Returns the identifier of the resource which this auxiliary resource is referring to. -This does not guarantee that this resource exists.
-Identifier of the auxiliary resource.
-The ResourceIdentifier of the subject resource.
-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.
-Identifier to check.
-true if the input identifier points to an auxiliary resource.
-A strategy for handling one or more types of auxiliary resources. -References to "an auxiliary resource" implicitly imply a specific type of auxiliary resources -supported by this strategy.
-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.
-Used for: -Solid, §4.3.1: "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." -https://solid.github.io/specification/protocol#auxiliary-resources-server
-The above is an example of how that metadata would only be added in case the input is the subject identifier.
-Metadata to update.
-Returns the identifier of the auxiliary resource corresponding to the given resource. -This does not guarantee that this auxiliary resource exists.
-Should error if there are multiple results: see getAuxiliaryIdentifiers.
-The ResourceIdentifier of which we need the corresponding auxiliary resource.
-The ResourceIdentifier of the corresponding auxiliary resource.
-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 getAuxiliaryIdentifier.
-The ResourceIdentifier of which we need the corresponding auxiliary resources.
-The ResourceIdentifiers of the corresponding auxiliary resources.
-Returns the identifier of the resource which this auxiliary resource is referring to. -This does not guarantee that this resource exists.
-Identifier of the auxiliary resource.
-The ResourceIdentifier of the subject resource.
-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.
-Identifier to check.
-true if the input identifier points to an auxiliary resource.
-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.
-Identifier of the auxiliary resource.
-Whether this auxiliary resources uses its own authorization instead of the subject resource authorization.
-Identifier of the auxiliary resource.
-Validates if the representation contains valid data for an auxiliary resource. -Should throw an error in case the data is invalid.
-Representation of the auxiliary resource.
-Base URL of the server.
-Used to potentially set the solid:oidcIssuer triple
-and/or the pod URL if it is a root pod.
Generates the base URL of the pod based on the input name.
Pod data store.
-The path of where the WebID will be generated by the template, relative to the pod URL.
-WebID data store.
-OptionalallowedThe allowed method(s). * can be used to indicate all methods are allowed.
-Default is [ '*' ].
OptionalallowedRegular expression(s) used to match the target URL.
-The base URl without trailing slash will be stripped of before applying the regular expressions,
-so the input will always start with a /.
-Default is [ '.*' ].
OptionalbaseThe base URL of the server.
-Not required if no value is provided for allowedPathNames.
The handler to call if all checks pass.
-Options to be used when creating the server.
-Due to Components.js not supporting external types, this has been simplified (for now?).
-The common https keys here (key/cert/pfx) will be interpreted as file paths that need to be read
-before passing the options to the createServer function.
Input parsers required for a BasicRequestParser.
-Stores and creates ClientCredentials.
-Creates new token.
-Identifier to use for the new token.
-WebID to identify as when using this token.
-Deletes the token with the given ID.
-ID of the token.
-Find all tokens created by the given account.
-ID of the account.
-Find the ClientCredentials with the given label.
-Label of the token.
-Find the ClientCredentials with the given ID.
-ID of the token.
-Used for instantiating new object using Components.js configurations.
-Instantiates a new object using Components.js.
-Location of the config to instantiate.
-IRI of the object in the config that will be the result.
-Variables to send to Components.js
-The resulting object, corresponding to the given component IRI.
-The conditions of an HTTP conditional request.
-OptionalmatchesETagValid if matching any of the given ETags.
-Checks validity based on the given metadata.
-Optionalmetadata: RepresentationMetadataMetadata of the representation. Undefined if the resource does not exist.
-Optionalstrict: booleanHow to compare the ETag related headers. -If true, the comparison will happen on representation level. -If false, the comparison happens on resource level, ignoring the content-type.
-OptionalmodifiedValid if modified since the given date.
-OptionalnotValid if not matching any of the given ETags.
-OptionalunmodifiedValid if not modified since the given date.
-Extra options for the ConstantConverter.
-OptionalcontainerWhether this should trigger on containers.
-OptionaldisabledMedia ranges for which the conversion should not happen.
-OptionaldocumentWhether this should trigger on documents.
-OptionalenabledMedia ranges for which the conversion should happen.
-OptionalminThe minimum requested quality/preference before this should trigger.
-Base URL of the server.
-Generator that should be used to generate container contents.
-Relative path of the container.
-Used to store initialization status.
-Key that is used to store the boolean in the storage indicating the container is initialized.
-ResourceStore where the container should be stored.
-Used to generate and store cookies.
-Deletes the given cookie.
-Cookie to delete.
-Generates and stores a new cookie for the given accountId. -This does not replace previously generated cookies.
-Account to create a cookie for.
-The generated cookie.
-Return the accountID associated with the given cookie.
-Cookie to find the account for.
-Refreshes the cookie expiration and returns when it will expire if the cookie exists.
-Cookie to refresh.
-A DataAccessor is the building block closest to the actual data storage. -It should not worry about most Solid logic, most of that will be handled before it is called. -There are a few things it still needs to do, and it is very important every implementation does this:
-getChildren.Should throw a NotImplementedHttpError if the DataAccessor does not support storing the given Representation.
-Incoming Representation.
-Deletes the resource and its corresponding metadata.
-Solid, §5.4: "When a contained resource is deleted, the server MUST also remove the corresponding containment -triple, which has the effect of removing the deleted resource from the containing container." -https://solid.github.io/specification/protocol#deleting-resources
-Resource to delete.
-Returns metadata for all resources in the requested container. -This should not be all metadata of those resources (but it can be), -but instead the main metadata you want to show in situations -where all these resources are presented simultaneously. -Generally this would be metadata that is present for all of these resources, -such as resource type or last modified date.
-It can be safely assumed that the incoming identifier will always correspond to a container.
-Identifier of the parent container.
-Returns a data stream stored for the given identifier. -It can be assumed that the incoming identifier will always correspond to a document.
-Identifier for which the data is requested.
-Returns the metadata corresponding to the identifier.
-If possible, it is suggested to add a posix:size triple to the metadata indicating the binary size.
-This is necessary for range requests.
Identifier for which the metadata is requested.
-Writes metadata for a container. -If the container does not exist yet it should be created, -if it does its metadata should be overwritten, except for the containment triples.
-Identifier of the container.
-Metadata to store.
-Writes data and metadata for a document. -If any data and/or metadata exist for the given identifier, it should be overwritten.
-Identifier of the resource.
-Data to store.
-Metadata to store.
-Writes metadata for a resource. -It can safely be assumed that the subject resource already exists.
-Identifier of the subject resource.
-Metadata to store.
-Responsible for everything related to ETag generation and comparison. -ETags are constructed in such a way they can both be used for the standard ETag usage of comparing representations, -but also to see if two ETags of different representations correspond to the same resource state.
-Generates an ETag for the given metadata. Returns undefined if no ETag could be generated.
-Metadata of the representation to generate an ETag for.
-Validates whether the given metadata corresponds to the given ETag.
-Metadata of the resource.
-ETag to compare to.
-True if the comparison needs to be on representation level. -False if it is on resource level and the content-type doesn't matter.
-Validates whether 2 ETags correspond to the same state of a resource, -independent of the representation the ETags correspond to.
-First ETag to compare.
-Second ETag to compare.
-A ReadWriteLocker where the locks expire after a given time.
-As ReadWriteLocker.withReadLock but the locked function gets called with a maintainLock callback function
-to reset the lock expiration every time it is called.
-The resulting promise will reject once the lock expires.
Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked. -Receives a callback as input parameter to maintain the lock.
-As ReadWriteLocker.withWriteLock but the locked function gets called with a maintainLock
-callback function to reset the lock expiration every time it is called.
-The resulting promise will reject once the lock expires.
Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked. -Receives a callback as input parameter to maintain the lock.
-A KeyValueStorage in which the values can expire. -Entries with no expiration date never expire.
-Deletes the value stored for the given key.
-Key to delete.
-If there was a value to delete.
-An iterable of entries in the storage.
-Returns the value stored for the given identifier.
-undefined if no value is stored.
Checks whether there is a value stored for the given key.
-Sets the value for the given key. -Should error if the data is already expired.
-The storage.
-Sets the value for the given key. -Should error if the data is already expired.
-The storage.
-Supports mapping a file to an URL and back.
-Maps the given file path to an URL and determines the content-type
-The input file path.
-If the path corresponds to a file.
-A ResourceLink with all the necessary metadata.
-Maps the given resource identifier / URL to a file path. -Determines the content-type, if no content-type was provided, by finding the corresponding file. -If there is no corresponding file, a file path will be generated. -For containers, the content-type input gets ignored.
-The input identifier.
-If we are mapping the metadata of the resource instead of its data.
-OptionalcontentType: stringThe (optional) content-type of the resource.
-A ResourceLink with all the necessary metadata.
-Factory that can create FileIdentifierMappers so the base and rootFilePath can be set dynamically. -Specifically used when identifiers need to be generated for a new pod (since pod identifiers are generated).
-Allows for cleaning up an object and stopping relevant loops when the application needs to be stopped. -Use this interface to add finalization logic to classes that already extend some other type. -NOTE: classes without an existing extends-relation should extend from Finalizer instead!
-Sender to send the actual email.
-Store containing the forgot password records.
-Store containing the password login information.
-Route used to generate the reset link for the user.
-Template engine that will be used to generate the email body.
-Responsible for storing the records that are used when a user forgets their password.
-Deletes the Forgot Password Confirmation Record.
-The record id of the forgot password confirmation record.
-Creates a Forgot Password Confirmation Record. This will be to remember that -a user has made a request to reset a password. Throws an error if the email doesn't -exist.
-ID of the email/password login object.
-The record id. This should be included in the reset password link.
-Gets the email associated with the forgot password confirmation record -or undefined if it's not present.
-The record id retrieved from the link.
-The user's email.
-The Forwarded header from RFC7239
-A typed interface of EventEmitter.
-Use the & operator to combine multiple event/function pairs into a single event emitter.
-The result needs to be a type and not an interface because of https://github.com/microsoft/TypeScript/issues/16936.
Use the createGenericEventEmitterClass function to generate an event emitter class with the correct typings -in case EventEmitter needs to be extended.
-Alias for emitter.on(eventName, listener).
Synchronously calls each of the listeners registered for the event namedeventName, in the order they were registered, passing the supplied arguments
-to each.
Returns true if the event had listeners, false otherwise.
const EventEmitter = require('events');
const myEmitter = new EventEmitter();
// First listener
myEmitter.on('event', function firstListener() {
console.log('Helloooo! first listener');
});
// Second listener
myEmitter.on('event', function secondListener(arg1, arg2) {
console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
});
// Third listener
myEmitter.on('event', function thirdListener(...args) {
const parameters = args.join(', ');
console.log(`event with parameters ${parameters} in third listener`);
});
console.log(myEmitter.listeners('event'));
myEmitter.emit('event', 1, 2, 3, 4, 5);
// Prints:
// [
// [Function: firstListener],
// [Function: secondListener],
// [Function: thirdListener]
// ]
// Helloooo! first listener
// event with parameters 1, 2 in second listener
// event with parameters 1, 2, 3, 4, 5 in third listener
-
-
-Returns an array listing the events for which the emitter has registered
-listeners. The values in the array are strings or Symbols.
const EventEmitter = require('events');
const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});
const sym = Symbol('symbol');
myEE.on(sym, () => {});
console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
-
-
-Returns the number of listeners listening to the event named eventName.
If listener is provided, it will return how many times the listener
-is found in the list of the listeners of the event.
Returns a copy of the array of listeners for the event named eventName.
server.on('connection', (stream) => {
console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
-
-
-Alias for emitter.removeListener().
Adds the listener function to the end of the listeners array for the
-event named eventName. No checks are made to see if the listener has
-already been added. Multiple calls passing the same combination of eventNameand listener will result in the listener being added, and called, multiple
-times.
server.on('connection', (stream) => {
console.log('someone connected!');
});
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
By default, event listeners are invoked in the order they are added. Theemitter.prependListener() method can be used as an alternative to add the
-event listener to the beginning of the listeners array.
const myEE = new EventEmitter();
myEE.on('foo', () => console.log('a'));
myEE.prependListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
// b
// a
-
-
-Adds a one-timelistener function for the event named eventName. The
-next time eventName is triggered, this listener is removed and then invoked.
server.once('connection', (stream) => {
console.log('Ah, we have our first user!');
});
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
By default, event listeners are invoked in the order they are added. Theemitter.prependOnceListener() method can be used as an alternative to add the
-event listener to the beginning of the listeners array.
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
// b
// a
-
-
-Adds the listener function to the beginning of the listeners array for the
-event named eventName. No checks are made to see if the listener has
-already been added. Multiple calls passing the same combination of eventNameand listener will result in the listener being added, and called, multiple
-times.
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
Adds a one-timelistener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this
-listener is removed, and then invoked.
server.prependOnceListener('connection', (stream) => {
console.log('Ah, we have our first user!');
});
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
Returns a copy of the array of listeners for the event named eventName,
-including any wrappers (such as those created by .once()).
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));
// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];
// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();
// Logs "log once" to the console and removes the listener
logFnWrapper();
emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');
// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
-
-
-Removes all listeners, or those of the specified eventName.
It is bad practice to remove listeners added elsewhere in the code,
-particularly when the EventEmitter instance was created by some other
-component or module (e.g. sockets or file streams).
Returns a reference to the EventEmitter, so that calls can be chained.
Removes the specified listener from the listener array for the event namedeventName.
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
-
-
-removeListener() will remove, at most, one instance of a listener from the
-listener array. If any single listener has been added multiple times to the
-listener array for the specified eventName, then removeListener() must be
-called multiple times to remove each instance.
Once an event is emitted, all listeners attached to it at the
-time of emitting are called in order. This implies that anyremoveListener() or removeAllListeners() calls after emitting and before the last listener finishes execution
-will not remove them fromemit() in progress. Subsequent events behave as expected.
const myEmitter = new MyEmitter();
const callbackA = () => {
console.log('A');
myEmitter.removeListener('event', callbackB);
};
const callbackB = () => {
console.log('B');
};
myEmitter.on('event', callbackA);
myEmitter.on('event', callbackB);
// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
// A
// B
// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
// A
-
-
-Because listeners are managed using an internal array, calling this will
-change the position indices of any listener registered after the listener
-being removed. This will not impact the order in which listeners are called,
-but it means that any copies of the listener array as returned by
-the emitter.listeners() method will need to be recreated.
When a single function has been added as a handler multiple times for a single
-event (as in the example below), removeListener() will remove the most
-recently added instance. In the example the once('ping')listener is removed:
const ee = new EventEmitter();
function pong() {
console.log('pong');
}
ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);
ee.emit('ping');
ee.emit('ping');
-
-
-Returns a reference to the EventEmitter, so that calls can be chained.
Optional[captureBy default EventEmitters will print a warning if more than 10 listeners are
-added for a particular event. This is a useful default that helps finding
-memory leaks. The emitter.setMaxListeners() method allows the limit to be
-modified for this specific EventEmitter instance. The value can be set toInfinity (or 0) to indicate an unlimited number of listeners.
Returns a reference to the EventEmitter, so that calls can be chained.
Interface describing what an HttpError class should look like. -This helps us make sure all HttpError classes have the same utility static functions.
-Optionalmessage: stringOptionaloptions: HttpErrorOptionsA factory for HTTP servers.
-Utility class for generating container identifiers.
-Extracts the root pod this identifier would be in. -This assumes the identifier of that pod was generated by the same instance of this interface.
-Generates container identifiers based on an input name. -This is simply string generation, no resource-related checks are run.
-Captures the behavior of container identifiers in a certain storage configuration.
-Checks if the given container would contain the given identifier. -This does not check that either of these identifiers actually exist. -This is similar to calling getParentContainer on an identifier -and comparing the result.
-If transitive is false this only checks if container is the direct parent container of identifier.
Generates the identifier of the container this resource would be a member of. -This does not check if that identifier actually exists. -Will throw an error if the input identifier is a root container or is not supported.
-Checks if the input corresponds to the identifier of a root container. -This does not check if this identifier actually exists.
-Verifies if this identifier is supported. -This does not check if this identifier actually exists, -but checks if the identifier is in scope for this class.
-Factory that creates the adapter used for OIDC data storage.
-Base URL of the server.
-Store containing the generated client credentials with their associated WebID.
-Used to convert errors thrown by the OIDC library.
-The route where requests should be redirected to in case of an OIDC interaction.
-Generates the JWK used for signing and decryption.
-Path for all requests targeting the OIDC library.
-Used to generate new prompt that are needed in addition to the defaults prompts.
-Used to write out errors thrown by the OIDC library.
-Extra information will be added to the error output if this is true.
-Storage used to store cookie keys, so they can be re-used in case of multithreading.
-A storage solution that allows for more complex queries than a key/value storage -and allows setting indexes on specific keys.
-Creates an object of the given type. -The storage will generate an identifier for the newly created object.
-The type to create.
-The value to set for the created object.
-A representation of the newly created object, including its new identifier.
-Creates an index on a key of the given type, to allow for better queries involving those keys. -Similar to IndexedStorage.defineType these calls need to happen first.
-Informs the storage of the definition of a specific type. -A definition is a key/value object with the values being a valid ValueTypeDescription. -Generally, this call needs to happen for every type of this storage, -and before any calls are made to interact with the data.
-Deletes the given object. -This will also delete all objects that reference that object if the corresponding key is not optional.
-Returns an iterator over all objects of the given type.
-The type to iterate over.
-Finds all objects matching a specific IndexedQuery.
-The type of objects to find.
-The query to execute.
-A list of objects matching the query.
-Similar to IndexedStorage.find, but only returns the identifiers of the found objects.
-The type of objects to find.
-The query to execute.
-A list of identifiers of the matching objects.
-Returns the object of the given type with the given identifier.
-The type of object to get.
-The identifier of that object.
-A representation of the object, or undefined if there is no object of that type with that identifier.
Returns true if the object of the given type with the given identifier exists.
Sets the value of a specific object. -The identifier in the object is used to identify the object.
-The type of the object to set.
-The new value for the object.
-Sets the value of one specific field in an object.
-Allows for initializing state or executing logic when the application is started. -Use this interface to add initialization logic to classes that already extend some other type. -NOTE: classes without an existing extends-relation should extend from Initializer instead!
-OptionalaccountThe account id of the agent doing the request if one could be found.
-OptionaloidcWill be defined if the OIDC library expects us to resolve an interaction it can't handle itself, -such as logging a user in.
-The operation to execute.
-Routes are used to handle the pathing for API calls.
-They can have dynamic values in the paths they support. -Typings are used to indicate the keys used to indicate what the corresponding values are.
-Returns the path that is the result of having the specified values for the dynamic parameters.
-Will throw an error in case the input parameters object is missing one of the expected keys.
Optionalparameters: Record<T, string>Values for the dynamic parameters.
-Checks if the provided path matches the route (pattern).
-The result will be undefined if there is no match.
If there is a match the result object will have the corresponding values for all the parameters.
-OptionalaccountThe account id of the agent doing the request if one could be found.
-The JSON body of the request.
-The metadata of the request.
-The operation to execute.
-OptionaloidcWill be defined if the OIDC library expects us to resolve an interaction it can't handle itself, -such as logging a user in.
-The resource that is being targeted.
-Contains a JSON object and any associated metadata. -Similar to a Representation but with all the data in memory instead of as a stream -and specific to JSON.
-An interface that can be used by classes that can provide a view besides doing an action. -Designed to be used by a JsonInteractionHandler that has a view explaining what JSON input it supports.
-Generates an asymmetric JWK.
-The functions always need to return the same value.
-A simple storage solution that can be used for internal values that need to be stored. -To prevent potential issues, keys should be urlencoded before calling the storage.
-Deletes the value stored for the given key.
-Key to delete.
-If there was a value to delete.
-An iterable of entries in the storage.
-Returns the value stored for the given identifier.
-undefined if no value is stored.
Checks whether there is a value stored for the given key.
-Sets the value for the given key.
-The storage.
-Base URL of the server.
-Used to indicate in the response what the object of the solid:oidcIssuer triple should be.
Validates whether the user trying to link the WebID is the actual owner of that WebID.
-Pod store to find out if the account created the pod containing the WebID.
-Before calling the OwnershipValidator, we first check if the target WebID is in a pod owned by the user.
-Route used to generate the WebID link resource URL.
-WebID store to store WebID links.
-Logs messages, with convenience methods to log on a specific level.
-Log a message at the 'debug' level.
-Log a message at the 'error' level.
-Log a message at the 'info' level.
-Log the given message at the given level. -If the internal level is higher than the given level, the message may be voided.
-The level to log at.
-The message to log.
-Optionalmeta: LogMetadataOptional metadata to include in the log message.
-Log a message at the 'silly' level.
-Log a message at the 'verbose' level.
-Log a message at the 'warn' level.
-Instantiates new logger instances.
-A IndexedStorage where the defineType function
-takes an extra parameter to indicate if the type corresponds to a login method.
-This is useful for storages that want to add extra requirements based on the data being edited.
In practice, we use this because we want to require accounts to have at least 1 login method.
-Creates an object of the given type. -The storage will generate an identifier for the newly created object.
-The type to create.
-The value to set for the created object.
-A representation of the newly created object, including its new identifier.
-Creates an index on a key of the given type, to allow for better queries involving those keys. -Similar to IndexedStorage.defineType these calls need to happen first.
-Defines a type in the storage, just like in an IndexedStorage, -but additionally it needs to be indicated if the type corresponds to a login method or not.
-Deletes the given object. -This will also delete all objects that reference that object if the corresponding key is not optional.
-Returns an iterator over all objects of the given type.
-The type to iterate over.
-Finds all objects matching a specific IndexedQuery.
-The type of objects to find.
-The query to execute.
-A list of objects matching the query.
-Similar to IndexedStorage.find, but only returns the identifiers of the found objects.
-The type of objects to find.
-The query to execute.
-A list of identifiers of the matching objects.
-Returns the object of the given type with the given identifier.
-The type of object to get.
-The identifier of that object.
-A representation of the object, or undefined if there is no object of that type with that identifier.
Returns true if the object of the given type with the given identifier exists.
Sets the value of a specific object. -The identifier in the object is used to identify the object.
-The type of the object to set.
-The new value for the object.
-Sets the value of one specific field in an object.
-Internal representation of a notification channel. -Most of the fields are those defined in -https://solidproject.org/TR/2022/notifications-protocol-20221231#notification-channel-data-model
-We only support notification channels with a single topic.
-OptionalacceptThe media type in which the receiver expects the notifications.
-OptionalendWhen the channel should stop existing, in milliseconds since epoch.
-The unique identifier of the channel.
-OptionallastInternal value that we use to track when this channel last sent a notification.
-OptionalrateThe minimal time required between notifications, in milliseconds.
-OptionalreceiveThe resource receivers can use to establish a connection and receive notifications.
-OptionalsendThe resource on the receiver where notifications can be sent.
-OptionalsenderCan be used to identify the sender.
-OptionalstartWhen the channel should start sending notifications, in milliseconds since epoch.
-OptionalstateThe state parameter sent by the receiver. -This is used to send a notification when the channel is established and the topic resource has a different state.
-The resource this channel sends notifications about.
-The channel type.
-Stores all the information necessary to keep track of notification channels. -Besides the standard channel info it also stores features specific to a certain channel type.
-This storage assumes that a channel can only have a single identifier as its topic.
-Adds the given channel to the storage.
-Channel to add.
-Deletes the given notification channel from the storage. -Returns true if the channel existed.
-The identifier of the notification channel
-Returns the requested channel.
-undefined if no match was found or if the notification channel expired.
The identifier of the notification channel.
-Returns the identifiers of all notification channel entries that have the given identifier as their topic. -The identifiers can potentially correspond to expired channels.
-The identifier that is the topic.
-Updates the given notification channel.
-The id and the topic can not be updated.
The channel to update.
-A specific channel type as defined at -https://solidproject.org/TR/2022/notifications-protocol-20221231#notification-channel-types.
-All functions that take a NotificationChannel as input
-only need to support channels generated by an initChannel on the same class.
This function will be called after the serialized channel is sent back as a response, -allowing for any final actions that need to happen.
-The notification channel that is completed.
-Determines which modes are required to allow the given notification channel.
-The notification channel to verify.
-The required modes.
-Returns the SubscriptionService that describes how to subscribe to this channel type.
-Validate and convert the input quads into a NotificationChannel.
-The input quads.
-The credentials of the agent doing the request.
-Converts a NotificationChannel to a serialized JSON-LD representation.
-The notification channel to serialize.
-OptionalactivityOptionalmetadataUsed to determine if the request has the necessary permissions.
-The NotificationChannelType with all the necessary information.
-RepresentationConverter used to convert input data into RDF.
-Used to extract the credentials from the request.
-OptionalmaxOverrides the expiration feature of channels, by making sure they always expire after the maxDuration value.
-If the expiration of the channel is shorter than maxDuration, the original value will be kept.
-Value is set in minutes. 0 is infinite.
-Defaults to 20160 minutes, which is 2 weeks.
Used to determine which permissions the found credentials have.
-Storage used to store the channels.
-These are the fields that can occur in an OAuth error response as described in RFC 6749, §4.1.2.1. -https://datatracker.ietf.org/doc/html/rfc6749#section-4.1.2.1
-This interface is identical to the ErrorOut interface of the oidc-provider library,
-but having our own version reduces the part of the codebase that is dependent on that library.
A single REST operation.
-Representation of the body and metadata headers.
-OptionalconditionsConditions the resource must fulfill for a valid operation.
-The HTTP method (GET/POST/PUT/PATCH/DELETE/etc.).
-Representation preferences of the response. Will be empty if there are none.
-Identifier of the target.
-Responsible for storing everything related to email/password based login combinations.
-Authenticate if the email and password are correct and return the account and login ID if they are. -Throw an error if they are not.
-The user's email.
-This user's password.
-Confirms that the login has been verified.
-This can be used with, for example, email verification.
-The login can only be used after it is verified.
-In case verification is not required, this should be called immediately after the create call.
ID of the login.
-Creates a new login entry for this account.
-Email to log in with.
-Account ID.
-Password to authenticate with.
-Delete the login entry.
-ID of the login object.
-Find all login objects created by this account.
-ID of the account to find the logins for.
-Finds the account and login ID associated with this email.
-Email to find the information for.
-Finds the account and email associated with this login ID.
-The ID of the login object.
-Changes the password.
-ID of the login object.
-The new password.
-Represents the changes needed for a PATCH request.
-Whether the data stream consists of binary/string chunks -(as opposed to complex objects).
-The raw data stream for this representation.
-Whether the data stream is empty. -This being true does not imply that the data stream has a length of more than 0, -only that it is a possibility and should be read to be sure.
-The corresponding metadata.
-The ID of the account to create the pod for.
-OptionalnameThe name to use when generating the base URL of the pod. -If undefined, the pod will be created in the root of the server.
-OptionalsettingsAdditional settings to use when generating a pod.
-OptionalwebThe WebID to use for creation of the pod. -This WebID will be used in the templates to, for example, determine who has access. -If none is provided, the WebID generated by the creator will be used, -in which case that WebID will also be linked to the account.
-Generates an empty resource store to be used as a new pod. -It is also responsible for storing any relevant variables needed to instantiate this resource store. -These can then be used when the server is restarted to re-instantiate those stores.
-Creates a ResourceStore based on the given input. -Should error if there already is a store for the given identifier.
-Parameters to be used for the new pod.
-A new ResourceStore to be used for the new pod.
-Covers all functions related to pod management. -In the future this should also include delete, and potentially recovery functions.
-Creates a pod for the given settings.
-Settings describing the pod.
-If the creation should proceed if there already is a resource there.
-Metadata related to pod generation.
-The root of the pod. Determines where the pod will be created.
-OptionalemailE-mail of the owner. Used in provisioning templates.
-OptionalnameName of the owner. Used in provisioning templates.
-OptionaloidcThe OIDC issuer of the owner's WebId. Necessary if the WebID in the pod is registered with the IDP.
-OptionaltemplateRequired for dynamic pod configuration. -Indicates the name of the config to use for the pod.
-The WebId of the owner of this pod.
-Can be used to create new pods and find relevant information.
-Also keeps track of the owners of a pod.
-The visible parameter indicates if an owner should be publicly exposed or not.
Creates a new pod and updates the account accordingly.
-Identifier of the account that is creating the account.
-Settings to create a pod with.
-If the pod is allowed to overwrite existing data.
-The ID of the new pod resource.
-Find the ID of the account that created the given pod.
-The pod base URL.
-Find all the pod resources created by the given account ID.
-Account ID to find pod resources for.
-Returns the baseURl and account that created the pod for the given pod ID.
-ID of the pod.
-Find all owners for the given pod ID.
-ID of the pod.
-Remove an owner from a pod. -This should not remove the last owner as a pod always needs to have at least one owner. -https://solidproject.org/TR/2022/protocol-20221231#server-storage-track-owner
-ID of the pod.
-WebID of the owner.
-Add or update an owner of a pod. -In case there already is an owner with this WebID, it will be updated, -otherwise a new owner will be added.
-ID of the pod.
-WebID of the owner.
-Whether the owner wants to be exposed or not.
-Returns a Provider of OIDC interactions.
-Identifier of the resource that will be patched
-The changes represented by a Patch object
-The store on which the patch will be executed. -Note the RdfStorePatcher is allowed to make changes to the store. -This means the store object might be modified by the patch.
-Allows the locking of resources which is needed for non-atomic ResourceStores.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that only require reading the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Run the given function while the resource is locked. -The lock will be released when the (async) input function resolves. -This function should be used for operations that could modify the resource.
-Identifier of the resource that needs to be locked.
-A function to execute while the resource is locked.
-A promise resolving when the lock is released.
-Interface describing what a RedirectHttpError class should look like.
-Makes sure a location value is always needed.
Optionalmessage: stringOptionaloptions: HttpErrorOptionsA representation of a resource.
-Whether the data stream consists of binary/string chunks -(as opposed to complex objects).
-The raw data stream for this representation.
-Whether the data stream is empty. -This being true does not imply that the data stream has a length of more than 0, -only that it is a possibility and should be read to be sure.
-The corresponding metadata.
-Contains preferences along multiple content negotiation dimensions.
-All dimensions are optional for ease of constructing; either undefined
-or an empty ValuePreferences can indicate that no preferences were specified.
An interface for classes that only have 1 way to lock interfaces. -In general this should only be used by components implementing the ReadWriteLocker interface. -Other components that require locking of resources should use that interface.
-Acquires a lock on the requested identifier. -The promise will resolve when the lock has been acquired.
-Resource to acquire a lock on.
-Releases a lock on the requested identifier. -The promise will resolve when the lock has been released. -If there is no lock on the resource, an error should be thrown.
-Resource to release the lock on.
-A set containing resources.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-A ResourceStore represents a collection of resources. -It has been designed such that each of its methods -can be implemented in an atomic way: for each CRUD operation, only one -dedicated method needs to be called. A fifth method enables the optimization -of partial updates with PATCH. It is up to the implementer of the interface to -(not) make an implementation atomic.
-ResourceStores are also responsible for taking auxiliary resources into account -should those be relevant to the store.
-Creates a new resource in the container.
-Container in which to create a resource.
-Representation of the new resource
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Deletes a resource.
-Identifier of resource to delete.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Retrieves a representation of a resource.
-Identifier of the resource to read.
-Preferences indicating desired representations.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A representation corresponding to the identifier.
-Checks whether a resource exists in this ResourceSet.
-Identifier of resource to check.
-A promise resolving if the resource already exists.
-Sets or updates the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-Description of which parts to update.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Sets or replaces the representation of a resource, -creating a new resource and intermediary containers as needed.
-Identifier of resource to update.
-New representation of the resource.
-Optionalconditions: ConditionsOptional conditions under which to proceed.
-A ChangeMap.
-Generator used to create resources relative to a given base identifier. -Note that this is not an AsyncHandler since it returns an AsyncIterable instead of a promise.
-Generates resources with the given options. -The output Iterable should be sorted so that containers always appear before their contents.
-Base identifier.
-Options that can be used when generating resources.
-A map where the keys are the identifiers and the values the corresponding representations to store.
-OptionalallowedThe allowed method(s). * can be used to indicate all methods are allowed.
-Default is [ '*' ].
OptionalallowedRegular expression(s) used to match the target URL.
-The base URl without trailing slash will be stripped of before applying the regular expressions,
-so the input will always start with a /.
-Default is [ '.*' ].
OptionalbaseThe base URL of the server.
-Not required if no value is provided for allowedPathNames.
The handler to call if all checks pass.
-A SetMultiMap is a Map where a single key can have multiple unique values.
-Deleting a key removes all bindings with this key from the Map.
-Setting a value for a key replaces all previous bindings with this key.
-Using an empty Set when calling the set function is the same as deleting that key.
Iterates over all key/value bindings in this Map.
-Readonly[toAdds the given key/value binding to the Map.
-Returns a Readonly Map representation of this Map.
-Deletes the given key/value binding from the Map.
-Iterates over all distinct keys in this Map.
-Iterates over all key/value bindings in this Map.
-Iterates over all distinct keys in this Map, together with a Set of their values.
-Loops over all key/value bindings.
-Returns all values stored for the given key.
-Returns undefined if there are no values for this key.
Returns true if this key/value binding exists in the Map.
-ReadonlysizeIterates over all distinct keys and returns their Set of values.
-Iterates over all values in this Map.
-true if an element in the Map existed and has been removed, or false if the element does not exist.
-boolean indicating whether an element with the specified key exists or not.
-Logs messages on a specific level.
-Log the given message at the given level. -If the internal level is higher than the given level, the message may be voided.
-The level to log at.
-The message to log.
-Optionalmeta: LogMetadataOptional metadata to include in the log message.
-Indicates a class is only meant to work in singlethreaded setups and is thus not threadsafe.
-A SizeReporter's only purpose (at the moment) is to calculate the size -of a resource. How the size is calculated or what unit it is in is defined by -the class implementing this interface. -One might use the amount of bytes and another might use the amount of triples -stored in a resource.
-Calculate the size of a chunk based on which SizeReporter is being used
-the chunk of which you want the size
-the size of the passed chunk as a number
-Estimate the size of a body / request by looking at its metadata
-the metadata of the resource you want an estimated size of
-the estimated size of the body / request or undefined if no -meaningful estimation can be made
-Get the size of a given resource
-the resource of which you want the size
-The size of the resource as a Size object calculated recursively -if the identifier leads to a container
-Get the unit as a string in which a SizeReporter returns data
-OptionalallowOptionalautoOptionaldecodeOptionaldefaultOptionalemitOptionalencodingOptionalendOptionalhighOptionalobjectOptionalreadableOptionalreadableOptionalsignalWhen provided the corresponding AbortController can be used to cancel an asynchronous action.
OptionalsizeOptionalwritableOptionalwritableOptionalwritableA specific type of Patch corresponding to a SPARQL update.
-Algebra corresponding to the SPARQL update.
-Whether the data stream consists of binary/string chunks -(as opposed to complex objects).
-The raw data stream for this representation.
-Whether the data stream is empty. -This being true does not imply that the data stream has a length of more than 0, -only that it is a possibility and should be read to be sure.
-The corresponding metadata.
-Interface used to find the storage a specific identifier is located in.
-Input arguments required for BaseResourcesGenerator
-Factory used to generate mapper relative to the base identifier.
-The metadataStrategy
-The default ResourceStore
-Template engine for generating the resources.
-OptionaltemplateThe extension of files that need to be interpreted as templates. -Will be removed to generate the identifier.
-A subscription service description as based on the specification data model -https://solidproject.org/TR/2022/notifications-protocol-20221231#subscription-service-data-model
-Interface for Node.js System errors
-Node.js generates system errors when exceptions occur within its runtime environment. -These usually occur when an application violates an operating system constraint. -For example, a system error will occur if an application attempts to read a file that does not exist.
-OptionaladdressIf present, the address to which a network connection failed.
-The string error code. -Full list: https://man7.org/linux/man-pages/man3/errno.3.html
-OptionaldestIf present, the file path destination when reporting a file system error.
-The system-provided error number.
-OptionalinfoIf present, extra details about the error condition.
-OptionalpathIf present, the file path when reporting a file system error.
-OptionalportIf present, the network connection port that is not available.
-OptionalstackThe name of the system call that triggered the error.
-Generator used to create resources relative to a given base identifier. -Similar to ResourcesGenerator, but takes as input a string -indicating where the templates are stored that need to be used for resource generation.
-Generates resources with the given options, based on the given template folder. -The output Iterable should be sorted so that containers always appear before their contents.
-Folder where the templates are located.
-Base identifier.
-Options that can be used when generating resources.
-A map where the keys are the identifiers and the values the corresponding representations to store.
-The storage in which account data of the previous version is stored.
-Storages for which all entries need to be removed.
-The storage in which client credentials are stored from the previous version.
-The storage that will contain the account data in the new format. -Wrong typings to prevent Components.js typing issues.
-The storage that will contain the setup entries in the new format.
-The storage in which all setup values are stored, including the version of the server.
-OptionalskipIf true, no confirmation prompt will be printed to the stdout.
-The key necessary to get the version from the setupStorage.
Stores and updates WebID to Account links.
-Creates a new WebID link for the given WebID and account.
-WebID to link.
-ID of the link.
-Deletes the link with the given ID
-ID of the link.
-Finds all links associated with the given account.
-ID of the account.
-Finds the account and WebID of the link with the given ID.
-Determines if a WebID is linked to an account.
-WebID to check.
-ID of the account.
-A NotificationChannel containing the necessary fields for a WebSocketChannel2023 channel.
-OptionalacceptThe media type in which the receiver expects the notifications.
-OptionalendWhen the channel should stop existing, in milliseconds since epoch.
-The unique identifier of the channel.
-OptionallastInternal value that we use to track when this channel last sent a notification.
-OptionalrateThe minimal time required between notifications, in milliseconds.
-The WebSocket through which the channel will send notifications.
-OptionalsendThe resource on the receiver where notifications can be sent.
-OptionalsenderCan be used to identify the sender.
-OptionalstartWhen the channel should start sending notifications, in milliseconds since epoch.
-OptionalstateThe state parameter sent by the receiver. -This is used to send a notification when the channel is established and the topic resource has a different state.
-The resource this channel sends notifications about.
-The "notify:WebSocketChannel2023" type.
-A NotificationChannel containing the necessary fields for a WebhookChannel2023 channel.
-OptionalacceptThe media type in which the receiver expects the notifications.
-OptionalendWhen the channel should stop existing, in milliseconds since epoch.
-The unique identifier of the channel.
-OptionallastInternal value that we use to track when this channel last sent a notification.
-OptionalrateThe minimal time required between notifications, in milliseconds.
-OptionalreceiveThe resource receivers can use to establish a connection and receive notifications.
-Where the notifications have to be sent.
-OptionalsenderCan be used to identify the sender.
-OptionalstartWhen the channel should start sending notifications, in milliseconds since epoch.
-OptionalstateThe state parameter sent by the receiver. -This is used to send a notification when the channel is established and the topic resource has a different state.
-The resource this channel sends notifications about.
-The "WebhookChannel2023" type.
-A route that includes an account identifier.
-InteractionResults extended with our custom key for tracking a user's account ID.
-A LoginStorage with specific typings to ensure other types can reference account IDs -without actually needing to specify it explicitly in their storage type.
-An event emitter used to report changes made to resources.
-Both generic change events and ActivityStream-specific events are emitted.
An IdentifierMap containing one entry for each resource that was created, updated or deleted -by this operation. Where the value is a RepresentationMetadata -containing extra information about the change of the resource.
-An AccountIdRoute that also includes a credentials identifier.
-Input expected for create() call in IndexedStorage.
-This is the same as TypeObject but without the index key.
Credentials identifying an entity accessing or owning data.
-A simplified version of MapConstructor that only allows creating an empty Map.
-A route that adds a parameter to an existing route type.
-A stream that is guarded from emitting errors when there are no listeners. -If an error occurs while no listener is attached, -it will store the error and emit it once a listener is added (or a timeout occurs).
-An outgoing HTTP response;
-A parent/child relation description in a WrappedIndexedStorage.
-The full description of all the types of an IndexedStorage.
-The description of a single type in an IndexedStorage.
-Object that represents a valid query starting from a specific type on an IndexedStorage. -The keys of the object need to be one or more keys from the starting type, -with the values being corresponding valid values of an object of that type. -If the value definition of a key is one that contains the identifier of a different type, -the value in the query can also be a nested object that has the same IndexedQuery requirements for that type. -This can be done recursively.
-E.g., if the storage has the following definition:
- {
account: {},
pod: { baseUrl: 'string', account: 'id:account' },
pod: { owner: 'string', pod: 'id:pod' },
}
-
-
-A valid query on the pod type could be { pod: '123456' },
-but also { pod: { baseUrl: 'http://example.com/pod/', account: { id: '789' }}}.
Different log levels, from most important to least important.
-Output type that is expected of handlers logging an account in.
-The ID of the account that logged in.
-Optionalremember?: booleanIf this account should be remembered or not.
-Setting this to undefined will keep the setting as it currently is.
Options describing the necessary changes when calling modify.
-Used to filter on optional keys in a IndexedStorage definition.
-A Vocabulary where all the non-namespace fields are of unknown value. -This is a fallback in case createVocabulary gets called with a non-strict string array.
-An AccountIdRoute that also includes a password login identifier.
-A data interface indicating which permissions are required (based on the context).
-An AccountIdRoute that also includes a pod identifier.
-The parameters supported for the given route.
-Converts a IndexedStorage definition of a specific type -to the typing an object would have that is returned as an output on function calls.
-A single entry of a ValuePreferences object. -Useful when doing operations on such an object.
-Represents preferred values along a single content negotiation dimension.
-The number represents how preferred this value is from 0 to 1. -Follows the quality values rule from RFC 7231: -"The weight is normalized to a real number in the range 0 through 1, -where 0.001 is the least preferred and 1 is the most preferred; a -value of 0 means "not acceptable"."
-Because of an open issue in Components.js we cannot use Record<string, number> right now.
-https://github.com/LinkedSoftwareDependencies/Components-Generator.js/issues/103
Converts a ValueTypeDescription to the type it should be interpreted as.
-Used to define the value of a key in a type entry of a IndexedStorage.
-Valid values are "string", "boolean", "number" and "id:TYPE",
-with TYPE being one of the types in the definition.
-In the latter case this means that key points to an identifier of the specified type.
-A ? can be appended to the type to indicate this key is optional.
Key used to link to child objects in a WrappedIndexedStorage.
-Object stored in the wrapped KeyValueStorage in a WrappedIndexedStorage.
-Contains a namespace and keys linking to the entries in this namespace.
-The terms field contains the same values but as NamedNode instead of string.
An AccountIdRoute that also includes a Web ID link identifier.
-ConstConstThe prompt that is used to track the account ID of a user during an OIDC interaction.
-The already existing login prompt in the InteractionResults
-is used to track the WebID that is chosen in an OIDC interaction.
ConstSettings parameter used to determine if the user wants the login to be remembered.
-ConstConstConstConstConstConstConstConstConstConstConstConstA class implementation of ActivityEmitter.
-ConstConstConstConstConstConstConstConstConstThe default notification features that are available on all channel types.
-ConstThe SHACL shape for the minimum requirements on a notification channel subscription request.
-ConstConstConstConstConstThe key that needs to be present in all output results of IndexedStorage.
-ConstConstConstConstConstConstConstConstConstConstConstConstThe constant used to identify email/password based login combinations in the map of logins an account has.
-ConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstConstA placeholder for the path to the @solid/community-server module root.
-The resolveAssetPath function will replace this string with the actual path.
controls.html.account.account wh
-
+
@@ -2505,7 +2505,7 @@ The most important one is probably controls.html.account.account wh
-
+
@@ -2516,7 +2516,7 @@ The most important one is probably controls.html.account.account wh
-
+
@@ -2527,7 +2527,7 @@ The most important one is probably controls.html.account.account wh
-
+
.community-solid-server.config.js:
-
+
@@ -1935,7 +1935,7 @@ such as the following .community-solid-server.config.js:
-
+
@@ -1946,7 +1946,7 @@ such as the following .community-solid-server.config.js:
-
+
@@ -1957,7 +1957,7 @@ such as the following .community-solid-server.config.js:
-
+
A route that stores a single absolute path.
-