public CommandContext(Entity sendingEntity, T request, object context, CommandRequestId requestId)
 {
     SendingEntity = sendingEntity;
     Request       = request;
     Context       = context;
     RequestId     = requestId;
 }
Example #2
0
 internal ReceivedResponse(DeleteEntityResponseOp op, Entity sendingEntity, Request req, CommandRequestId requestId)
 {
     SendingEntity  = sendingEntity;
     StatusCode     = op.StatusCode;
     Message        = op.Message;
     EntityId       = new EntityId(op.EntityId);
     RequestPayload = req;
     Context        = req.Context;
     RequestId      = requestId;
 }
        public TResponse?GetResponse(CommandRequestId requestId)
        {
            if (!responsesSorted)
            {
                responseStorage.Sort(responseComparer);
                responsesSorted = true;
            }

            var responseIndex = responseStorage.GetResponseIndex(requestId);

            return(responseIndex.HasValue ? responseStorage[responseIndex.Value] : (TResponse?)null);
        }
Example #4
0
                internal ReceivedResponse(CreateEntityResponseOp op, Entity sendingEntity, Request req, CommandRequestId requestId)
                {
                    SendingEntity  = sendingEntity;
                    StatusCode     = op.StatusCode;
                    Message        = op.Message;
                    RequestPayload = req;
                    Context        = req.Context;
                    RequestId      = requestId;

                    EntityId = op.EntityId.HasValue
                        ? new EntityId(op.EntityId.Value)
                        : (EntityId?)null;
                }
                internal ReceivedResponse(ReserveEntityIdsResponseOp op, Entity sendingEntity, Request req, CommandRequestId requestId)
                {
                    SendingEntity     = sendingEntity;
                    StatusCode        = op.StatusCode;
                    Message           = op.Message;
                    NumberOfEntityIds = op.NumberOfEntityIds;
                    RequestPayload    = req;
                    Context           = req.Context;
                    RequestId         = requestId;

                    FirstEntityId = op.FirstEntityId.HasValue
                        ? new EntityId(op.FirstEntityId.Value)
                        : (EntityId?)null;
                }
Example #6
0
        public MessagesSpan <TResponse> GetResponse(CommandRequestId requestId)
        {
            if (!responsesSorted)
            {
                responseStorage.Sort(responseComparer);
                responsesSorted = true;
            }

            var responseIndex = responseStorage.GetResponseIndex(requestId);

            return(responseIndex.HasValue
                ? responseStorage.Slice(responseIndex.Value, 1)
                : MessagesSpan <TResponse> .Empty());
        }
Example #7
0
                internal ReceivedResponse(EntityQueryResponseOp op, Entity sendingEntity, Request req, CommandRequestId requestId)
                {
                    SendingEntity  = sendingEntity;
                    StatusCode     = op.StatusCode;
                    Message        = op.Message;
                    ResultCount    = op.ResultCount;
                    RequestPayload = req;
                    Context        = req.Context;
                    RequestId      = requestId;

                    if (op.Result == null)
                    {
                        Result = null;
                        return;
                    }

                    Result = new Dictionary <EntityId, EntitySnapshot>();
                    foreach (var entityIdToEntity in op.Result)
                    {
                        Result.Add(new EntityId(entityIdToEntity.Key), new EntitySnapshot(entityIdToEntity.Value));
                    }
                }
Example #8
0
 public CommandRequestWithMetaData(T request, Entity sendingEntity, CommandRequestId requestId)
 {
     Request       = request;
     SendingEntity = sendingEntity;
     RequestId     = requestId;
 }
Example #9
0
 public void AddRequest(TRequest request, Entity entity, CommandRequestId requestId)
 {
     requestStorage.Add(new CommandRequestWithMetaData <TRequest>(request, entity, requestId));
 }
Example #10
0
 public void SetInternalRequestId(InternalCommandRequestId internalRequestId, CommandRequestId requestId)
 {
     internalRequestIdToRequestId.Add(internalRequestId, requestId);
 }