Subversion Repositories SmartDukaan

Rev

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

Rev 3431 Rev 3451
Line 91... Line 91...
91
     - end_billing_date
91
     - end_billing_date
92
     - warehouse_id
92
     - warehouse_id
93
    """
93
    """
94
    pass
94
    pass
95
 
95
 
96
  def getOrdersByShippingDate(self, fromShippingDate, toShippingDate, providerId, warehouseId):
96
  def getOrdersByShippingDate(self, fromShippingDate, toShippingDate, providerId, warehouseId, cod):
97
    """
97
    """
98
    Returns orders for a particular provider and warehouse which were shipped between the given dates.
98
    Returns orders for a particular provider and warehouse which were shipped between the given dates.
-
 
99
    Returned orders comprise of COD orders if cod parameter is true. It comprises of prepaid orders otherwise.
99
    Pass providerId and warehouseId as -1 to ignore both the parameters.
100
    Pass providerId and warehouseId as -1 to ignore both these parameters.
100
 
101
 
101
    Parameters:
102
    Parameters:
102
     - fromShippingDate
103
     - fromShippingDate
103
     - toShippingDate
104
     - toShippingDate
104
     - providerId
105
     - providerId
105
     - warehouseId
106
     - warehouseId
-
 
107
     - cod
106
    """
108
    """
107
    pass
109
    pass
108
 
110
 
109
  def getReturnableOrdersForCustomer(self, customer_id, limit):
111
  def getReturnableOrdersForCustomer(self, customer_id, limit):
110
    """
112
    """
Line 555... Line 557...
555
    Parameters:
557
    Parameters:
556
     - warehouseId
558
     - warehouseId
557
    """
559
    """
558
    pass
560
    pass
559
 
561
 
-
 
562
  def updateWeight(self, orderId, weight):
-
 
563
    """
-
 
564
    Set the weight of the given order to the provided value. Will attempt to update the weight of the item in the catalog as well.
-
 
565
 
-
 
566
    Parameters:
-
 
567
     - orderId
-
 
568
     - weight
-
 
569
    """
-
 
570
    pass
-
 
571
 
560
 
572
 
561
class Client(shop2020.thriftpy.generic.GenericService.Client, Iface):
573
class Client(shop2020.thriftpy.generic.GenericService.Client, Iface):
562
  def __init__(self, iprot, oprot=None):
574
  def __init__(self, iprot, oprot=None):
563
    shop2020.thriftpy.generic.GenericService.Client.__init__(self, iprot, oprot)
575
    shop2020.thriftpy.generic.GenericService.Client.__init__(self, iprot, oprot)
564
 
576
 
Line 872... Line 884...
872
      return result.success
884
      return result.success
873
    if result.ex is not None:
885
    if result.ex is not None:
874
      raise result.ex
886
      raise result.ex
875
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getOrdersByBillingDate failed: unknown result");
887
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getOrdersByBillingDate failed: unknown result");
876
 
888
 
877
  def getOrdersByShippingDate(self, fromShippingDate, toShippingDate, providerId, warehouseId):
889
  def getOrdersByShippingDate(self, fromShippingDate, toShippingDate, providerId, warehouseId, cod):
878
    """
890
    """
879
    Returns orders for a particular provider and warehouse which were shipped between the given dates.
891
    Returns orders for a particular provider and warehouse which were shipped between the given dates.
-
 
892
    Returned orders comprise of COD orders if cod parameter is true. It comprises of prepaid orders otherwise.
880
    Pass providerId and warehouseId as -1 to ignore both the parameters.
893
    Pass providerId and warehouseId as -1 to ignore both these parameters.
881
 
894
 
882
    Parameters:
895
    Parameters:
883
     - fromShippingDate
896
     - fromShippingDate
884
     - toShippingDate
897
     - toShippingDate
885
     - providerId
898
     - providerId
886
     - warehouseId
899
     - warehouseId
-
 
900
     - cod
887
    """
901
    """
