Subversion Repositories SmartDukaan

Rev

Rev 6356 | Rev 6497 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6356 Rev 6433
Line 75... Line 75...
75
     - couponCode
75
     - couponCode
76
     - cartId
76
     - cartId
77
    """
77
    """
78
    pass
78
    pass
79
 
79
 
-
 
80
  def applyRechargeCoupon(self, couponCode, totalAmount, userId):
-
 
81
    """
-
 
82
    Parameters:
-
 
83
     - couponCode
-
 
84
     - totalAmount
-
 
85
     - userId
-
 
86
    """
-
 
87
    pass
-
 
88
 
80
  def trackCouponUsage(self, couponCode, transactionId, userId):
89
  def trackCouponUsage(self, couponCode, transactionId, userId):
81
    """
90
    """
82
    Parameters:
91
    Parameters:
83
     - couponCode
92
     - couponCode
84
     - transactionId
93
     - transactionId
Line 434... Line 443...
434
      return result.success
443
      return result.success
435
    if result.pex is not None:
444
    if result.pex is not None:
436
      raise result.pex
445
      raise result.pex
437
    raise TApplicationException(TApplicationException.MISSING_RESULT, "applyCoupon failed: unknown result");
446
    raise TApplicationException(TApplicationException.MISSING_RESULT, "applyCoupon failed: unknown result");
438
 
447
 
-
 
448
  def applyRechargeCoupon(self, couponCode, totalAmount, userId):
-
 
449
    """
-
 
450
    Parameters:
-
 
451
     - couponCode
-
 
452
     - totalAmount
-
 
453
     - userId
-
 
454
    """
-
 
455
    self.send_applyRechargeCoupon(couponCode, totalAmount, userId)
-
 
456
    return self.recv_applyRechargeCoupon()
-
 
457
 
-
 
458
  def send_applyRechargeCoupon(self, couponCode, totalAmount, userId):
-
 
459
    self._oprot.writeMessageBegin('applyRechargeCoupon', TMessageType.CALL, self._seqid)
-
 
460
    args = applyRechargeCoupon_args()
-
 
461
    args.couponCode = couponCode
-
 
462
    args.totalAmount = totalAmount
-
 
463
    args.userId = userId
-
 
464
    args.write(self._oprot)
-
 
465
    self._oprot.writeMessageEnd()
-
 
466
    self._oprot.trans.flush()
-
 
467
 
-
 
468
  def recv_applyRechargeCoupon(self, ):
-
 
469
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
-
 
470
    if mtype == TMessageType.EXCEPTION:
-
 
471
      x = TApplicationException()
-
 
472
      x.read(self._iprot)
-
 
473
      self._iprot.readMessageEnd()
-
 
474
      raise x
-
 
475
    result = applyRechargeCoupon_result()
-
 
476
    result.read(self._iprot)
-
 
477
    self._iprot.readMessageEnd()
-
 
478
    if result.success is not None:
-
 
479
      return result.success
-
 
480
    if result.pex is not None:
-
 
481
      raise result.pex
-
 
482
    raise TApplicationException(TApplicationException.MISSING_RESULT, "applyRechargeCoupon failed: unknown result");
-
 
483
 
439
  def trackCouponUsage(self, couponCode, transactionId, userId):
484
  def trackCouponUsage(self, couponCode, transactionId, userId):
440
    """
485
    """
441
    Parameters:
486
    Parameters:
442
     - couponCode
487
     - couponCode
443
     - transactionId
488
     - transactionId
Line 812... Line 857...
812
    self._processMap["isCodApplicable"] = Processor.process_isCodApplicable
857
    self._processMap["isCodApplicable"] = Processor.process_isCodApplicable
813
    self._processMap["getAllPromotions"] = Processor.process_getAllPromotions
858
    self._processMap["getAllPromotions"] = Processor.process_getAllPromotions
814
    self._processMap["getPromotionById"] = Processor.process_getPromotionById
859
    self._processMap["getPromotionById"] = Processor.process_getPromotionById
815
    self._processMap["generateCouponsForPromotion"] = Processor.process_generateCouponsForPromotion
