In This Topic
    SearchResponse.vb
    In This Topic
    Option Explicit On
    Option Strict On
    
    Imports System
    Imports System.Xml
    
    '**********************************************************************************************
    '* Copyright (c) 2001-2023 Liquid Technologies Limited. All rights reserved.
    '* See www.liquid-technologies.com for product details.
    '*
    '* Please see products End User License Agreement for distribution permissions.
    '*
    '* WARNING: THIS FILE IS GENERATED
    '* Changes made outside of ##HAND_CODED_BLOCK_START blocks will be overwritten
    '*
    '* Generation  :  by Liquid XML Data Binder 19.0.14.11049
    '* Using Schema: MusicStore.xsd
    '**********************************************************************************************
    
    Namespace MusicStoreLib
    
        ''' <summary>
        ''' This class represents the Element SearchResponse
        ''' </summary>
        <LiquidTechnologies.Runtime.XmlObjectInfo(LiquidTechnologies.Runtime.XmlObjectBase.XmlElementGroupType.Choice, _
                                                        LiquidTechnologies.Runtime.XmlObjectBase.XmlElementType.Element, _
                                                        "SearchResponse", "", true, false, false)> _
        Public Partial Class SearchResponse
            Inherits MusicStoreLib.XmlCommonBase
    
            #Region "Constructors"
            ''' <summary>
            '''    Constructor for SearchResponse
            ''' </summary>
            ''' <remarks>
            '''    The class is created with all the mandatory fields populated with the
            '''    default data. 
            '''    All Collection object are created.
            '''    However any 1-n relationships (these are represented as collections) are
            '''    empty. To comply with the schema these must be populated before the xml
            '''    obtained from ToXml is valid against the schema MusicStore.xsd
            ''' </remarks>
            Public Sub New()
                _elementName = "SearchResponse"
                Init()
            End Sub
            
            Public Sub New(ByVal elementName As String)
                _elementName = elementName
                Init()
            End Sub
            #End Region
    
            #Region "Initialization methods for the class"
            ''' <summary>
            '''    Initializes the class
            ''' </summary>
            ''' <remarks>
            '''    This creates all the mandatory fields (populated with the default data) 
            '''    All Collection object are created.
            '''    However any 1-n relationships (these are represented as collections) are
            '''    empty. To comply with the schema these must be populated before the xml
            '''    obtained from ToXml is valid against the schema MusicStore.xsd.
            ''' </remarks>
            Protected Overrides Sub Init()
                MusicStoreLib.Registration.iRegistrationIndicator = 0 ' causes registration to take place
                _Result = Nothing
                _Error = Nothing
    
                _validElement = ""
    ' ##HAND_CODED_BLOCK_START ID="Additional Inits"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
    
    ' Add Additional initialization code here...
    
    ' ##HAND_CODED_BLOCK_END ID="Additional Inits"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
            End Sub
    
            Protected Sub ClearChoice(ByVal selectedElement As String)
                _Result = Nothing
                _Error = Nothing
                _validElement = selectedElement
            End Sub
            #End Region
    
            #Region "ICloneable Interface"
            ''' <summary>
            '''    Allows the class to be copied
            ''' </summary>
            ''' <remarks>
            '''    Performs a 'deep copy' of all the data in the class (and its children)
            ''' </remarks>
            Public Overrides Function Clone() As Object
                Dim newObject As New MusicStoreLib.SearchResponse(_elementName)
                Dim o As Object
                newObject._Result = Nothing
                if Not _Result Is Nothing Then
                    newObject._Result = CType(_Result.Clone(), MusicStoreLib.Result)
                End If
                newObject._Error = Nothing
                if Not _Error Is Nothing Then
                    newObject._Error = CType(_Error.Clone(), MusicStoreLib.Error_)
                End If
    
                o = Nothing
    
                newObject._validElement = _validElement
    ' ##HAND_CODED_BLOCK_START ID="Additional clone"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
    
    ' Add Additional clone code here...
    
    ' ##HAND_CODED_BLOCK_END ID="Additional clone"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
    
                Return newObject
            End Function
            #End Region
    
            #Region "Member variables"
    
            Protected Overrides Readonly Property TargetNamespace() As String
                Get 
                    Return ""
                End Get
            End Property
    
            #Region "Attribute - Result"
            ''' <summary>
            ''' Represents an optional Element in the XML document
            ''' </summary>
            ''' <remarks>
            ''' This property is represented as an Element in the XML.
            ''' It is optional, initially it is Nothing.
            ''' Only one Element within this class may be set at a time, setting this property when another element is already set will raise an exception. setting this property to Nothing will allow another element to be selected
            ''' </remarks>
            <LiquidTechnologies.Runtime.ElementInfoChoiceClsOpt("Result", "", LiquidTechnologies.Runtime.XmlObjectBase.XmlElementType.Element, GetType(MusicStoreLib.Result))> _
            Public Property Result() As MusicStoreLib.Result
                Get 
                    Return _Result
                End Get
                Set(ByVal value As MusicStoreLib.Result)
                    ' The class represents a choice, so prevent more than one element from being selected
                    If value Is Nothing Then ClearChoice("") Else ClearChoice("Result") ' remove selection
                    If value Is Nothing Then
                        _Result = Nothing
                    Else
                        SetElementName(value, "Result")
                        _Result = value 
                    End If
                End Set
            End Property
            Protected _Result As MusicStoreLib.Result
            
            #End Region
        
            #Region "Attribute - Error"
            ''' <summary>
            ''' Represents an optional Element in the XML document
            ''' </summary>
            ''' <remarks>
            ''' This property is represented as an Element in the XML.
            ''' It is optional, initially it is Nothing.
            ''' Only one Element within this class may be set at a time, setting this property when another element is already set will raise an exception. setting this property to Nothing will allow another element to be selected
            ''' </remarks>
            <LiquidTechnologies.Runtime.ElementInfoChoiceClsOpt("Error", "", LiquidTechnologies.Runtime.XmlObjectBase.XmlElementType.Element, GetType(MusicStoreLib.Error_))> _
            Public Property Error_() As MusicStoreLib.Error_
                Get 
                    Return _Error
                End Get
                Set(ByVal value As MusicStoreLib.Error_)
                    ' The class represents a choice, so prevent more than one element from being selected
                    If value Is Nothing Then ClearChoice("") Else ClearChoice("Error_") ' remove selection
                    If value Is Nothing Then
                        _Error = Nothing
                    Else
                        SetElementName(value, "Error")
                        _Error = value 
                    End If
                End Set
            End Property
            Protected _Error As MusicStoreLib.Error_
            
            #End Region
        
            Public Readonly Property ChoiceSelectedElement() As String
                Get 
                    Return _validElement 
                End Get
            End Property
            Protected _validElement As String
            #Region "Attribute - Namespace"
            Public Overrides Readonly Property [Namespace]() As String
                Get 
                    Return ""
                End Get
            End Property
            #End Region
    
            #Region "Attribute - GetBase"
            Public Overrides Function GetBase() As LiquidTechnologies.Runtime.XmlObjectBase
                Return Me
            End Function
            #End Region
            #End Region
    
    
    ' ##HAND_CODED_BLOCK_START ID="Additional Methods"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
    
    ' Add Additional Methods and members here...
    
    ' ##HAND_CODED_BLOCK_END ID="Additional Methods"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
        End Class
    End Namespace