888
    self.send_getOrdersByShippingDate(fromShippingDate, toShippingDate, providerId, warehouseId)
902
    self.send_getOrdersByShippingDate(fromShippingDate, toShippingDate, providerId, warehouseId, cod)
889
    return self.recv_getOrdersByShippingDate()
903
    return self.recv_getOrdersByShippingDate()
890
 
904
 
891
  def send_getOrdersByShippingDate(self, fromShippingDate, toShippingDate, providerId, warehouseId):
905
  def send_getOrdersByShippingDate(self, fromShippingDate, toShippingDate, providerId, warehouseId, cod):
892
    self._oprot.writeMessageBegin('getOrdersByShippingDate', TMessageType.CALL, self._seqid)
906
    self._oprot.writeMessageBegin('getOrdersByShippingDate', TMessageType.CALL, self._seqid)
893
    args = getOrdersByShippingDate_args()
907
    args = getOrdersByShippingDate_args()
894
    args.fromShippingDate = fromShippingDate
908
    args.fromShippingDate = fromShippingDate
895
    args.toShippingDate = toShippingDate
909
    args.toShippingDate = toShippingDate
896
    args.providerId = providerId
910
    args.providerId = providerId
897
    args.warehouseId = warehouseId
911
    args.warehouseId = warehouseId
-
 
912
    args.cod = cod
898
    args.write(self._oprot)
913
    args.write(self._oprot)
899
    self._oprot.writeMessageEnd()
914
    self._oprot.writeMessageEnd()
900
    self._oprot.trans.flush()
915
    self._oprot.trans.flush()
901
 
916
 
902
  def recv_getOrdersByShippingDate(self, ):
917
  def recv_getOrdersByShippingDate(self, ):
Line 2367... Line 2382...
2367
      return result.success
2382
      return result.success
2368
    if result.ex is not None:
2383
    if result.ex is not None:
2369
      raise result.ex
2384
      raise result.ex
2370
    raise TApplicationException(TApplicationException.MISSING_RESULT, "createPurchaseOrder failed: unknown result");
2385
    raise TApplicationException(TApplicationException.MISSING_RESULT, "createPurchaseOrder failed: unknown result");
2371
 
2386
 
-
 
2387
  def updateWeight(self, orderId, weight):
-
 
2388
    """
-
 
2389
    Set the weight of the given order to the provided value. Will attempt to update the weight of the item in the catalog as well.
-
 
2390
 
-
 
2391
    Parameters:
-
 
2392
     - orderId
-
 
2393
     - weight
-
 
2394
    """
-
 
2395
    self.send_updateWeight(orderId, weight)
-
 
2396
    return self.recv_updateWeight()
-
 
2397
 
-
 
2398
  def send_updateWeight(self, orderId, weight):
-
 
2399
    self._oprot.writeMessageBegin('updateWeight', TMessageType.CALL, self._seqid)
-
 
2400
    args = updateWeight_args()
-
 
2401
    args.orderId = orderId
-
 
2402
    args.weight = weight
-
 
2403
    args.write(self._oprot)
-
 
2404
    self._oprot.writeMessageEnd()
-
 
2405
    self._oprot.trans.flush()
-
 
2406
 
-
 
2407
  def recv_updateWeight(self, ):
-
 
2408
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
-
 
2409
    if mtype == TMessageType.EXCEPTION:
-
 
2410
      x = TApplicationException()
-
 
2411
      x.read(self._iprot)
-
 
2412
      self._iprot.readMessageEnd()
-
 
2413
      raise x
-
 
2414
    result = updateWeight_result()
-
 
2415
    result.read(self._iprot)
-
 
2416
    self._iprot.readMessageEnd()
-
 
2417
    if result.success is not None:
-
 
2418
      return result.success
-
 
2419
    if result.ex is not None:
-
 
2420
      raise result.ex
-
 
2421
    raise TApplicationException(TApplicationException.MISSING_RESULT, "updateWeight failed: unknown result");
-
 
2422
 
2372
 
2423
 
