/// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            GetMembersResponse response = new GetMembersResponse();

            context.Read();
            int targetDepth = context.CurrentDepth;

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("members", targetDepth))
                {
                    var unmarshaller = new ListUnmarshaller <Member, MemberUnmarshaller>(MemberUnmarshaller.Instance);
                    response.Members = unmarshaller.Unmarshall(context);
                    continue;
                }
                if (context.TestExpression("unprocessedAccounts", targetDepth))
                {
                    var unmarshaller = new ListUnmarshaller <UnprocessedAccount, UnprocessedAccountUnmarshaller>(UnprocessedAccountUnmarshaller.Instance);
                    response.UnprocessedAccounts = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }
Esempio n. 2
0
        public async Task <ActionResult <GetMembersResponse> > getAllMembers(GetMembersRequest request)
        {
            if (request.Username == "")
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Username cannot be empty!"));
            }


            Users user = await userGymMovesRepository.getUser(request.Username);

            if (user == null)
            {
                return(StatusCode(StatusCodes.Status404NotFound, "User does not exist!"));
            }

            if (user.UserType != UserTypes.Manager)
            {
                return(StatusCode(StatusCodes.Status401Unauthorized, "User is not a manager!"));
            }

            if (user.GymIdForeignKey != request.GymId)
            {
                return(StatusCode(StatusCodes.Status401Unauthorized, "Managers can only see the unregistered users of their own gym!"));
            }

            GymMember[] unregisteredUsers = await gymMemberRepository.getGymMembers(request.GymId);

            Users[] registeredUsers = await userGymMovesRepository.getAllUsers(request.GymId);

            if (unregisteredUsers.Length > 0 || registeredUsers.Length > 0)
            {
                GetMembersResponse[] responses  = UserMappers.MemberToMemberResponse(unregisteredUsers);
                GetMembersResponse[] responses2 = UserMappers.UserToMemberResponse(registeredUsers);

                var all = new GetMembersResponse[responses.Length + responses2.Length];
                responses.CopyTo(all, 0);
                responses2.CopyTo(all, responses.Length);
                return(Ok(all));
            }
            else
            {
                return(Ok(unregisteredUsers));
            }
        }
Esempio n. 3
0
        public static GetMembersResponse[] MemberToMemberResponse(GymMember[] models)
        {
            GetMembersResponse[] responses = new GetMembersResponse[models.Length];

            for (int i = 0; i < models.Length; i++)
            {
                responses[i] = new GetMembersResponse();

                responses[i].Username     = null;
                responses[i].Name         = models[i].Name;
                responses[i].Surname      = models[i].Surname;
                responses[i].MembershipId = models[i].MembershipId;
                responses[i].Email        = models[i].Email;
                responses[i].PhoneNumber  = models[i].PhoneNumber;
                responses[i].UserType     = models[i].UserType;
            }

            return(responses);
        }
        public static GetMembersResponse Unmarshall(UnmarshallerContext context)
        {
            GetMembersResponse getMembersResponse = new GetMembersResponse();

            getMembersResponse.HttpResponse = context.HttpResponse;
            getMembersResponse.ErrorCode    = context.IntegerValue("GetMembers.ErrorCode");
            getMembersResponse.Message      = context.StringValue("GetMembers.Message");
            getMembersResponse.Success      = context.BooleanValue("GetMembers.Success");
            getMembersResponse.RequestId    = context.StringValue("GetMembers.RequestId");

            GetMembersResponse.GetMembers_MeetingInfo meetingInfo = new GetMembersResponse.GetMembers_MeetingInfo();
            meetingInfo.MeetingName = context.StringValue("GetMembers.MeetingInfo.MeetingName");
            meetingInfo.ValidTime   = context.LongValue("GetMembers.MeetingInfo.ValidTime");
            meetingInfo.MeetingCode = context.StringValue("GetMembers.MeetingInfo.MeetingCode");
            meetingInfo.CreateTime  = context.LongValue("GetMembers.MeetingInfo.CreateTime");
            meetingInfo.UserId      = context.StringValue("GetMembers.MeetingInfo.UserId");
            meetingInfo.MeetingUUID = context.StringValue("GetMembers.MeetingInfo.MeetingUUID");

            List <GetMembersResponse.GetMembers_MeetingInfo.GetMembers_MemberListItem> meetingInfo_memberList = new List <GetMembersResponse.GetMembers_MeetingInfo.GetMembers_MemberListItem>();

            for (int i = 0; i < context.Length("GetMembers.MeetingInfo.MemberList.Length"); i++)
            {
                GetMembersResponse.GetMembers_MeetingInfo.GetMembers_MemberListItem memberListItem = new GetMembersResponse.GetMembers_MeetingInfo.GetMembers_MemberListItem();
                memberListItem.UserAvatarUrl = context.StringValue("GetMembers.MeetingInfo.MemberList[" + i + "].UserAvatarUrl");
                memberListItem.MemberUUID    = context.StringValue("GetMembers.MeetingInfo.MemberList[" + i + "].MemberUUID");
                memberListItem.UserName      = context.StringValue("GetMembers.MeetingInfo.MemberList[" + i + "].UserName");
                memberListItem.UserId        = context.StringValue("GetMembers.MeetingInfo.MemberList[" + i + "].UserId");
                memberListItem.Status        = context.StringValue("GetMembers.MeetingInfo.MemberList[" + i + "].Status");

                meetingInfo_memberList.Add(memberListItem);
            }
            meetingInfo.MemberList         = meetingInfo_memberList;
            getMembersResponse.MeetingInfo = meetingInfo;

            return(getMembersResponse);
        }