
package pokerth_protocol;
//
// This file was generated by the BinaryNotes compiler.
// See http://bnotes.sourceforge.net 
// Any modifications to this file will be lost upon recompilation of the source ASN.1. 
//

import org.bn.*;
import org.bn.annotations.*;
import org.bn.annotations.constraints.*;
import org.bn.coders.*;
import org.bn.types.*;




    @ASN1PreparedElement
    @ASN1Sequence ( name = "JoinGameFailed", isSet = false )
    public class JoinGameFailed implements IASN1PreparedElement {
            

    @ASN1PreparedElement
    @ASN1Enum (
        name = "JoinGameFailureReasonEnumType"
    )
    public static class JoinGameFailureReasonEnumType implements IASN1PreparedElement {        
        public enum EnumType {
            
            @ASN1EnumItem ( name = "invalidGame", hasTag = true , tag = 1 )
            invalidGame , 
            @ASN1EnumItem ( name = "gameIsFull", hasTag = true , tag = 2 )
            gameIsFull , 
            @ASN1EnumItem ( name = "gameIsRunning", hasTag = true , tag = 3 )
            gameIsRunning , 
            @ASN1EnumItem ( name = "invalidPassword", hasTag = true , tag = 4 )
            invalidPassword , 
            @ASN1EnumItem ( name = "notAllowedAsGuest", hasTag = true , tag = 5 )
            notAllowedAsGuest , 
            @ASN1EnumItem ( name = "notInvited", hasTag = true , tag = 6 )
            notInvited , 
            @ASN1EnumItem ( name = "gameNameInUse", hasTag = true , tag = 7 )
            gameNameInUse , 
            @ASN1EnumItem ( name = "badGameName", hasTag = true , tag = 8 )
            badGameName , 
            @ASN1EnumItem ( name = "invalidSettings", hasTag = true , tag = 9 )
            invalidSettings , 
            @ASN1EnumItem ( name = "ipAddressBlocked", hasTag = true , tag = 10 )
            ipAddressBlocked , 
            @ASN1EnumItem ( name = "rejoinFailed", hasTag = true , tag = 11 )
            rejoinFailed , 
        }
        
        private EnumType value;
        private Integer integerForm;
        
        public EnumType getValue() {
            return this.value;
        }
        
        public void setValue(EnumType value) {
            this.value = value;
        }
        
        public Integer getIntegerForm() {
            return integerForm;
        }
        
        public void setIntegerForm(Integer value) {
            integerForm = value;
        }

	    public void initWithDefaults() {
	    }

        private static IASN1PreparedElementData preparedData = CoderFactory.getInstance().newPreparedElementData(JoinGameFailureReasonEnumType.class);
        public IASN1PreparedElementData getPreparedData() {
            return preparedData;
        }

    }
                
        @ASN1Element ( name = "joinGameFailureReason", isOptional =  false , hasTag =  false  , hasDefaultValue =  false  )
    
	private JoinGameFailureReasonEnumType joinGameFailureReason = null;
                
  
        
        public JoinGameFailureReasonEnumType getJoinGameFailureReason () {
            return this.joinGameFailureReason;
        }

        

        public void setJoinGameFailureReason (JoinGameFailureReasonEnumType value) {
            this.joinGameFailureReason = value;
        }
        
  
                    
        
        public void initWithDefaults() {
            
        }

        private static IASN1PreparedElementData preparedData = CoderFactory.getInstance().newPreparedElementData(JoinGameFailed.class);
        public IASN1PreparedElementData getPreparedData() {
            return preparedData;
        }

            
    }
            