public class BaseMailboxRecordsService extends java.lang.Object implements IChangelogSupport, ICountingSupport, ISortingSupport
Modifier and Type | Field and Description |
---|---|
protected Container |
container |
protected BmContext |
context |
protected java.lang.String |
mailboxUniqueId |
protected java.util.Optional<ReplicasStore.SubtreeLocation> |
optRecordsLocation |
protected RBACManager |
rbac |
protected MailboxRecordStore |
recordStore |
protected ReplicasStore |
replicaStore |
protected ContainerStoreService<MailboxRecord> |
storeService |
Constructor and Description |
---|
BaseMailboxRecordsService(Container cont,
BmContext context,
java.lang.String mailboxUniqueId,
MailboxRecordStore recordStore,
ContainerStoreService<MailboxRecord> storeService,
ReplicasStore store) |
Modifier and Type | Method and Description |
---|---|
protected ItemValue<MailboxItem> |
adapt(ItemValue<MailboxRecord> rec) |
ListResult<java.lang.Long> |
allIds(java.lang.String filter,
java.lang.Long knownContainerVersion,
java.lang.Integer limit,
java.lang.Integer offset) |
ContainerChangeset<java.lang.String> |
changeset(java.lang.Long since) |
ContainerChangeset<java.lang.Long> |
changesetById(java.lang.Long since) |
protected boolean |
checkExistOnBackend(long imapUid) |
ContainerChangelog |
containerChangelog(java.lang.Long since) |
Count |
count(ItemFlagFilter filter)
Count items matching an
ItemFlagFilter |
Stream |
fetchComplete(long imapUid) |
protected java.io.InputStream |
fetchCompleteOIO(long imapUid) |
ContainerChangeset<ItemVersion> |
filteredChangesetById(java.lang.Long since,
ItemFlagFilter filter) |
long |
getVersion() |
ItemChangelog |
itemChangelog(java.lang.String itemUid,
java.lang.Long since) |
java.util.List<java.lang.Long> |
sortedIds(SortDescriptor sorted)
Returns all items in a container matching a sort criteria
|
protected final BmContext context
protected final java.lang.String mailboxUniqueId
protected final ContainerStoreService<MailboxRecord> storeService
protected final MailboxRecordStore recordStore
protected final Container container
protected final ReplicasStore replicaStore
protected final java.util.Optional<ReplicasStore.SubtreeLocation> optRecordsLocation
protected final RBACManager rbac
public BaseMailboxRecordsService(Container cont, BmContext context, java.lang.String mailboxUniqueId, MailboxRecordStore recordStore, ContainerStoreService<MailboxRecord> storeService, ReplicasStore store)
protected ItemValue<MailboxItem> adapt(ItemValue<MailboxRecord> rec)
public ItemChangelog itemChangelog(java.lang.String itemUid, java.lang.Long since)
itemChangelog
in interface IChangelogSupport
ContainerChangelog
public ContainerChangelog containerChangelog(java.lang.Long since)
containerChangelog
in interface IChangelogSupport
ContainerChangelog
public ContainerChangeset<java.lang.String> changeset(java.lang.Long since)
changeset
in interface IChangelogSupport
ContainerChangeset
public ContainerChangeset<java.lang.Long> changesetById(java.lang.Long since)
changesetById
in interface IChangelogSupport
ContainerChangeset
with internal
numeric idspublic ContainerChangeset<ItemVersion> filteredChangesetById(java.lang.Long since, ItemFlagFilter filter) throws ServerFault
filteredChangesetById
in interface IChangelogSupport
filter
- to exclude some items (eg. deleted items)ContainerChangeset
with internal
numeric ids matching the given filterServerFault
public long getVersion()
getVersion
in interface IChangelogSupport
public Count count(ItemFlagFilter filter)
ICountingSupport
ItemFlagFilter
count
in interface ICountingSupport
public java.util.List<java.lang.Long> sortedIds(SortDescriptor sorted)
ISortingSupport
sortedIds
in interface ISortingSupport
sorted
- sorting criteriaItemValue.internalId
sortedpublic ListResult<java.lang.Long> allIds(java.lang.String filter, java.lang.Long knownContainerVersion, java.lang.Integer limit, java.lang.Integer offset)
allIds
in interface IChangelogSupport
public Stream fetchComplete(long imapUid)
protected java.io.InputStream fetchCompleteOIO(long imapUid)
protected boolean checkExistOnBackend(long imapUid)
Copyright © 2021. All Rights Reserved.