예제 #1
0
 public GetCategoriesResponse GetCategories(GetCategoriesRequest Request)
 {
     return GetClient().GetCategories(Request);
 }
예제 #2
0
        /// <summary>
        /// eBay Category 조회
        /// </summary>
        /// <param name="search">조회 조건</param>
        /// <returns>eBayCategories 개체</returns>
        public eBayCategories GeteBayCategories(eBayCategorySearch search)
        {
            var req = new GetCategoriesRequest()
            {
                SiteID = search.SiteId,
                CategoryLevel = search.CategoryLevel,
                ParentCategoryID = search.ParentId
            };

            GetCategoriesResponse res = null;
            try
            {
                res = new ItemService("http://gepapidev.gmarket.co.kr/api/Outbound_ItemService").GetCategories(req);
            }
            catch (ThriftClientException tce)
            {
                return new eBayCategories { Success = false, ErrorMsg = tce.Message };
            }
            catch (ThriftException te)
            {
                return new eBayCategories { Success = false, ErrorMsg = te.ExceptionMessage };
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
                return new eBayCategories { Success = false, ErrorMsg = "알 수 없는 오류가 발생했습니다. 오류 내용은 개발자에게 자동 전달됩니다." };
            }

            if (res.Ack.Equals(AckType.Failure))
            {
                //error 처리
                return new eBayCategories { Success = false, ErrorMsg = "error" };
            }

            var result = new eBayCategories
            {
                Success = true,
                ResultData = from q in res.Response
                             select new eBayCategory
                             {
                                 Id = q.Key,
                                 Name = q.Value["CategoryName"],
                                 IsLeaf = q.Value.ContainsKey("LeafCategory") && q.Value["LeafCategory"].Equals("true")
                             }
            };

            return result;
        }
예제 #3
0
 public void send_GetCategories(GetCategoriesRequest Request)
 {
     oprot_.WriteMessageBegin(new TMessage("GetCategories", TMessageType.Call, seqid_));
     GetCategories_args args = new GetCategories_args();
     args.Request = Request;
     args.Write(oprot_);
     oprot_.WriteMessageEnd();
     oprot_.Transport.Flush();
 }
예제 #4
0
 public void Read(TProtocol iprot)
 {
     TField field;
     iprot.ReadStructBegin();
     while (true)
     {
       field = iprot.ReadFieldBegin();
       if (field.Type == TType.Stop) {
     break;
       }
       switch (field.ID)
       {
     case 1:
       if (field.Type == TType.Struct) {
     Request = new GetCategoriesRequest();
     Request.Read(iprot);
       } else {
     TProtocolUtil.Skip(iprot, field.Type);
       }
       break;
     default:
       TProtocolUtil.Skip(iprot, field.Type);
       break;
       }
       iprot.ReadFieldEnd();
     }
     iprot.ReadStructEnd();
 }
예제 #5
0
 public GetCategoriesResponse GetCategories(GetCategoriesRequest Request)
 {
     send_GetCategories(Request);
     return recv_GetCategories();
 }