public interface DocIdPusher
DocId
s to the GSA.
Avoid implementing this interface in adaptor unit tests because
new methods may be added in the future. Instead use
UnsupportedDocIdPusher
, or use an automated mock
generator like Mockito or java.lang.reflect.Proxy
.
Modifier and Type | Interface and Description |
---|---|
static class |
DocIdPusher.FeedType
FeedType used for group definition pushes.
|
static class |
DocIdPusher.Record
Immutable feed attributes for a document identified by its
DocId . |
Modifier and Type | Field and Description |
---|---|
static boolean |
EVERYTHING_CASE_INSENSITIVE |
static boolean |
EVERYTHING_CASE_SENSITIVE
Not as good as an enum for case sensitivity, but backward compatible.
|
Modifier and Type | Method and Description |
---|---|
DocId |
pushDocIds(Iterable<DocId> docIds)
Push
DocId s immediately and block until they are successfully
provided to the GSA or the error handler gives up. |
DocId |
pushDocIds(Iterable<DocId> docIds,
ExceptionHandler handler)
Push
DocId s immediately and block until they are successfully
provided to the GSA or the error handler gives up. |
GroupPrincipal |
pushGroupDefinitions(Map<GroupPrincipal,? extends Collection<Principal>> defs,
boolean caseSensitive)
Blocking call to push group definitions to GSA ends in success or
when default error handler gives up.
|
GroupPrincipal |
pushGroupDefinitions(Map<GroupPrincipal,? extends Collection<Principal>> defs,
boolean caseSensitive,
DocIdPusher.FeedType feedType,
String groupSource,
ExceptionHandler handler)
Blocking call to push group definitions to GSA ends in success or
when provided error handler gives up.
|
GroupPrincipal |
pushGroupDefinitions(Map<GroupPrincipal,? extends Collection<Principal>> defs,
boolean caseSensitive,
ExceptionHandler handler)
Blocking call to push group definitions to GSA ends in success or
when provided error handler gives up.
|
DocId |
pushNamedResources(Map<DocId,Acl> resources)
Push named resources immediately and block until they are successfully
provided to the GSA or the error handler gives up.
|
DocId |
pushNamedResources(Map<DocId,Acl> resources,
ExceptionHandler handler)
Push named resources immediately and block until they are successfully
provided to the GSA or the error handler gives up.
|
DocIdPusher.Record |
pushRecords(Iterable<DocIdPusher.Record> records)
Push
Record s immediately and block until they are successfully
provided to the GSA or the error handler gives up. |
DocIdPusher.Record |
pushRecords(Iterable<DocIdPusher.Record> records,
ExceptionHandler handler)
Push
Record s immediately and block until they are successfully
provided to the GSA or the error handler gives up. |
static final boolean EVERYTHING_CASE_SENSITIVE
static final boolean EVERYTHING_CASE_INSENSITIVE
DocId pushDocIds(Iterable<DocId> docIds) throws InterruptedException
DocId
s immediately and block until they are successfully
provided to the GSA or the error handler gives up. This method can take a
while in error conditions, but is not something that generally needs to be
avoided.
Equivalent to pushDocIds(docIds, null)
, and to pushRecords(Iterable)
with default values for each Record
.
docIds
- are document ids to be pushednull
on success, otherwise the first DocId to failInterruptedException
- if interrupted and no DocIds were sentpushDocIds(Iterable, ExceptionHandler)
DocId pushDocIds(Iterable<DocId> docIds, ExceptionHandler handler) throws InterruptedException
DocId
s immediately and block until they are successfully
provided to the GSA or the error handler gives up. This method can take a
while in error conditions, but is not something that generally needs to be
avoided.
If handler is null
, then a default error handler is used.
Equivalent to pushRecords(Iterable, ExceptionHandler)
with default values for each Record
.
docIds
- are document ids to be pushedhandler
- for dealing with errors pushingnull
on success, otherwise the first DocId to failInterruptedException
- if interrupted and no DocIds were sentDocIdPusher.Record pushRecords(Iterable<DocIdPusher.Record> records) throws InterruptedException
Record
s immediately and block until they are successfully
provided to the GSA or the error handler gives up. This method can take a
while in error conditions, but is not something that generally needs to be
avoided.
Equivalent to pushRecords(records, null)
.
records
- are document ids to be pushednull
on success, otherwise the first Record to failInterruptedException
- if interrupted and no Records were sentpushRecords(Iterable, ExceptionHandler)
DocIdPusher.Record pushRecords(Iterable<DocIdPusher.Record> records, ExceptionHandler handler) throws InterruptedException
Record
s immediately and block until they are successfully
provided to the GSA or the error handler gives up. This method can take a
while in error conditions, but is not something that generally needs to be
avoided.
If handler is null
, then a default error handler is used.
records
- are document ids to be pushedhandler
- for dealing with errors pushingnull
on success, otherwise the first Record to failInterruptedException
- if interrupted and no Records were sentDocId pushNamedResources(Map<DocId,Acl> resources) throws InterruptedException
Named resources are DocId
s without any content or metadata, that
only exist for ACL inheritance. These DocId
will never be visible
to the user and have no meaning outside of ACL processing.
If you plan on using the return code, then the provided map should have
a predictable iteration order, like TreeMap
.
Equivalent to pushNamedResources(resources, null)
.
resources
- are labeled access control listsnull
on success, otherwise the first DocId to failInterruptedException
- if interrupted and no resources were sentpushNamedResources(Map, ExceptionHandler)
DocId pushNamedResources(Map<DocId,Acl> resources, ExceptionHandler handler) throws InterruptedException
Named resources are DocId
s without any content or metadata, that
only exist for ACL inheritance. These DocId
will never be visible
to the user and have no meaning outside of ACL processing.
If you plan on using the return code, then the provided map should have
a predictable iteration order, like TreeMap
.
If handler is null
, then a default error handler is used.
resources
- are labeled access control listshandler
- for dealing with errors pushingnull
on success, otherwise the first DocId to failInterruptedException
- if interrupted and no resources were sentGroupPrincipal pushGroupDefinitions(Map<GroupPrincipal,? extends Collection<Principal>> defs, boolean caseSensitive) throws InterruptedException
A group definition consists of a group being defined and members, which is a collection of users and groups.
If you plan on using the return code, then the provided map should have
a predictable iteration order, like TreeMap
.
This method performs INCREMENTAL
group
pushes, using the default group source name, and the default
ExceptionHandler
.
Equivalent to
pushGroupDefinitions(defs, caseSensitive, null)
.
defs
- map of group definitionscaseSensitive
- when comparing Principalsnull
on success, otherwise the first GroupPrincipal to failInterruptedException
- if interrupted and no definitions were sentpushGroupDefinitions(Map, boolean, FeedType, String, ExceptionHandler)
GroupPrincipal pushGroupDefinitions(Map<GroupPrincipal,? extends Collection<Principal>> defs, boolean caseSensitive, ExceptionHandler handler) throws InterruptedException
A group definition consists of a group being defined and members, which is a collection of users and groups.
If you plan on using the return code, then the provided map should have
a predictable iteration order, like TreeMap
.
If handler is null
, then a default error handler is used.
This method performs INCREMENTAL
group
pushes, using the default group source name.
defs
- map of group definitionscaseSensitive
- when comparing Principalshandler
- for dealing with errors pushingnull
on success, otherwise the first GroupPrincipal to failInterruptedException
- if interrupted and no definitions were sentpushGroupDefinitions(Map, boolean, FeedType, String, ExceptionHandler)
GroupPrincipal pushGroupDefinitions(Map<GroupPrincipal,? extends Collection<Principal>> defs, boolean caseSensitive, DocIdPusher.FeedType feedType, String groupSource, ExceptionHandler handler) throws InterruptedException
A group definition consists of a group being defined and members, which is a list of users and groups.
If you plan on using the return code, then the provided map should have
a predictable iteration order, like TreeMap
.
An incremental push augments or updates any existing group definitions for the groupSource on the GSA. Otherwise, the supplied group definitions will wholly replace all existing definitions for the groupSource on the GSA.
A groupSource identifies the source of the group definitions.
If provided, it must be a string of the form
[a-zA-Z_][a-zA-Z0-9_-]*
with at most 250 characters.
If groupSource is null
, then the feed.name
configuration
property is used.
If handler is null
, then a default error handler is used.
defs
- map of group definitionscaseSensitive
- when comparing PrincipalsfeedType
- if INCREMENTAL, an incremental update is done;
if REPLACE, a full replacement is done.groupSource
- the feed data source namehandler
- for dealing with errors pushingnull
on success, otherwise the first GroupPrincipal to failInterruptedException
- if interrupted and no definitions were sent