860
    self._processMap["generateCouponsForPromotion"] = Processor.process_generateCouponsForPromotion
816
    self._processMap["applyCoupon"] = Processor.process_applyCoupon
861
    self._processMap["applyCoupon"] = Processor.process_applyCoupon
-
 
862
    self._processMap["applyRechargeCoupon"] = Processor.process_applyRechargeCoupon
817
    self._processMap["trackCouponUsage"] = Processor.process_trackCouponUsage
863
    self._processMap["trackCouponUsage"] = Processor.process_trackCouponUsage
818
    self._processMap["getCouponUsageCountByUser"] = Processor.process_getCouponUsageCountByUser
864
    self._processMap["getCouponUsageCountByUser"] = Processor.process_getCouponUsageCountByUser
819
    self._processMap["getActiveCoupons"] = Processor.process_getActiveCoupons
865
    self._processMap["getActiveCoupons"] = Processor.process_getActiveCoupons
820
    self._processMap["createCoupon"] = Processor.process_createCoupon
866
    self._processMap["createCoupon"] = Processor.process_createCoupon
821
    self._processMap["getSuccessfulPaymentCountForCoupon"] = Processor.process_getSuccessfulPaymentCountForCoupon
867
    self._processMap["getSuccessfulPaymentCountForCoupon"] = Processor.process_getSuccessfulPaymentCountForCoupon
Line 951... Line 997...
951
    oprot.writeMessageBegin("applyCoupon", TMessageType.REPLY, seqid)
997
    oprot.writeMessageBegin("applyCoupon", TMessageType.REPLY, seqid)
952
    result.write(oprot)
998
    result.write(oprot)
953
    oprot.writeMessageEnd()
999
    oprot.writeMessageEnd()
954
    oprot.trans.flush()
1000
    oprot.trans.flush()
955
 
1001
 
-
 
1002
  def process_applyRechargeCoupon(self, seqid, iprot, oprot):
-
 
1003
    args = applyRechargeCoupon_args()
-
 
1004
    args.read(iprot)
-
 
1005
    iprot.readMessageEnd()
-
 
1006
    result = applyRechargeCoupon_result()
-
 
1007
    try:
-
 
1008
      result.success = self._handler.applyRechargeCoupon(args.couponCode, args.totalAmount, args.userId)
-
 
1009
    except PromotionException, pex:
-
 
1010
      result.pex = pex
-
 
1011
    oprot.writeMessageBegin("applyRechargeCoupon", TMessageType.REPLY, seqid)
-
 
1012
    result.write(oprot)
-
 
1013
    oprot.writeMessageEnd()
-
 
1014
    oprot.trans.flush()
-
 
1015
 
956
  def process_trackCouponUsage(self, seqid, iprot, oprot):
1016
  def process_trackCouponUsage(self, seqid, iprot, oprot):
957
    args = trackCouponUsage_args()
1017
    args = trackCouponUsage_args()
958
    args.read(iprot)
1018
    args.read(iprot)
959
    iprot.readMessageEnd()
1019
    iprot.readMessageEnd()
960
    result = trackCouponUsage_result()
1020
    result = trackCouponUsage_result()
Line 2181... Line 2241...
2181
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
2241
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
2182
 
2242
 
2183
  def __ne__(self, other):
2243
  def __ne__(self, other):
2184
    return not (self == other)
2244
    return not (self == other)
2185
 
2245
 
-
 
2246
class applyRechargeCoupon_args:
-
 
2247
  """
-
 
2248
  Attributes:
-
 
2249
   - couponCode
-
 
2250
   - totalAmount
-
 
2251
   - userId
-
 
2252
  """
-
 
2253
 
-
 
2254
  thrift_spec = (
-
 
2255
    None, # 0
-
 
2256
    (1, TType.STRING, 'couponCode', None, None, ), # 1
-
 
2257
    (2, TType.I64, 'totalAmount', None, None, ), # 2
-
 
2258
    (3, TType.I64, 'userId', None, None, ), # 3
-
 
2259
  )
-
 
2260
 
-
 
2261
  def __init__(self, couponCode=None, totalAmount=None, userId=None,):
-
 
2262
    self.couponCode = couponCode
-
 
