Class ReplicatedList<TYPE extends org.teamapps.protocol.schema.MessageObject>
java.lang.Object
org.teamapps.application.api.state.ReplicatedList<TYPE>
public class ReplicatedList<TYPE extends org.teamapps.protocol.schema.MessageObject>
extends java.lang.Object
-
Field Summary
Fields Modifier and Type Field Description org.teamapps.event.Event<java.lang.Void>onAllEntriesRemovedorg.teamapps.event.Event<TYPE>onEntryAddedorg.teamapps.event.Event<TYPE>onEntryRemovedorg.teamapps.event.Event<TYPE>onEntryUpdatedorg.teamapps.event.Event<TYPE>onFireAndForgetorg.teamapps.event.Event<java.lang.Void>onListChanged -
Constructor Summary
Constructors Modifier Constructor Description protectedReplicatedList(org.teamapps.cluster.state.ReplicatedState replicatedState, java.lang.String listName, java.lang.String modelUuid, java.util.function.Function<TYPE,java.lang.String> typeToIdFunction, org.teamapps.protocol.schema.ModelCollection modelCollection, java.util.List<org.teamapps.cluster.state.StateUpdateMessage> preparedUpdates) -
Method Summary
Modifier and Type Method Description voidaddEntry(TYPE entry)voidfireAndForget(TYPE entry)java.util.List<TYPE>getEntries()java.util.List<TYPE>getEntries(int startIndex, int length)TYPEgetEntry(java.lang.String identifier)intgetEntryCount()protected voidhandleAllEntriesRemoved()protected voidhandleEntryAdded(org.teamapps.protocol.schema.MessageObject message)protected voidhandleEntryRemoved(org.teamapps.protocol.schema.MessageObject message)protected voidhandleEntryUpdated(org.teamapps.protocol.schema.MessageObject message)protected voidhandleFireAndForget(org.teamapps.protocol.schema.MessageObject message)voidprepareAddEntry(TYPE entry)voidprepareRemoveAllEntries()voidprepareRemoveEntry(java.lang.String identifier)voidprepareRemoveEntry(TYPE entry)voidprepareUpdateEntry(TYPE entry)protected TYPEremap(org.teamapps.protocol.schema.MessageObject message)voidremoveAllEntries()voidremoveEntry(java.lang.String identifier)voidremoveEntry(TYPE entry)voidupdateEntry(TYPE entry)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
onEntryAdded
public org.teamapps.event.Event<TYPE extends org.teamapps.protocol.schema.MessageObject> onEntryAdded -
onEntryRemoved
public org.teamapps.event.Event<TYPE extends org.teamapps.protocol.schema.MessageObject> onEntryRemoved -
onEntryUpdated
public org.teamapps.event.Event<TYPE extends org.teamapps.protocol.schema.MessageObject> onEntryUpdated -
onAllEntriesRemoved
public org.teamapps.event.Event<java.lang.Void> onAllEntriesRemoved -
onListChanged
public org.teamapps.event.Event<java.lang.Void> onListChanged -
onFireAndForget
public org.teamapps.event.Event<TYPE extends org.teamapps.protocol.schema.MessageObject> onFireAndForget
-
-
Constructor Details
-
ReplicatedList
protected ReplicatedList(org.teamapps.cluster.state.ReplicatedState replicatedState, java.lang.String listName, java.lang.String modelUuid, java.util.function.Function<TYPE,java.lang.String> typeToIdFunction, org.teamapps.protocol.schema.ModelCollection modelCollection, java.util.List<org.teamapps.cluster.state.StateUpdateMessage> preparedUpdates)
-
-
Method Details
-
prepareAddEntry
-
prepareUpdateEntry
-
prepareRemoveEntry
public void prepareRemoveEntry(java.lang.String identifier) -
prepareRemoveEntry
-
prepareRemoveAllEntries
public void prepareRemoveAllEntries() -
addEntry
-
updateEntry
-
removeEntry
public void removeEntry(java.lang.String identifier) -
removeEntry
-
removeAllEntries
public void removeAllEntries() -
fireAndForget
-
getEntry
-
getEntries
-
getEntries
-
getEntryCount
public int getEntryCount() -
handleEntryAdded
protected void handleEntryAdded(org.teamapps.protocol.schema.MessageObject message) -
handleEntryUpdated
protected void handleEntryUpdated(org.teamapps.protocol.schema.MessageObject message) -
handleEntryRemoved
protected void handleEntryRemoved(org.teamapps.protocol.schema.MessageObject message) -
handleAllEntriesRemoved
protected void handleAllEntriesRemoved() -
handleFireAndForget
protected void handleFireAndForget(org.teamapps.protocol.schema.MessageObject message) -
remap
-