2373
class Processor(shop2020.thriftpy.generic.GenericService.Processor, Iface, TProcessor):
2424
class Processor(shop2020.thriftpy.generic.GenericService.Processor, Iface, TProcessor):
2374
  def __init__(self, handler):
2425
  def __init__(self, handler):
2375
    shop2020.thriftpy.generic.GenericService.Processor.__init__(self, handler)
2426
    shop2020.thriftpy.generic.GenericService.Processor.__init__(self, handler)
2376
    self._processMap["createTransaction"] = Processor.process_createTransaction
2427
    self._processMap["createTransaction"] = Processor.process_createTransaction
Line 2421... Line 2472...
2421
    self._processMap["refundOrder"] = Processor.process_refundOrder
2472
    self._processMap["refundOrder"] = Processor.process_refundOrder
2422
    self._processMap["getReturnOrders"] = Processor.process_getReturnOrders
2473
    self._processMap["getReturnOrders"] = Processor.process_getReturnOrders
2423
    self._processMap["getReturnOrder"] = Processor.process_getReturnOrder
2474
    self._processMap["getReturnOrder"] = Processor.process_getReturnOrder
2424
    self._processMap["processReturn"] = Processor.process_processReturn
2475
    self._processMap["processReturn"] = Processor.process_processReturn
2425
    self._processMap["createPurchaseOrder"] = Processor.process_createPurchaseOrder
2476
    self._processMap["createPurchaseOrder"] = Processor.process_createPurchaseOrder
-
 
2477
    self._processMap["updateWeight"] = Processor.process_updateWeight
2426
 
2478
 
2427
  def process(self, iprot, oprot):
2479
  def process(self, iprot, oprot):
2428
    (name, type, seqid) = iprot.readMessageBegin()
2480
    (name, type, seqid) = iprot.readMessageBegin()
2429
    if name not in self._processMap:
2481
    if name not in self._processMap:
2430
      iprot.skip(TType.STRUCT)
2482
      iprot.skip(TType.STRUCT)
Line 2569... Line 2621...
2569
    args = getOrdersByShippingDate_args()
2621
    args = getOrdersByShippingDate_args()
2570
    args.read(iprot)
2622
    args.read(iprot)
2571
    iprot.readMessageEnd()
2623
    iprot.readMessageEnd()
2572
    result = getOrdersByShippingDate_result()
2624
    result = getOrdersByShippingDate_result()
2573
    try:
2625
    try:
2574
      result.success = self._handler.getOrdersByShippingDate(args.fromShippingDate, args.toShippingDate, args.providerId, args.warehouseId)
2626
      result.success = self._handler.getOrdersByShippingDate(args.fromShippingDate, args.toShippingDate, args.providerId, args.warehouseId, args.cod)
2575
    except TransactionServiceException, ex:
2627
    except TransactionServiceException, ex:
2576
      result.ex = ex
2628
      result.ex = ex
2577
    oprot.writeMessageBegin("getOrdersByShippingDate", TMessageType.REPLY, seqid)
2629
    oprot.writeMessageBegin("getOrdersByShippingDate", TMessageType.REPLY, seqid)
2578
    result.write(oprot)
2630
    result.write(oprot)
2579
    oprot.writeMessageEnd()
2631
    oprot.writeMessageEnd()
Line 3110... Line 3162...
3110
    oprot.writeMessageBegin("createPurchaseOrder", TMessageType.REPLY, seqid)
3162
    oprot.writeMessageBegin("createPurchaseOrder", TMessageType.REPLY, seqid)
3111
    result.write(oprot)
3163
    result.write(oprot)
3112
    oprot.writeMessageEnd()
3164
    oprot.writeMessageEnd()
3113
    oprot.trans.flush()
3165
    oprot.trans.flush()
3114
 
3166
 
-
 
3167
  def process_updateWeight(self, seqid, iprot, oprot):
-
 
3168
    args = updateWeight_args()
-
 
3169
    args.read(iprot)
-
 
3170
    iprot.readMessageEnd()
-
 
3171
    result = updateWeight_result()