2263
    self.totalAmount = totalAmount
-
 
2264
    self.userId = userId
-
 
2265
 
-
 
2266
  def read(self, iprot):
-
 
2267
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
-
 
2268
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
-
 
2269
      return
-
 
2270
    iprot.readStructBegin()
-
 
2271
    while True:
-
 
2272
      (fname, ftype, fid) = iprot.readFieldBegin()
-
 
2273
      if ftype == TType.STOP:
-
 
2274
        break
-
 
2275
      if fid == 1:
-
 
2276
        if ftype == TType.STRING:
-
 
2277
          self.couponCode = iprot.readString();
-
 
2278
        else:
-
 
2279
          iprot.skip(ftype)
-
 
2280
      elif fid == 2:
-
 
2281
        if ftype == TType.I64:
-
 
2282
          self.totalAmount = iprot.readI64();
-
 
2283
        else:
-
 
2284
          iprot.skip(ftype)
-
 
2285
      elif fid == 3:
-
 
2286
        if ftype == TType.I64:
-
 
2287
          self.userId = iprot.readI64();
-
 
2288
        else:
-
 
2289
          iprot.skip(ftype)
-
 
2290
      else:
-
 
2291
        iprot.skip(ftype)
-
 
2292
      iprot.readFieldEnd()
-
 
2293
    iprot.readStructEnd()
-
 
2294
 
-
 
2295
  def write(self, oprot):
-
 
2296
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
-
 
2297
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
-
 
2298
      return
-
 
2299
    oprot.writeStructBegin('applyRechargeCoupon_args')
-
 
2300
    if self.couponCode is not None:
-
 
2301
      oprot.writeFieldBegin('couponCode', TType.STRING, 1)
-
 
2302
      oprot.writeString(self.couponCode)
-
 
2303
      oprot.writeFieldEnd()
-
 
2304
    if self.totalAmount is not None:
-
 
2305
      oprot.writeFieldBegin('totalAmount', TType.I64, 2)
-
 
2306
      oprot.writeI64(self.totalAmount)
-
 
2307
      oprot.writeFieldEnd()
-
 
2308
    if self.userId is not None:
-
 
2309
      oprot.writeFieldBegin('userId', TType.I64, 3)
-
 
2310
      oprot.writeI64(self.userId)
-
 
2311
      oprot.writeFieldEnd()
-
 
2312
    oprot.writeFieldStop()
-
 
2313
    oprot.writeStructEnd()
-
 
2314
 
-
 
2315
  def validate(self):
-
 
2316
    return
-
 
2317
 
-
 
2318
 
-
 
2319
  def __repr__(self):
-
 
2320
    L = ['%s=%r' % (key, value)
-
 
2321
      for key, value in self.__dict__.iteritems()]
-
 
2322
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
-
 
2323
 
-
 
2324
  def __eq__(self, other):
-
 
2325
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
-
 
2326
 
-
 
2327
  def __ne__(self, other):
-
 
2328
    return not (self == other)
-
 
2329
 
-
 
2330
class applyRechargeCoupon_result:
-
 
2331
  """
-
 
2332
  Attributes:
-
 
2333
   - success
-
 
2334
   - pex
-
 
2335
  """
-
 
2336
 
-
 
2337
  thrift_spec = (
-
 
2338
    (0, TType.MAP, 'success', (TType.I64,None,TType.STRING,None), None, ), # 0
-
 
2339
    (1, TType.STRUCT, 'pex', (PromotionException, PromotionException.thrift_spec), None, ), # 1
-
 
2340
  )
-
 
2341
 
-
 
2342
  def __init__(self, success=None, pex=None,):
-
 
2343
    self.success = success
-
 
2344
    self.pex = pex
-
 
2345
 
-
 
2346
  def read(self, iprot):
-
 
2347
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
-
 
2348
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
-
 
2349
      return
-
 
2350
    iprot.readStructBegin()
-
 
2351
    while True:
-
 
2352
      (fname, ftype, fid) = iprot.readFieldBegin()
-
 
2353
      if ftype == TType.STOP:
-
 
2354
        break
-
 
2355
      if fid == 0:
-
 
