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

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

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("Meeting", targetDepth))
                {
                    var unmarshaller = MeetingUnmarshaller.Instance;
                    response.Meeting = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }
        public static GetMeetingResponse Unmarshall(UnmarshallerContext context)
        {
            GetMeetingResponse getMeetingResponse = new GetMeetingResponse();

            getMeetingResponse.HttpResponse = context.HttpResponse;
            getMeetingResponse.ErrorCode    = context.IntegerValue("GetMeeting.ErrorCode");
            getMeetingResponse.Message      = context.StringValue("GetMeeting.Message");
            getMeetingResponse.Success      = context.BooleanValue("GetMeeting.Success");
            getMeetingResponse.RequestId    = context.StringValue("GetMeeting.RequestId");

            GetMeetingResponse.GetMeeting_MeetingInfo meetingInfo = new GetMeetingResponse.GetMeeting_MeetingInfo();
            meetingInfo.MeetingName = context.StringValue("GetMeeting.MeetingInfo.MeetingName");
            meetingInfo.ValidTime   = context.LongValue("GetMeeting.MeetingInfo.ValidTime");
            meetingInfo.MeetingCode = context.StringValue("GetMeeting.MeetingInfo.MeetingCode");
            meetingInfo.CreateTime  = context.LongValue("GetMeeting.MeetingInfo.CreateTime");
            meetingInfo.UserId      = context.StringValue("GetMeeting.MeetingInfo.UserId");
            meetingInfo.MeetingUUID = context.StringValue("GetMeeting.MeetingInfo.MeetingUUID");
            meetingInfo.Password    = context.StringValue("GetMeeting.MeetingInfo.Password");

            List <GetMeetingResponse.GetMeeting_MeetingInfo.GetMeeting_MemberListItem> meetingInfo_memberList = new List <GetMeetingResponse.GetMeeting_MeetingInfo.GetMeeting_MemberListItem>();

            for (int i = 0; i < context.Length("GetMeeting.MeetingInfo.MemberList.Length"); i++)
            {
                GetMeetingResponse.GetMeeting_MeetingInfo.GetMeeting_MemberListItem memberListItem = new GetMeetingResponse.GetMeeting_MeetingInfo.GetMeeting_MemberListItem();
                memberListItem.UserAvatarUrl = context.StringValue("GetMeeting.MeetingInfo.MemberList[" + i + "].UserAvatarUrl");
                memberListItem.MemberUUID    = context.StringValue("GetMeeting.MeetingInfo.MemberList[" + i + "].MemberUUID");
                memberListItem.UserName      = context.StringValue("GetMeeting.MeetingInfo.MemberList[" + i + "].UserName");
                memberListItem.UserId        = context.StringValue("GetMeeting.MeetingInfo.MemberList[" + i + "].UserId");
                memberListItem.Status        = context.StringValue("GetMeeting.MeetingInfo.MemberList[" + i + "].Status");

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

            return(getMeetingResponse);
        }