public override EventStream LoadEventStream(Type eventType, IEventStoreAggregateId eventStoreAggregateId, long version) { Type supportedEventType = typeof(UserPermissionMvoStateEventBase); if (!eventType.IsAssignableFrom(supportedEventType)) { throw new NotSupportedException(); } UserPermissionId idObj = (UserPermissionId)(eventStoreAggregateId as EventStoreAggregateId).Id; var criteria = CurrentSession.CreateCriteria <UserPermissionMvoStateEventBase>(); criteria.Add(Restrictions.Eq("StateEventId.UserPermissionIdUserId", idObj.UserId)); criteria.Add(Restrictions.Eq("StateEventId.UserPermissionIdPermissionId", idObj.PermissionId)); criteria.Add(Restrictions.Le("StateEventId.UserVersion", version)); criteria.AddOrder(Order.Asc("StateEventId.UserVersion")); var es = criteria.List <IEvent>(); foreach (UserPermissionMvoStateEventBase e in es) { e.StateEventReadOnly = true; } return(new EventStream() { SteamVersion = es.Count > 0 ? ((UserPermissionMvoStateEventBase)es.Last()).StateEventId.UserVersion : default(long), Events = es }); }
public static string ToIdString(UserPermissionId id) { var formatter = new UserPermissionIdFlattenedDtoFormatter(); var idDto = new UserPermissionIdFlattenedDto(id); var idStr = formatter.ToString(idDto); return(idStr); }
public IUserPermissionMvoState Get(UserPermissionId id) { IUserPermissionMvoState state = CurrentSession.Get <UserPermissionMvoState>(id); if (ReadOnlyProxyGenerator != null && state != null) { return(ReadOnlyProxyGenerator.CreateProxy <IUserPermissionMvoState>(state, new Type[] { }, _readOnlyPropertyNames)); } return(state); }
public IUserPermissionMvoState Get(UserPermissionId id) { IUserPermissionMvoState state = CurrentSession.Get <UserPermissionMvoState> (id); if (state == null) { state = new UserPermissionMvoState(); (state as UserPermissionMvoState).UserPermissionId = id; } return(state); }
public virtual IUserPermissionMvoEvent GetEvent(UserPermissionId userPermissionId, long version) { var e = (IUserPermissionMvoEvent)EventStore.GetEvent(ToEventStoreAggregateId(userPermissionId), version); if (e != null) { e.ReadOnly = true; } else if (version == -1) { return(GetEvent(userPermissionId, 0)); } return(e); }
public async Task <IUserPermissionMvoStateEvent> GetStateEventAsync(UserPermissionId userPermissionId, long version) { var idObj = UserPermissionMvoProxyUtils.ToIdString(userPermissionId); var uriParameters = new UserPermissionMvoStateEventUriParameters(); uriParameters.Id = idObj; uriParameters.Version = version.ToString(); var req = new UserPermissionMvoStateEventGetRequest(uriParameters); var resp = await _ramlClient.UserPermissionMvoStateEvent.Get(req); UserPermissionMvoProxyUtils.ThrowOnHttpResponseError(resp); return(resp.Content); }
public IUserPermissionMvoState Get(UserPermissionId id, bool nullAllowed) { IUserPermissionMvoState state = CurrentSession.Get <UserPermissionMvoState> (id); if (!nullAllowed && state == null) { state = new UserPermissionMvoState(); (state as UserPermissionMvoState).UserPermissionId = id; } if (ReadOnlyProxyGenerator != null && state != null) { return(ReadOnlyProxyGenerator.CreateProxy <IUserPermissionMvoState>(state, new Type[] { }, _readOnlyPropertyNames)); } return(state); }
public async Task <IUserPermissionMvoState> GetAsync(UserPermissionId userPermissionId) { IUserPermissionMvoState state = null; var idObj = UserPermissionMvoProxyUtils.ToIdString(userPermissionId); var uriParameters = new UserPermissionMvoUriParameters(); uriParameters.Id = idObj; var req = new UserPermissionMvoGetRequest(uriParameters); var resp = await _ramlClient.UserPermissionMvo.Get(req); UserPermissionMvoProxyUtils.ThrowOnHttpResponseError(resp); state = resp.Content; return(state); }
public UserPermissionMvoEventId(UserPermissionId userPermissionId, long userVersion) { this._userPermissionId = userPermissionId; this._userVersion = userVersion; }
public virtual IUserPermissionState GetUserPermission(string userId, string permissionId) { var entityId = new UserPermissionId(userId, permissionId); return(CurrentSession.Get <UserPermissionState>(entityId)); }
public abstract IEventStoreAggregateId ToEventStoreAggregateId(UserPermissionId aggregateId);
public virtual IUserPermissionMvoState GetHistoryState(UserPermissionId userPermissionId, long version) { var eventStream = EventStore.LoadEventStream(typeof(IUserPermissionMvoEvent), ToEventStoreAggregateId(userPermissionId), version - 1); return(new UserPermissionMvoState(eventStream.Events)); }
public virtual IUserPermissionMvoState Get(UserPermissionId userPermissionId) { var state = StateRepository.Get(userPermissionId, true); return(state); }
public override IEventStoreAggregateId ToEventStoreAggregateId(UserPermissionId aggregateId) { return(new EventStoreAggregateId(aggregateId)); }
public IUserPermissionMvoStateEvent GetStateEvent(UserPermissionId userPermissionId, long version) { return(GetStateEventAsync(userPermissionId, version).GetAwaiter().GetResult()); }
public IUserPermissionMvoState Get(UserPermissionId userPermissionId) { return(GetAsync(userPermissionId).GetAwaiter().GetResult()); }