コード例 #1
0
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            ListItemsResponse response = new ListItemsResponse();

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

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("Items", targetDepth))
                {
                    var unmarshaller = new ListUnmarshaller <Item, ItemUnmarshaller>(ItemUnmarshaller.Instance);
                    response.Items = unmarshaller.Unmarshall(context);
                    continue;
                }
                if (context.TestExpression("NextToken", targetDepth))
                {
                    var unmarshaller = StringUnmarshaller.Instance;
                    response.NextToken = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }
コード例 #2
0
        public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems)
        {
            AmazonMediaStoreDataConfig config = new AmazonMediaStoreDataConfig();

            config.RegionEndpoint = region;
            ConfigureClient(config);
            AmazonMediaStoreDataClient client = new AmazonMediaStoreDataClient(creds, config);

            ListItemsResponse resp = new ListItemsResponse();

            do
            {
                ListItemsRequest req = new ListItemsRequest
                {
                    NextToken = resp.NextToken
                    ,
                    MaxResults = maxItems
                };

                resp = client.ListItems(req);
                CheckError(resp.HttpStatusCode, "200");

                foreach (var obj in resp.Items)
                {
                    AddObject(obj);
                }
            }while (!string.IsNullOrEmpty(resp.NextToken));
        }
コード例 #3
0
ファイル: ListFragment.cs プロジェクト: jlynch630/Frontier
        private void OnNetworkListInfo(object sender, ListItemsResponse e)
        {
            this.ListItems = e.Items;
            string[] ItemText = e.Items.Select(i => i.Title).ToArray();

            this.Activity.RunOnUiThread(
                () => {
                this.ListView.Adapter = new ArrayAdapter <string>(
                    this.Activity,
                    Android.Resource.Layout.SimpleListItem1,
                    ItemText);
            });
        }
        public static ListItemsResponse Unmarshall(UnmarshallerContext _ctx)
        {
            ListItemsResponse listItemsResponse = new ListItemsResponse();

            listItemsResponse.HttpResponse = _ctx.HttpResponse;
            listItemsResponse.RequestId    = _ctx.StringValue("ListItems.requestId");

            ListItemsResponse.ListItems_Result result = new ListItemsResponse.ListItems_Result();

            ListItemsResponse.ListItems_Result.ListItems_Total total = new ListItemsResponse.ListItems_Result.ListItems_Total();
            total.InstanceRecommendItem = _ctx.LongValue("ListItems.Result.Total.instanceRecommendItem");
            total.QueryCount            = _ctx.LongValue("ListItems.Result.Total.queryCount");
            total.SceneRecommendItem    = _ctx.LongValue("ListItems.Result.Total.sceneRecommendItem");
            total.SceneWeightItem       = _ctx.LongValue("ListItems.Result.Total.sceneWeightItem");
            total.TotalCount            = _ctx.LongValue("ListItems.Result.Total.totalCount");
            total.WeightItem            = _ctx.LongValue("ListItems.Result.Total.weightItem");
            result.Total = total;

            List <ListItemsResponse.ListItems_Result.ListItems_DetailItem> result_detail = new List <ListItemsResponse.ListItems_Result.ListItems_DetailItem>();

            for (int i = 0; i < _ctx.Length("ListItems.Result.Detail.Length"); i++)
            {
                ListItemsResponse.ListItems_Result.ListItems_DetailItem detailItem = new ListItemsResponse.ListItems_Result.ListItems_DetailItem();
                detailItem.Author       = _ctx.StringValue("ListItems.Result.Detail[" + i + "].author");
                detailItem.BrandId      = _ctx.StringValue("ListItems.Result.Detail[" + i + "].brandId");
                detailItem.CategoryPath = _ctx.StringValue("ListItems.Result.Detail[" + i + "].categoryPath");
                detailItem.Channel      = _ctx.StringValue("ListItems.Result.Detail[" + i + "].channel");
                detailItem.Duration     = _ctx.StringValue("ListItems.Result.Detail[" + i + "].duration");
                detailItem.ExpireTime   = _ctx.StringValue("ListItems.Result.Detail[" + i + "].expireTime");
                detailItem.ItemId       = _ctx.StringValue("ListItems.Result.Detail[" + i + "].itemId");
                detailItem.ItemType     = _ctx.StringValue("ListItems.Result.Detail[" + i + "].itemType");
                detailItem.PubTime      = _ctx.StringValue("ListItems.Result.Detail[" + i + "].pubTime");
                detailItem.ShopId       = _ctx.StringValue("ListItems.Result.Detail[" + i + "].shopId");
                detailItem.Status       = _ctx.StringValue("ListItems.Result.Detail[" + i + "].status");
                detailItem.Title        = _ctx.StringValue("ListItems.Result.Detail[" + i + "].title");

                result_detail.Add(detailItem);
            }
            result.Detail            = result_detail;
            listItemsResponse.Result = result;

            return(listItemsResponse);
        }