2356
        if ftype == TType.MAP:
-
 
2357
          self.success = {}
-
 
2358
          (_ktype29, _vtype30, _size28 ) = iprot.readMapBegin() 
-
 
2359
          for _i32 in xrange(_size28):
-
 
2360
            _key33 = iprot.readI64();
-
 
2361
            _val34 = iprot.readString();
-
 
2362
            self.success[_key33] = _val34
-
 
2363
          iprot.readMapEnd()
-
 
2364
        else:
-
 
2365
          iprot.skip(ftype)
-
 
2366
      elif fid == 1:
-
 
2367
        if ftype == TType.STRUCT:
-
 
2368
          self.pex = PromotionException()
-
 
2369
          self.pex.read(iprot)
-
 
2370
        else:
-
 
2371
          iprot.skip(ftype)
-
 
2372
      else:
-
 
2373
        iprot.skip(ftype)
-
 
2374
      iprot.readFieldEnd()
-
 
2375
    iprot.readStructEnd()
-
 
2376
 
-
 
2377
  def write(self, oprot):
-
 
2378
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
-
 
2379
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
-
 
2380
      return
-
 
2381
    oprot.writeStructBegin('applyRechargeCoupon_result')
-
 
2382
    if self.success is not None:
-
 
2383
      oprot.writeFieldBegin('success', TType.MAP, 0)
-
 
2384
      oprot.writeMapBegin(TType.I64, TType.STRING, len(self.success))
-
 
2385
      for kiter35,viter36 in self.success.items():
-
 
2386
        oprot.writeI64(kiter35)
-
 
2387
        oprot.writeString(viter36)
-
 
2388
      oprot.writeMapEnd()
-
 
2389
      oprot.writeFieldEnd()
-
 
2390
    if self.pex is not None:
-
 
2391
      oprot.writeFieldBegin('pex', TType.STRUCT, 1)
-
 
2392
      self.pex.write(oprot)
-
 
2393
      oprot.writeFieldEnd()
-
 
2394
    oprot.writeFieldStop()
-
 
2395
    oprot.writeStructEnd()
-
 
2396
 
-
 
2397
  def validate(self):
-
 
2398
    return
-
 
2399
 
-
 
2400
 
-
 
2401
  def __repr__(self):
-
 
2402
    L = ['%s=%r' % (key, value)
-
 
2403
      for key, value in self.__dict__.iteritems()]
-
 
2404
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
-
 
2405
 
-
 
2406
  def __eq__(self, other):
-
 
2407
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
-
 
2408
 
-
 
2409
  def __ne__(self, other):
-
 
2410
    return not (self == other)
-
 
2411
 
2186
class trackCouponUsage_args:
2412
class trackCouponUsage_args:
2187
  """
2413
  """
2188
  Attributes:
2414
  Attributes:
2189
   - couponCode
2415
   - couponCode
2190
   - transactionId
2416
   - transactionId
Line 2540... Line 2766...
2540
      if ftype == TType.STOP:
2766
      if ftype == TType.STOP:
2541
        break
2767
        break
2542
      if fid == 0:
2768
      if fid == 0:
2543
        if ftype == TType.LIST:
2769
        if ftype == TType.LIST:
2544
          self.success = []
2770
          self.success = []
2545
          (_etype31, _size28) = iprot.readListBegin()
2771
          (_etype40, _size37) = iprot.readListBegin()
2546
          for _i32 in xrange(_size28):
2772
          for _i41 in xrange(_size37):
2547
            _elem33 = Coupon()
2773
            _elem42 = Coupon()
2548
            _elem33.read(iprot)
2774
            _elem42.read(iprot)
2549
            self.success.append(_elem33)
2775
            self.success.append(_elem42)
2550
          iprot.readListEnd()
2776
          iprot.readListEnd()
2551
        else:
2777
        else:
2552
          iprot.skip(ftype)
2778
          iprot.skip(ftype)
2553
      elif fid == 1:
2779
      elif fid == 1:
2554
        if ftype == TType.STRUCT:
2780
        if ftype == TType.STRUCT:
Line 2567... Line 2793...
2567
      return
2793
      return