-
 
3172
    try:
-
 
3173
      result.success = self._handler.updateWeight(args.orderId, args.weight)
-
 
3174
    except TransactionServiceException, ex:
-
 
3175
      result.ex = ex
-
 
3176
    oprot.writeMessageBegin("updateWeight", TMessageType.REPLY, seqid)
-
 
3177
    result.write(oprot)
-
 
3178
    oprot.writeMessageEnd()
-
 
3179
    oprot.trans.flush()
-
 
3180
 
3115
 
3181
 
3116
# HELPER FUNCTIONS AND STRUCTURES
3182
# HELPER FUNCTIONS AND STRUCTURES
3117
 
3183
 
3118
class createTransaction_args:
3184
class createTransaction_args:
3119
  """
3185
  """
Line 4478... Line 4544...
4478
  Attributes:
4544
  Attributes:
4479
   - fromShippingDate
4545
   - fromShippingDate
4480
   - toShippingDate
4546
   - toShippingDate
4481
   - providerId
4547
   - providerId
4482
   - warehouseId
4548
   - warehouseId
-
 
4549
   - cod
4483
  """
4550
  """
4484
 
4551
 
4485
  thrift_spec = (
4552
  thrift_spec = (
4486
    None, # 0
4553
    None, # 0
4487
    (1, TType.I64, 'fromShippingDate', None, None, ), # 1
4554
    (1, TType.I64, 'fromShippingDate', None, None, ), # 1
4488
    (2, TType.I64, 'toShippingDate', None, None, ), # 2
4555
    (2, TType.I64, 'toShippingDate', None, None, ), # 2
4489
    (3, TType.I64, 'providerId', None, None, ), # 3
4556
    (3, TType.I64, 'providerId', None, None, ), # 3
4490
    (4, TType.I64, 'warehouseId', None, None, ), # 4
4557
    (4, TType.I64, 'warehouseId', None, None, ), # 4
-
 
4558
    (5, TType.BOOL, 'cod', None, None, ), # 5
4491
  )
4559
  )
4492
 
4560
 
4493
  def __init__(self, fromShippingDate=None, toShippingDate=None, providerId=None, warehouseId=None,):
4561
  def __init__(self, fromShippingDate=None, toShippingDate=None, providerId=None, warehouseId=None, cod=None,):
4494
    self.fromShippingDate = fromShippingDate
4562
    self.fromShippingDate = fromShippingDate
4495
    self.toShippingDate = toShippingDate
4563
    self.toShippingDate = toShippingDate
4496
    self.providerId = providerId
4564
    self.providerId = providerId
4497
    self.warehouseId = warehouseId
4565
    self.warehouseId = warehouseId
-
 
4566
    self.cod = cod
4498
 
4567
 
4499
  def read(self, iprot):
4568
  def read(self, iprot):
4500
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
4569
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
4501
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
4570
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
4502
      return
4571
      return
Line 4523... Line 4592...
4523
      elif fid == 4:
4592
      elif fid == 4:
4524
        if ftype == TType.I64:
4593
        if ftype == TType.I64:
4525
          self.warehouseId = iprot.readI64();
4594
          self.warehouseId = iprot.readI64();
4526
        else:
4595
        else:
4527
          iprot.skip(ftype)
4596
          iprot.skip(ftype)
-
 
4597
      elif fid == 5:
-
 
4598
        if ftype == TType.BOOL:
-
 
4599
          self.cod = iprot.readBool();
-
 
4600
        else:
-
 
4601
          iprot.skip(ftype)
4528
      else:
4602
      else:
4529
        iprot.skip(ftype)
4603
        iprot.skip(ftype)
4530
      iprot.readFieldEnd()
4604
      iprot.readFieldEnd()
4531
    iprot.readStructEnd()
4605
    iprot.readStructEnd()
4532
 
4606
 
Line 4549... Line 4623...
4549
      oprot.writeFieldEnd()
4623
      oprot.writeFieldEnd()
4550
    if self.warehouseId is not None:
4624
    if self.warehouseId is not None:
4551
      oprot.writeFieldBegin('warehouseId', TType.I64, 4)
4625
      oprot.writeFieldBegin('warehouseId', TType.I64, 4)
4552
      oprot.writeI64(self.warehouseId)
4626
      oprot.writeI64(self.warehouseId)
4553
      oprot.writeFieldEnd()
4627
      oprot.writeFieldEnd()
-
 
4628
    if self.cod is not None:
-
 
4629
      oprot.writeFieldBegin('cod', TType.BOOL, 5)
-
 
4630
      oprot.writeBool(self.cod)
-
 
4631
      oprot.writeFieldEnd()
4554
    oprot.writeFieldStop()
4632
    oprot.writeFieldStop()
4555
    oprot.writeStructEnd()
4633
    oprot.writeStructEnd()
4556
 
4634
 
4557
  def validate(self):
4635
  def validate(self):
4558
    return
4636
    return
Line 10262... Line 10340...
10262
      oprot.writeFieldEnd()
10340
      oprot.writeFieldEnd()
10263
    if self.ex is not None:
10341
    if self.ex is not None:
10264
      oprot.writeFieldBegin('ex', TType.STRUCT, 1)
10342
      oprot.writeFieldBegin('ex', TType.STRUCT, 1)
10265
      self.ex.write(oprot)
10343
      self.ex.write(oprot)
10266
      oprot.writeFieldEnd()
10344
      oprot.writeFieldEnd()
-
 
10345
    oprot.writeFieldStop()
-
 
10346
    oprot.writeStructEnd()
-
 
10347
 
-
 
10348
  def validate(self):
-
 
10349
    return
-
 
10350
 
-
 
10351
 
-
 
10352
  def __repr__(self):
-
 
10353
    L = ['%s=%r' % (key, value)
-
 
10354
      for key, value in self.__dict__.iteritems()]
-
 
10355
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
-
 
10356
 
-
 
10357
  def __eq__(self, other):
-
 
10358
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
-
 
10359
 
-
 
10360
  def __ne__(self, other):
-
 
10361
    return not (self == other)
-
 
10362
 
-
 
10363
class updateWeight_args:
-
 
10364
  """
-
 
10365
  Attributes:
-
 
10366
   - orderId
-
 
10367
   - weight
-
 
10368
  """
-
 
10369
 
-
 
10370
  thrift_spec = (
-
 
10371
    None, # 0
-
 
10372
    (1, TType.I64, 'orderId', None, None, ), # 1
-
 
10373
    (2, TType.DOUBLE, 'weight', None, None, ), # 2
-
 
10374
  )
-
 
10375
 
-
 
10376
  def __init__(self, orderId=None, weight=None,):
-
 
10377
    self.orderId = orderId
-
 
10378
    self.weight = weight
-
 
10379
 
-
 
10380
  def read(self, iprot):
-
 
10381
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
-
 
10382
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
-
 
10383
      return
-
 
10384
    iprot.readStructBegin()
-
 
10385
    while True:
-
 
10386
      (fname, ftype, fid) = iprot.readFieldBegin()
-
 
10387
      if ftype == TType.STOP:
-
 
10388
        break
-
 
10389
      if fid == 1:
-
 
10390
        if ftype == TType.I64:
-
 
10391
          self.orderId = iprot.readI64();
-
 
10392
        else:
-
 
10393
          iprot.skip(ftype)
-
 
10394
      elif fid == 2:
-
 
10395
        if ftype == TType.DOUBLE:
-
 
10396
          self.weight = iprot.readDouble();
-
 
10397
        else:
-
 
10398
          iprot.skip(ftype)
-
 
10399
      else:
-
 
10400
        iprot.skip(ftype)
-
 
10401
      iprot.readFieldEnd()
-
 
10402
    iprot.readStructEnd()
-
 
10403
 
-
 
10404
  def write(self, oprot):
-
 
10405
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
-
 
10406
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
-
 
10407
      return
-
 
