/// <summary> /// Converts a Core User Account to a Data User Account. /// </summary> /// <param name="coreUserAccount">Core User Account to be converted.</param> /// <returns>Converted Data User Account.</returns> public static DDO.Objects.UserAccount ConvertToDataUserAccount(DCO.Objects.UserAccount coreUserAccount) { if (coreUserAccount == null) { return(null); } DDO.Objects.UserAccount dataUserAccount = new DDO.Objects.UserAccount(); dataUserAccount.UserID = coreUserAccount.UserID; dataUserAccount.Username = coreUserAccount.Username; dataUserAccount.Password = coreUserAccount.Password; dataUserAccount.UserType = convertToDataUserType(coreUserAccount.UserType); dataUserAccount.UserInfo = new DDO.Objects.UserInfo(); if (coreUserAccount.UserInfo != null) { dataUserAccount.UserInfo.FirstName = coreUserAccount.UserInfo.FirstName; dataUserAccount.UserInfo.LastName = coreUserAccount.UserInfo.LastName; dataUserAccount.UserInfo.Age = coreUserAccount.UserInfo.Age; dataUserAccount.UserInfo.BirthDate = coreUserAccount.UserInfo.BirthDate; } return(dataUserAccount); }
/// <summary> /// Converts Data User Account to Core User Account. /// </summary> /// <param name="dataUserAccount">Data User Account to be converted.</param> /// <returns>Converted Core User Account.</returns> public static DCO.Objects.UserAccount ConvertToCoreUserAccount(DDO.Objects.UserAccount dataUserAccount) { if (dataUserAccount == null) { return(null); } DCO.Objects.UserAccount coreUserAccount = new DCO.Objects.UserAccount(); coreUserAccount.UserID = dataUserAccount.UserID; coreUserAccount.Username = dataUserAccount.Username; coreUserAccount.Password = dataUserAccount.Password; coreUserAccount.UserType = convertToCoreUserType(dataUserAccount.UserType); coreUserAccount.UserInfo = new Contract.User.UserInfo(); if (dataUserAccount.UserInfo != null) { coreUserAccount.UserInfo.FirstName = dataUserAccount.UserInfo.FirstName; coreUserAccount.UserInfo.LastName = dataUserAccount.UserInfo.LastName; coreUserAccount.UserInfo.Age = dataUserAccount.UserInfo.Age; coreUserAccount.UserInfo.BirthDate = dataUserAccount.UserInfo.BirthDate; } return(coreUserAccount); }
/// <summary> /// Converts a Client User Account to Core User Account. /// </summary> /// <param name="clientUserAccount">Client User Account to be converted.</param> /// <returns>Converted Core User Account.</returns> public static DCO.Objects.UserAccount CovertToCoreUserAccount (DCU.Objects.UserAccount clientUserAccount) { DCO.Objects.UserAccount coreUserAccount = new DCO.Objects.UserAccount(); if (clientUserAccount == null) { return(coreUserAccount); } coreUserAccount.UserID = clientUserAccount.UserID; coreUserAccount.Username = clientUserAccount.Username; coreUserAccount.Password = clientUserAccount.Password; coreUserAccount.UserType = convertToCoreUserType(clientUserAccount.UserType); coreUserAccount.UserInfo = new Core.Contract.User.UserInfo(); if (clientUserAccount.UserInfo != null) { coreUserAccount.UserInfo.FirstName = clientUserAccount.UserInfo.FirstName; coreUserAccount.UserInfo.LastName = clientUserAccount.UserInfo.LastName; coreUserAccount.UserInfo.Age = clientUserAccount.UserInfo.Age; coreUserAccount.UserInfo.BirthDate = clientUserAccount.UserInfo.BirthDate; } return(coreUserAccount); }
/// <summary> /// Performs a login request to UserManagementServices. /// </summary> /// <param name="userAccount">UserAccount to login.</param> public void Login(DCU.Objects.UserAccount userAccount) { // 1.) Get Service IUserManagementServices userManagementServices = ComponentManager.GetComponent <IUserManagementServices>(); // 2.) Populate and Create Request. DCO.Objects.UserAccount coreUserAccount = new DCO.Objects.UserAccount(); coreUserAccount.Username = userAccount.Username; coreUserAccount.Password = userAccount.Password; UserManagementRequest request = UserManagementHelper.CreateUserManagementRequest( DCO.Enums.UserManagementActionType.Login, coreUserAccount); // 3.) Send Request UserManagementResponse response = userManagementServices.UserManagementHandleRequest (request); // 4.) Handle Response DCU.Objects.UserAccount userAccountLoggedIn = new DCU.Objects.UserAccount(); if (response.UserAccountsRetrieved.Count > 0) { userAccountLoggedIn = UserAccountConverter.CovertToClientUserAccount(response.UserAccountsRetrieved[0]); } UserLoginEventArgs userLoginEventArg; if (response.IsRequestSuccessful) { ComponentManager.RegisterComponent <DCU.Objects.UserAccount>(userAccountLoggedIn); userLoginEventArg = createUserLoginEventArg( LoginResultType.Success, response.ResponseMessage); } else { userLoginEventArg = createUserLoginEventArg( LoginResultType.Failed, response.ResponseErrorMessage); } // 5.) Broadcast via the EventBus. EventBus <UserLoginEventArgs> .Broadcast(this, userLoginEventArg); }
/// <summary> /// Creates a UserManagementRequest object. /// Automatically gets the logged-in user account and sets it as the requestor. /// </summary> /// <param name="userManagementActionType">Action Type of the request.</param> /// <param name="userAccountToProcess">User Account to process.</param> /// <param name="searchKeyWord">Search Keyword (For Searching).</param> /// <param name="userInfoSearchCriteria">Search Criteria (For Searching).</param> /// <returns>Populated UserManagement Request.</returns> public static DCO.Objects.Request.UserManagementRequest CreateUserManagementRequest( DCO.Enums.UserManagementActionType userManagementActionType, DCO.Objects.UserAccount userAccountToProcess = null, string searchKeyWord = "", DCO.Enums.UserInfoSearchCriteriaEnum userInfoSearchCriteria = DCO.Enums.UserInfoSearchCriteriaEnum.FirstName) { UserManagementRequest request = new UserManagementRequest(); request.UserManagementActionType = userManagementActionType; request.RequestorUserAccount = getCurrentlyLoggedInUserAccount(); if (userAccountToProcess == null) { userAccountToProcess = new DCO.Objects.UserAccount(); } request.UserAccountToProcess = userAccountToProcess; request.SearchKeyWord = searchKeyWord; request.SearchCriteriaEnum = userInfoSearchCriteria; return(request); }