2568
    oprot.writeStructBegin('getActiveCoupons_result')
2794
    oprot.writeStructBegin('getActiveCoupons_result')
2569
    if self.success is not None:
2795
    if self.success is not None:
2570
      oprot.writeFieldBegin('success', TType.LIST, 0)
2796
      oprot.writeFieldBegin('success', TType.LIST, 0)
2571
      oprot.writeListBegin(TType.STRUCT, len(self.success))
2797
      oprot.writeListBegin(TType.STRUCT, len(self.success))
2572
      for iter34 in self.success:
2798
      for iter43 in self.success:
2573
        iter34.write(oprot)
2799
        iter43.write(oprot)
2574
      oprot.writeListEnd()
2800
      oprot.writeListEnd()
2575
      oprot.writeFieldEnd()
2801
      oprot.writeFieldEnd()
2576
    if self.pex is not None:
2802
    if self.pex is not None:
2577
      oprot.writeFieldBegin('pex', TType.STRUCT, 1)
2803
      oprot.writeFieldBegin('pex', TType.STRUCT, 1)
2578
      self.pex.write(oprot)
2804
      self.pex.write(oprot)
Line 3062... Line 3288...
3062
      if ftype == TType.STOP:
3288
      if ftype == TType.STOP:
3063
        break
3289
        break
3064
      if fid == 1:
3290
      if fid == 1:
3065
        if ftype == TType.LIST:
3291
        if ftype == TType.LIST:
3066
          self.itemIds = []
3292
          self.itemIds = []
3067
          (_etype38, _size35) = iprot.readListBegin()
3293
          (_etype47, _size44) = iprot.readListBegin()
3068
          for _i39 in xrange(_size35):
3294
          for _i48 in xrange(_size44):
3069
            _elem40 = iprot.readI64();
3295
            _elem49 = iprot.readI64();
3070
            self.itemIds.append(_elem40)
3296
            self.itemIds.append(_elem49)
3071
          iprot.readListEnd()
3297
          iprot.readListEnd()
3072
        else:
3298
        else:
3073
          iprot.skip(ftype)
3299
          iprot.skip(ftype)
3074
      else:
3300
      else:
3075
        iprot.skip(ftype)
3301
        iprot.skip(ftype)
Line 3082... Line 3308...
3082
      return
3308
      return
3083
    oprot.writeStructBegin('getItemDiscountMap_args')
3309
    oprot.writeStructBegin('getItemDiscountMap_args')
3084
    if self.itemIds is not None:
3310
    if self.itemIds is not None:
3085
      oprot.writeFieldBegin('itemIds', TType.LIST, 1)
3311
      oprot.writeFieldBegin('itemIds', TType.LIST, 1)
3086
      oprot.writeListBegin(TType.I64, len(self.itemIds))
3312
      oprot.writeListBegin(TType.I64, len(self.itemIds))
3087
      for iter41 in self.itemIds:
3313
      for iter50 in self.itemIds:
3088
        oprot.writeI64(iter41)
3314
        oprot.writeI64(iter50)
3089
      oprot.writeListEnd()
3315
      oprot.writeListEnd()
3090
      oprot.writeFieldEnd()
3316
      oprot.writeFieldEnd()
3091
    oprot.writeFieldStop()
3317
    oprot.writeFieldStop()
3092
    oprot.writeStructEnd()
3318
    oprot.writeStructEnd()
3093
 
3319
 
Line 3132... Line 3358...
3132
      if ftype == TType.STOP:
3358
      if ftype == TType.STOP:
3133
        break
3359
        break
3134
      if fid == 0:
3360
      if fid == 0:
3135
        if ftype == TType.LIST:
3361
        if ftype == TType.LIST:
3136
          self.success = []
3362
          self.success = []
3137
          (_etype45, _size42) = iprot.readListBegin()
3363
          (_etype54, _size51) = iprot.readListBegin()
3138
          for _i46 in xrange(_size42):
3364
          for _i55 in xrange(_size51):
3139
            _elem47 = ItemCouponDiscount()
3365
            _elem56 = ItemCouponDiscount()
3140
            _elem47.read(iprot)
3366
            _elem56.read(iprot)