10408
    oprot.writeStructBegin('updateWeight_args')
-
 
10409
    if self.orderId is not None:
-
 
10410
      oprot.writeFieldBegin('orderId', TType.I64, 1)
-
 
10411
      oprot.writeI64(self.orderId)
-
 
10412
      oprot.writeFieldEnd()
-
 
10413
    if self.weight is not None:
-
 
10414
      oprot.writeFieldBegin('weight', TType.DOUBLE, 2)
-
 
10415
      oprot.writeDouble(self.weight)
-
 
10416
      oprot.writeFieldEnd()
-
 
10417
    oprot.writeFieldStop()
-
 
10418
    oprot.writeStructEnd()
-
 
10419
 
-
 
10420
  def validate(self):
-
 
10421
    return
-
 
10422
 
-
 
10423
 
-
 
10424
  def __repr__(self):
-
 
10425
    L = ['%s=%r' % (key, value)
-
 
10426
      for key, value in self.__dict__.iteritems()]
-
 
10427
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
-
 
10428
 
-
 
10429
  def __eq__(self, other):
-
 
10430
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
-
 
10431
 
-
 
10432
  def __ne__(self, other):
-
 
10433
    return not (self == other)
-
 
10434
 
-
 
10435
class updateWeight_result:
-
 
10436
  """
-
 
10437
  Attributes:
-
 
10438
   - success
-
 
10439
   - ex
-
 
10440
  """
-
 
10441
 
-
 
10442
  thrift_spec = (
-
 
10443
    (0, TType.STRUCT, 'success', (Order, Order.thrift_spec), None, ), # 0
-
 
10444
    (1, TType.STRUCT, 'ex', (TransactionServiceException, TransactionServiceException.thrift_spec), None, ), # 1
-
 
10445
  )
-
 
10446
 
-
 
10447
  def __init__(self, success=None, ex=None,):
-
 
10448
    self.success = success
-
 
10449
    self.ex = ex
-
 
10450
 
-
 
10451
  def read(self, iprot):
-
 
10452
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
-
 
10453
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
-
 
10454
      return
-
 
10455
    iprot.readStructBegin()
-
 
10456
    while True:
-
 
10457
      (fname, ftype, fid) = iprot.readFieldBegin()
-
 
10458
      if ftype == TType.STOP:
-
 
10459
        break
-
 
10460
      if fid == 0:
-
 
10461
        if ftype == TType.STRUCT:
-
 
10462
          self.success = Order()
-
 
10463
          self.success.read(iprot)
-
 
10464
        else:
-
 
10465
          iprot.skip(ftype)
-
 
10466
      elif fid == 1:
-
 
10467
        if ftype == TType.STRUCT:
-
 
10468
          self.ex = TransactionServiceException()
-
 
10469
          self.ex.read(iprot)
-
 
10470
        else:
-
 
10471
          iprot.skip(ftype)
-
 
10472
      else:
-
 
10473
        iprot.skip(ftype)
-
 
10474
      iprot.readFieldEnd()
-
 
10475
    iprot.readStructEnd()
-
 
10476
 
-
 
10477
  def write(self, oprot):
-
 
10478
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
-
 
10479
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
-
 
10480
      return
-
 
10481
    oprot.writeStructBegin('updateWeight_result')
-
 
10482
    if self.success is not None:
-
 
10483
      oprot.writeFieldBegin('success', TType.STRUCT, 0)
-
 
10484
      self.success.write(oprot)
-
 
10485
      oprot.writeFieldEnd()
-
 
10486
    if self.ex is not None:
-
 
10487
      oprot.writeFieldBegin('ex', TType.STRUCT, 1)
-
 
10488
      self.ex.write(oprot)
-
 
10489
      oprot.writeFieldEnd()
10267
    oprot.writeFieldStop()
10490
    oprot.writeFieldStop()
10268
    oprot.writeStructEnd()
10491
    oprot.writeStructEnd()
10269
 
10492
 
10270
  def validate(self):
10493
  def validate(self):
10271
    return
10494
    return