예제 #1
0
        public virtual IUserLoginMvoStateEvent GetStateEvent(UserLoginId userLoginId, long version)
        {
            var e = (IUserLoginMvoStateEvent)EventStore.GetStateEvent(ToEventStoreAggregateId(userLoginId), version);

            if (e != null)
            {
                e.ReadOnly = true;
            }
            return(e);
        }
예제 #2
0
        public virtual IUserLoginMvoState Get(UserLoginId userLoginId)
        {
            var state = StateRepository.Get(userLoginId);

            if (state != null && state.IsUnsaved)
            {
                state = null;
            }

            return(state);
        }
예제 #3
0
        public virtual IUserLoginState Get(LoginKey loginKey)
        {
            UserLoginId globalId = new UserLoginId(_userState.UserId, loginKey);

            if (_loadedUserLoginStates.ContainsKey(globalId))
            {
                return(_loadedUserLoginStates[globalId]);
            }
            var state = UserLoginStateDao.Get(globalId);

            _loadedUserLoginStates.Add(globalId, state);
            return(state);
        }
예제 #4
0
        public override bool Equals(object obj)
        {
            if (Object.ReferenceEquals(this, obj))
            {
                return(true);
            }

            UserLoginId other = obj as UserLoginId;

            if (other == null)
            {
                return(false);
            }

            return(true &&
                   Object.Equals(this.UserId, other.UserId) &&
                   Object.Equals(this.LoginKey, other.LoginKey)
                   );
        }
예제 #5
0
 public abstract IEventStoreAggregateId ToEventStoreAggregateId(UserLoginId aggregateId);
예제 #6
0
 public UserLoginIdFlattenedDto(UserLoginId val)
 {
     this._value = val;
 }
예제 #7
0
 public UserLoginIdDto(UserLoginId val)
 {
     this._value = val;
 }
예제 #8
0
 public UserLoginMvoStateEventId(UserLoginId userLoginId, long userVersion)
 {
     this._userLoginId = userLoginId;
     this._userVersion = userVersion;
 }