@InterfaceStability.Committed
@InterfaceAudience.Public
public interface AsyncBucketManager
Provides management capabilities for a AsyncBucket
.
Operations provided on the BucketManager
can be used to perform administrative tasks which require bucket-level credentials like managing DesignDocument
s or flushing a Bucket
.
Modifier and Type | Method and Description |
---|---|
rx.Observable<java.lang.Boolean> |
flush()
Flushes the bucket (removes all data).
|
rx.Observable<DesignDocument> |
getDesignDocument(java.lang.String name)
Loads a published
DesignDocument by its name. |
rx.Observable<DesignDocument> |
getDesignDocument(java.lang.String name,
boolean development)
Loads a
DesignDocument by its name from either development or production. |
rx.Observable<DesignDocument> |
getDesignDocuments()
Loads all published
DesignDocument s. |
rx.Observable<DesignDocument> |
getDesignDocuments(boolean development)
Loads all
DesignDocument s from development or production. |
rx.Observable<BucketInfo> |
info()
Returns information about the connected bucket.
|
rx.Observable<DesignDocument> |
insertDesignDocument(DesignDocument designDocument)
Inserts a
DesignDocument into production if it does not exist. |
rx.Observable<DesignDocument> |
insertDesignDocument(DesignDocument designDocument,
boolean development)
Inserts a
DesignDocument into development or production if it does not exist. |
rx.Observable<DesignDocument> |
publishDesignDocument(java.lang.String name)
Publishes a
DesignDocument from development into production. |
rx.Observable<DesignDocument> |
publishDesignDocument(java.lang.String name,
boolean overwrite)
Publishes a
DesignDocument from development into production. |
rx.Observable<java.lang.Boolean> |
removeDesignDocument(java.lang.String name)
Removes a
DesignDocument from production by its name. |
rx.Observable<java.lang.Boolean> |
removeDesignDocument(java.lang.String name,
boolean development)
Removes a
DesignDocument from production or development by its name. |
rx.Observable<DesignDocument> |
upsertDesignDocument(DesignDocument designDocument)
Upserts (inserts or replaces) a
DesignDocument into production. |
rx.Observable<DesignDocument> |
upsertDesignDocument(DesignDocument designDocument,
boolean development)
Upserts (inserts or replaces) a
DesignDocument into production or development. |
rx.Observable<BucketInfo> info()
Returns information about the connected bucket.
The Observable
can error under the following conditions:
BucketInfo
.rx.Observable<java.lang.Boolean> flush()
Flushes the bucket (removes all data).
Note that flush needs to be enabled on the bucket, otherwise an exception will be raised.
The Observable
can error under the following conditions:
Observable
otherwise.rx.Observable<DesignDocument> getDesignDocuments()
Loads all published DesignDocument
s.
The Observable
can error under the following conditions:
DesignDocument
s.rx.Observable<DesignDocument> getDesignDocuments(boolean development)
Loads all DesignDocument
s from development or production.
The Observable
can error under the following conditions:
development
- if the DesignDocument
s should be loaded from development or production.DesignDocument
s.rx.Observable<DesignDocument> getDesignDocument(java.lang.String name)
Loads a published DesignDocument
by its name.
The Observable
can error under the following conditions:
name
- the name of the DesignDocument
.DesignDocument
.rx.Observable<DesignDocument> getDesignDocument(java.lang.String name, boolean development)
Loads a DesignDocument
by its name from either development or production.
The Observable
can error under the following conditions:
name
- the name of the DesignDocument
.development
- if it should be loaded from development or production.DesignDocument
.rx.Observable<DesignDocument> insertDesignDocument(DesignDocument designDocument)
Inserts a DesignDocument
into production if it does not exist.
Note that inserting a DesignDocument
is not an atomic operation, but instead internally performs a getDesignDocument(String)
operation first. While expected to be very uncommon, a race condition may happen if two users at the same time perform this operation with the same DesignDocument
.
The Observable
can error under the following conditions:
DesignDocument
exists.designDocument
- the DesignDocument
to insert.DesignDocument
on success.rx.Observable<DesignDocument> insertDesignDocument(DesignDocument designDocument, boolean development)
Inserts a DesignDocument
into development or production if it does not exist.
Note that inserting a DesignDocument
is not an atomic operation, but instead internally performs a getDesignDocument(String)
operation first. While expected to be very uncommon, a race condition may happen if two users at the same time perform this operation with the same DesignDocument
.
The Observable
can error under the following conditions:
DesignDocument
exists.designDocument
- the DesignDocument
to insert.development
- if it should be inserted into development or production (published).DesignDocument
on success.rx.Observable<DesignDocument> upsertDesignDocument(DesignDocument designDocument)
Upserts (inserts or replaces) a DesignDocument
into production.
The Observable
can error under the following conditions:
designDocument
- the DesignDocument
to upsert.DesignDocument
on success.rx.Observable<DesignDocument> upsertDesignDocument(DesignDocument designDocument, boolean development)
Upserts (inserts or replaces) a DesignDocument
into production or development.
The Observable
can error under the following conditions:
designDocument
- the DesignDocument
to upsert.development
- if the DesignDocument
should be upserted into development or production.DesignDocument
on success.rx.Observable<java.lang.Boolean> removeDesignDocument(java.lang.String name)
Removes a DesignDocument
from production by its name.
name
- the name of the DesignDocument
.rx.Observable<java.lang.Boolean> removeDesignDocument(java.lang.String name, boolean development)
Removes a DesignDocument
from production or development by its name.
name
- the name of the DesignDocument
.development
- if the DesignDocument
should be removed from development or production.rx.Observable<DesignDocument> publishDesignDocument(java.lang.String name)
Publishes a DesignDocument
from development into production.
Note that this method does not override a already existing DesignDocument
(see publishDesignDocument(String, boolean)
) as an alternative.
The Observable
can error under the following conditions:
DesignDocument
already exists.name
- the name of the DesignDocument
to publish.DesignDocument
on success.rx.Observable<DesignDocument> publishDesignDocument(java.lang.String name, boolean overwrite)
Publishes a DesignDocument
from development into production.
The Observable
can error under the following conditions:
DesignDocument
already exists and override is set to false.name
- the name of the DesignDocument
to publish.overwrite
- if an existing DesignDocument
should be overridden.DesignDocument
on success.