summaryrefslogtreecommitdiffstats
path: root/docs/resource.md
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2016-05-09 14:44:51 +0200
committerChristian Mollekopf <chrigi_1@fastmail.fm>2016-05-09 14:44:51 +0200
commit367d167aa4d19e43669a42c198d941476f340800 (patch)
treea7d782ad4085cbc1086a370c8c189408433eaa6f /docs/resource.md
parent4dfa71a35850a297116760e5d3157bfa6960ec8a (diff)
downloadsink-367d167aa4d19e43669a42c198d941476f340800.tar.gz
sink-367d167aa4d19e43669a42c198d941476f340800.zip
A few words about capabilities
Diffstat (limited to 'docs/resource.md')
-rw-r--r--docs/resource.md15
1 files changed, 15 insertions, 0 deletions
diff --git a/docs/resource.md b/docs/resource.md
index 8c87522..7766337 100644
--- a/docs/resource.md
+++ b/docs/resource.md
@@ -165,3 +165,18 @@ Resources have to be tested, which often requires inspections into the current s
165To alleviate this inspection commands are introduced. Inspection commands are special commands that the resource processes just like all other commands, and that have the sole purpose of inspecting the current resource state. Because the command is processed with the same mechanism as other commands we can rely on ordering of commands in a way that a prior command is guaranteed to be executed once the inspection command is processed. 165To alleviate this inspection commands are introduced. Inspection commands are special commands that the resource processes just like all other commands, and that have the sole purpose of inspecting the current resource state. Because the command is processed with the same mechanism as other commands we can rely on ordering of commands in a way that a prior command is guaranteed to be executed once the inspection command is processed.
166 166
167A typical inspection command could i.e. verify that a file has been created in the expected path after a create command. 167A typical inspection command could i.e. verify that a file has been created in the expected path after a create command.
168
169# Capabilities
170Resources can have various capabilities. Each capability is a contract that the resource guarantees to fullfil.
171
172## Storage
173* The storage capability guarantees that the resource stores entities (of a supported type) given to it.
174
175## Mailtransport
176* A mailtransport resource transports any mail that it receives to the indicated destination.
177* As long as the mail has not been transported it must be queryable, modifiabl and removable.
178* Once the mail has been transported it should be moved to the target sent mail folder and be removed from the resource.
179
180## Drafts
181* A resource that supports the drafts capability must store any mail that is marked as draft in a suitable drafts folder.
182* The resource must guarantee that storage succeeds (as soon as it accepts the request), so it must create a suitable folder if non is available.