3141
            self.success.append(_elem47)
3367
            self.success.append(_elem56)
3142
          iprot.readListEnd()
3368
          iprot.readListEnd()
3143
        else:
3369
        else:
3144
          iprot.skip(ftype)
3370
          iprot.skip(ftype)
3145
      elif fid == 1:
3371
      elif fid == 1:
3146
        if ftype == TType.STRUCT:
3372
        if ftype == TType.STRUCT:
Line 3159... Line 3385...
3159
      return
3385
      return
3160
    oprot.writeStructBegin('getItemDiscountMap_result')
3386
    oprot.writeStructBegin('getItemDiscountMap_result')
3161
    if self.success is not None:
3387
    if self.success is not None:
3162
      oprot.writeFieldBegin('success', TType.LIST, 0)
3388
      oprot.writeFieldBegin('success', TType.LIST, 0)
3163
      oprot.writeListBegin(TType.STRUCT, len(self.success))
3389
      oprot.writeListBegin(TType.STRUCT, len(self.success))
3164
      for iter48 in self.success:
3390
      for iter57 in self.success:
3165
        iter48.write(oprot)
3391
        iter57.write(oprot)
3166
      oprot.writeListEnd()
3392
      oprot.writeListEnd()
3167
      oprot.writeFieldEnd()
3393
      oprot.writeFieldEnd()
3168
    if self.pex is not None:
3394
    if self.pex is not None:
3169
      oprot.writeFieldBegin('pex', TType.STRUCT, 1)
3395
      oprot.writeFieldBegin('pex', TType.STRUCT, 1)
3170
      self.pex.write(oprot)
3396
      self.pex.write(oprot)
Line 3270... Line 3496...
3270
      if ftype == TType.STOP:
3496
      if ftype == TType.STOP:
3271
        break
3497
        break
3272
      if fid == 0:
3498
      if fid == 0:
3273
        if ftype == TType.MAP:
3499
        if ftype == TType.MAP:
3274
          self.success = {}
3500
          self.success = {}
3275
          (_ktype50, _vtype51, _size49 ) = iprot.readMapBegin() 
3501
          (_ktype59, _vtype60, _size58 ) = iprot.readMapBegin() 
3276
          for _i53 in xrange(_size49):
3502
          for _i62 in xrange(_size58):
3277
            _key54 = iprot.readString();
3503
            _key63 = iprot.readString();
3278
            _val55 = iprot.readDouble();
3504
            _val64 = iprot.readDouble();
3279
            self.success[_key54] = _val55
3505
            self.success[_key63] = _val64
3280
          iprot.readMapEnd()
3506
          iprot.readMapEnd()
3281
        else:
3507
        else:
3282
          iprot.skip(ftype)
3508
          iprot.skip(ftype)
3283
      else:
3509
      else:
3284
        iprot.skip(ftype)
3510
        iprot.skip(ftype)
Line 3291... Line 3517...
3291
      return
3517
      return
3292
    oprot.writeStructBegin('getDiscountsForEntity_result')
3518
    oprot.writeStructBegin('getDiscountsForEntity_result')
3293
    if self.success is not None:
3519
    if self.success is not None:
3294
      oprot.writeFieldBegin('success', TType.MAP, 0)
3520
      oprot.writeFieldBegin('success', TType.MAP, 0)
3295
      oprot.writeMapBegin(TType.STRING, TType.DOUBLE, len(self.success))
3521
      oprot.writeMapBegin(TType.STRING, TType.DOUBLE, len(self.success))
3296
      for kiter56,viter57 in self.success.items():
3522
      for kiter65,viter66 in self.success.items():
3297
        oprot.writeString(kiter56)
3523
        oprot.writeString(kiter65)
3298
        oprot.writeDouble(viter57)
3524
        oprot.writeDouble(viter66)
3299
      oprot.writeMapEnd()
3525
      oprot.writeMapEnd()
3300
      oprot.writeFieldEnd()
3526
      oprot.writeFieldEnd()
3301
    oprot.writeFieldStop()
3527
    oprot.writeFieldStop()
3302
    oprot.writeStructEnd()
3528
    oprot.writeStructEnd()
3303
 
3529