using System.Xml.Serialization;

namespace Wayne.FDCPOSLibrary
{
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlRootAttribute(ElementName = "ServiceResponse", Namespace = "")]
    public partial class ServiceResponseGetDSPLimits : ServiceResponse
    {
        private ServiceResponseFDCdataGetDSPLimits[] FDCdataField;


        [System.Xml.Serialization.XmlElementAttribute("FDCdata", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public ServiceResponseFDCdataGetDSPLimits[] FDCdata
        {
            get
            {
                return this.FDCdataField;
            }
            set
            {
                this.FDCdataField = value;
            }
        }

        public ServiceResponseGetDSPLimits()
        {
            RequestType = "GetDSPLimits";
        }
    }

    [System.SerializableAttribute()]
    public partial class ServiceResponseFDCdataGetDSPLimits
    {
        private string FDCTimeStampField;
        private ServiceResponseDeviceClassGetDSPLimits[] DeviceClassField;
        private string FDCStatusField;


        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string FDCTimeStamp
        {
            get
            {
                return this.FDCTimeStampField;
            }
            set
            {
                this.FDCTimeStampField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute("DeviceClass", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public ServiceResponseDeviceClassGetDSPLimits[] DeviceClass
        {
            get
            {
                return this.DeviceClassField;
            }
            set
            {
                this.DeviceClassField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string FDCStatus
        {
            get
            {
                return this.FDCStatusField;
            }
            set
            {
                this.FDCStatusField = value;
            }
        }
    }
   
    [System.SerializableAttribute()]
    public partial class ServiceResponseDeviceClassGetDSPLimits
    {
        private string TypeField;
        private string DeviceIdField;
        //DSP
        private ServiceResponseProductDeviceClassGetDSPLimits[] ProductField; 
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string Type
        {
            get
            {
                return this.TypeField;
            }
            set
            {
                this.TypeField = value;
            }
        }
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string DeviceID
        {
            get
            {
                return this.DeviceIdField;
            }
            set
            {
                this.DeviceIdField = value;
            }
        }
        
        [System.Xml.Serialization.XmlElementAttribute("Product", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public ServiceResponseProductDeviceClassGetDSPLimits[] Product
        {
            get
            {
                return this.ProductField;
            }
            set
            {
                this.ProductField = value;
            }
        }
     }

    [System.SerializableAttribute()]
    public partial class ServiceResponseProductDeviceClassGetDSPLimits
    {
        private string ProductNoField;
        private ServiceResponseFuelModeDeviceClassGetDSPLimits[] FuleModeField;

        [System.Xml.Serialization.XmlAttributeAttribute("ProductNo")]
        public string ProductNo
        {
            get
            {
                return this.ProductNoField;
            }
            set
            {
                this.ProductNoField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute("FuelMode", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public ServiceResponseFuelModeDeviceClassGetDSPLimits[] FuelMode
        {
            get
            {
                return this.FuleModeField;
            }
            set
            {
                this.FuleModeField = value;
            }
        }

    }

    [System.SerializableAttribute()]
    public partial class ServiceResponseFuelModeDeviceClassGetDSPLimits
    {
        private string ModeNoField;
        private string MaxTrxAmountField;
        private string MaxTrxVolumeField;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string ModeNo
        {
            get
            {
                return this.ModeNoField;
            }
            set
            {
                this.ModeNoField = value;
            }
        }
        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string MaxTrxAmount
        {
            get
            {
                return this.MaxTrxAmountField;
            }
            set
            {
                this.MaxTrxAmountField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string MaxTrxVolume
        {
            get
            {
                return this.MaxTrxVolumeField;
            }
            set
            {
                this.MaxTrxVolumeField = value;
            }
        }

    }
}