Exemplo n.º 1
0
        Task IProjectionsManagement.UpdateQueryAsync(string name, string query)
        {
            Ensure.NotNullOrEmpty(name, "name");
            Ensure.NotNullOrEmpty(query, "query");

            return(_projectionsManager.UpdateQuery(_httpEndPoint, name, query));
        }
Exemplo n.º 2
0
        Task IProjectionsManagement.CreatePersistentAsync(string name, string query)
        {
            Ensure.NotNullOrEmpty(name, "name");
            Ensure.NotNullOrEmpty(query, "query");

            return(_projectionsManager.CreatePersistent(_httpEndPoint, name, query));
        }
Exemplo n.º 3
0
        public void Connect(IPEndPoint tcpEndPoint, IPEndPoint httpEndPoint = null)
        {
            Ensure.NotNull(tcpEndPoint, "tcpEndPoint");
            var task = ConnectAsync(tcpEndPoint, httpEndPoint);

            task.Wait();
        }
Exemplo n.º 4
0
        void IProjectionsManagement.CreateOneTime(string query)
        {
            Ensure.NotNullOrEmpty(query, "query");

            var task = ((IProjectionsManagement)this).CreateOneTimeAsync(query);

            task.Wait();
        }
Exemplo n.º 5
0
        void IProjectionsManagement.Delete(string name)
        {
            Ensure.NotNullOrEmpty(name, "name");

            var task = ((IProjectionsManagement)this).DeleteAsync(name);

            task.Wait();
        }
Exemplo n.º 6
0
        public void CommitTransaction(long transactionId, string stream)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            var task = CommitTransactionAsync(transactionId, stream);

            task.Wait();
        }
Exemplo n.º 7
0
        string IProjectionsManagement.GetQuery(string name)
        {
            Ensure.NotNullOrEmpty(name, "name");

            var task = ((IProjectionsManagement)this).GetQueryAsync(name);

            task.Wait();
            return(task.Result);
        }
Exemplo n.º 8
0
        void IProjectionsManagement.CreatePersistent(string name, string query)
        {
            Ensure.NotNullOrEmpty(name, "name");
            Ensure.NotNullOrEmpty(query, "query");

            var task = ((IProjectionsManagement)this).CreatePersistentAsync(name, query);

            task.Wait();
        }
Exemplo n.º 9
0
        public void DeleteStream(string stream, int expectedVersion)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            var task = DeleteStreamAsync(stream, expectedVersion);

            task.Wait();
        }
Exemplo n.º 10
0
        public void CreateStream(string stream, bool isJson, byte[] metadata)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            var task = CreateStreamAsync(stream, isJson, metadata);

            task.Wait();
        }
Exemplo n.º 11
0
        void IProjectionsManagement.UpdateQuery(string name, string query)
        {
            Ensure.NotNullOrEmpty(name, "name");
            Ensure.NotNullOrEmpty(query, "query");

            var task = ((IProjectionsManagement)this).UpdateQueryAsync(name, query);

            task.Wait();
        }
Exemplo n.º 12
0
        public void TransactionalWrite(long transactionId, string stream, IEnumerable <IEvent> events)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            Ensure.NotNull(events, "events");
            EnsureActive();

            var task = TransactionalWriteAsync(transactionId, stream, events);

            task.Wait();
        }
Exemplo n.º 13
0
        public Task SubscribeToAllStreamsAsync(Action <RecordedEvent, Position> eventAppeared, Action subscriptionDropped)
        {
            Ensure.NotNull(eventAppeared, "eventAppeared");
            Ensure.NotNull(subscriptionDropped, "subscriptionDropped");
            EnsureActive();

            lock (_connectionLock)
                _subscriptionsChannel.EnsureConnected(_tcpEndPoint);
            return(_subscriptionsChannel.SubscribeToAllStreams(eventAppeared, subscriptionDropped));
        }
Exemplo n.º 14
0
        public void AppendToStream(string stream, int expectedVersion, IEnumerable <IEvent> events)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            Ensure.NotNull(events, "events");
            EnsureActive();

            var task = AppendToStreamAsync(stream, expectedVersion, events);

            task.Wait();
        }
Exemplo n.º 15
0
        public void Connect(string clusterDns, int maxAttempts = 10, int port = 30777)
        {
            Ensure.NotNullOrEmpty(clusterDns, "clusterDns");
            Ensure.Positive(maxAttempts, "maxAttempts");
            Ensure.Nonnegative(port, "port");

            var task = ConnectAsync(clusterDns, maxAttempts, port);

            task.Wait();
        }
Exemplo n.º 16
0
        public EventStoreTransaction StartTransaction(string stream, int expectedVersion)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            var task = StartTransactionAsync(stream, expectedVersion);

            task.Wait();
            return(task.Result);
        }
Exemplo n.º 17
0
        public Task UnsubscribeAsync(string stream)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            lock (_connectionLock)
                _subscriptionsChannel.EnsureConnected(_tcpEndPoint);
            _subscriptionsChannel.Unsubscribe(stream);

            return(Tasks.CreateCompleted());
        }
Exemplo n.º 18
0
        public Task CreateStreamAsync(string stream, bool isJson, byte[] metadata)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            var source    = new TaskCompletionSource <object>();
            var operation = new CreateStreamOperation(source, Guid.NewGuid(), _allowForwarding, stream, isJson, metadata);

            EnqueueOperation(operation);
            return(source.Task);
        }
