Exemplo n.º 1
0
 public StateStoreConnectionStateWriter(
     IReactiveStateStoreConnection connection,
     CheckpointKind checkpointKind,
     Action onCommit   = null,
     Action onRollback = null)
 {
     _connection    = connection ?? throw new ArgumentNullException(nameof(connection));
     _onCommit      = onCommit;
     _onRollback    = onRollback;
     _stagedChanges = new ConcurrentBag <StagedChange>();
     CheckpointKind = checkpointKind;
 }
Exemplo n.º 2
0
        public static void ApplyStagedChange(this IReactiveStateStoreConnection connection, StagedChange change)
        {
            if (change is ToAdd itemToAdd)
            {
                connection.AddOrUpdateItem(itemToAdd.Item1, itemToAdd.Item2, itemToAdd.Item3);
                return;
            }

            if (change is ToRemove itemToRemove)
            {
                connection.RemoveItem(itemToRemove.Item1, itemToRemove.Item2);
                return;
            }

            throw new ArgumentException("Type of change to apply to is not recognized!");
        }
 public StateStoreConnectionStateReader(IReactiveStateStoreConnection connection)
 {
     _connection = connection;
 }