'''
 Generated by EZX Code Generator  
Date: 04/18/22 
'''


from iserver.EzxMsg import EzxMsg, EzxMsgMeta
from iserver.msgs import *
from iserver.enums import api

from .AllocInfo import AllocInfo
from .AllocationRequestStatus import AllocationRequestStatus



class AllocationStatus(EzxMsg, metaclass=EzxMsgMeta):

	__block_fields__ = {
		'ALLOCINFO' : Field('allocInfoList', 'ALLOCINFO', noop_decode_func, update_list_item), 
		'ALLOCREQSB' : Field('allocationRequests', 'ALLOCREQSB', noop_decode_func, update_list_item), 
	}

	def __init__(self, **kwargs):
		self.myID : str = None
		self.routerAllocID : int = None
		self.version : int = None
		self.seqNo : int = None
		self.allocID : str = None
		self.allocStatus : str = None
		self.allocRejCode : int = None
		self.state : str = None
		self.text : str = None
		self.tradeDate : str = None
		self.clientNameID : int = None
		self.symbol : str = None
		self.symbolsfx : str = None
		self.side : int = None
		self.currency : str = None
		self.shares : int = None
		self.avgPx : float = None
		self.timeStamp : str = None
		self.allocInfoList : list[AllocInfo] = None
		self.allocationRequests : list[AllocationRequestStatus] = None
		super(AllocationStatus, self).__init__(**kwargs)

