A bucket is a holder for keys and values.
There are three different buckets. Each Workflow has their own global bucket where the values are kept even if Corbit is stopped. There is also a temporary bucket, which is created for each object that is handled. Finally there are System buckets.
Object bucket features are very powerful and may be useful when one action needs to use information from another action.
An object's bucket lifetime starts when an object is detected in a source and is started, and handled by a Workflow, and then ends when all the actions have been executed. This means that for each object that is handled in a Workflow a new bucket is created.
The bucket's data is shared among the Actions in which are invoked on the object. Values that are put into the bucket can be used by any action that is performed after the value is put into the bucket.
As an addition to the Object Bucket, Corbit uses Workflow Buckets. The Workflow bucket is a more static bucket where the values will be saved with the Workflow even if Corbit is shut down. For example, the Workflow bucket may be used to have a running number or an internal log.
System buckets are set in a separate menu since these buckets can be used by any workflow.
System buckets are similar to Workflow buckets but may be shared between workflows. Examples of System bucket uses may be set a server location or a server host name. The server location/name may then be used in multiple sources or actions. If the server is changed the change will only be necessary to do in one location, the system bucket value.