Exemplo n.º 19
0
        public Task DeleteStreamAsync(string stream, int expectedVersion)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            var source    = new TaskCompletionSource <object>();
            var operation = new DeleteStreamOperation(source, Guid.NewGuid(), _allowForwarding, stream, expectedVersion);

            EnqueueOperation(operation);
            return(source.Task);
        }
Exemplo n.º 20
0
        public AllEventsSlice ReadAllEventsBackward(Position position, int maxCount)
        {
            Ensure.NotNull(position, "position");
            Ensure.Positive(maxCount, "maxCount");
            EnsureActive();

            var task = ReadAllEventsBackwardAsync(position, maxCount);

            task.Wait();
            return(task.Result);
        }
Exemplo n.º 21
0
        public Task <EventStoreTransaction> StartTransactionAsync(string stream, int expectedVersion)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            var source    = new TaskCompletionSource <EventStoreTransaction>();
            var operation = new StartTransactionOperation(source, Guid.NewGuid(), _allowForwarding, stream, expectedVersion);

            EnqueueOperation(operation);
            return(source.Task);
        }
Exemplo n.º 22
0
        public Task CommitTransactionAsync(long transactionId, string stream)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            EnsureActive();

            var source    = new TaskCompletionSource <object>();
            var operation = new CommitTransactionOperation(source, Guid.NewGuid(), _allowForwarding, transactionId, stream);

            EnqueueOperation(operation);
            return(source.Task);
        }
Exemplo n.º 23
0
        public Task TransactionalWriteAsync(long transactionId, string stream, IEnumerable <IEvent> events)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            Ensure.NotNull(events, "events");
            EnsureActive();

            var source    = new TaskCompletionSource <object>();
            var operation = new TransactionalWriteOperation(source, Guid.NewGuid(), _allowForwarding, transactionId, stream, events);

            EnqueueOperation(operation);
            return(source.Task);
        }
Exemplo n.º 24
0
        public Task AppendToStreamAsync(string stream, int expectedVersion, IEnumerable <IEvent> events)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            Ensure.NotNull(events, "events");
            EnsureActive();

            var source    = new TaskCompletionSource <object>();
            var operation = new AppendToStreamOperation(source, Guid.NewGuid(), _allowForwarding, stream, expectedVersion, events);

            EnqueueOperation(operation);
            return(source.Task);
        }
Exemplo n.º 25
0
        public Task <EventStreamSlice> ReadEventStreamBackwardAsync(string stream, int start, int count)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            Ensure.Positive(count, "count");
            EnsureActive();

            var source    = new TaskCompletionSource <EventStreamSlice>();
            var operation = new ReadStreamEventsBackwardOperation(source, Guid.NewGuid(), stream, start, count, true);

            EnqueueOperation(operation);
            return(source.Task);
        }
Exemplo n.º 26
0
        public EventStreamSlice ReadEventStreamBackward(string stream, int start, int count)
        {
            Ensure.NotNullOrEmpty(stream, "stream");
            Ensure.Positive(count, "count");
            EnsureActive();

            var task = ReadEventStreamBackwardAsync(stream, start, count);

            task.Wait();

            return(task.Result);
        }
Exemplo n.º 27
0
        public Task <AllEventsSlice> ReadAllEventsBackwardAsync(Position position, int maxCount)
        {
            Ensure.NotNull(position, "position");
            Ensure.Positive(maxCount, "maxCount");
            EnsureActive();

            var source    = new TaskCompletionSource <AllEventsSlice>();
            var operation = new ReadAllEventsBackwardOperation(source, Guid.NewGuid(), position, maxCount, true);

            EnqueueOperation(operation);
            return(source.Task);
        }
Exemplo n.º 28
0
        public static EventStoreConnection Create(bool allowForwarding        = true,
                                                  int maxConcurrentRequests   = 5000,
                                                  int maxAttemptsForOperation = 10,
                                                  int maxReconnections        = 10,
                                                  ILogger logger = null)
        {
            Ensure.Positive(maxConcurrentRequests, "maxConcurrentRequests");
            Ensure.Positive(maxAttemptsForOperation, "maxAttemptsForOperation");
            Ensure.Nonnegative(maxReconnections, "maxReconnections");

            return(new EventStoreConnection(allowForwarding,
                                            maxConcurrentRequests,
                                            maxAttemptsForOperation,
                                            maxReconnections,
                                            logger));
        }
Exemplo n.º 29
0
        public Task ConnectAsync(string clusterDns, int maxAttempts = 10, int port = 30777)
        {
            Ensure.NotNullOrEmpty(clusterDns, "clusterDns");
            Ensure.Positive(maxAttempts, "maxAttempts");
            Ensure.Nonnegative(port, "port");

            var explorer = new ClusterExplorer(_allowForwarding, maxAttempts, port);

            return(explorer.Resolve(clusterDns)
                   .ContinueWith(t =>
            {
                var pair = t.Result;
                if (!pair.HasValue)
                {
                    throw new CannotEstablishConnectionException("Failed to find node to connect");
                }

                return EstablishConnectionAsync(pair.Value.TcpEndPoint, pair.Value.HttpEndPoint);
            }));
        }
Exemplo n.º 30
0
 Task IProjectionsManagement.DeleteAsync(string name)
 {
     Ensure.NotNullOrEmpty(name, "name");
     return(_projectionsManager.Delete(_httpEndPoint, name));
 }