
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
    @ASN1BoxedType ( name = "StartKickPetitionMessage" )
    public class StartKickPetitionMessage implements IASN1PreparedElement {
                
        

       @ASN1PreparedElement
       @ASN1Sequence ( name = "StartKickPetitionMessage" , isSet = false )
       public static class StartKickPetitionMessageSequenceType implements IASN1PreparedElement {
                
        @ASN1Element ( name = "gameId", isOptional =  false , hasTag =  false  , hasDefaultValue =  false  )
    
	private NonZeroId gameId = null;
                
  
        @ASN1Element ( name = "petitionId", isOptional =  false , hasTag =  false  , hasDefaultValue =  false  )
    
	private NonZeroId petitionId = null;
                
  
        @ASN1Element ( name = "proposingPlayerId", isOptional =  false , hasTag =  false  , hasDefaultValue =  false  )
    
	private NonZeroId proposingPlayerId = null;
                
  
        @ASN1Element ( name = "kickPlayerId", isOptional =  false , hasTag =  false  , hasDefaultValue =  false  )
    
	private NonZeroId kickPlayerId = null;
                
  @ASN1Integer( name = "" )
    @ASN1ValueRangeConstraint ( 
		
		min = 1L, 
		
		max = 120L 
		
	   )
	   
        @ASN1Element ( name = "kickTimeoutSec", isOptional =  false , hasTag =  false  , hasDefaultValue =  false  )
    
	private Integer kickTimeoutSec = null;
                
  @ASN1Integer( name = "" )
    @ASN1ValueRangeConstraint ( 
		
		min = 1L, 
		
		max = 9L 
		
	   )
	   
        @ASN1Element ( name = "numVotesNeededToKick", isOptional =  false , hasTag =  false  , hasDefaultValue =  false  )
    
	private Integer numVotesNeededToKick = null;
                
  
        
        public NonZeroId getGameId () {
            return this.gameId;
        }

        

        public void setGameId (NonZeroId value) {
            this.gameId = value;
        }
        
  
        
        public NonZeroId getPetitionId () {
            return this.petitionId;
        }

        

        public void setPetitionId (NonZeroId value) {
            this.petitionId = value;
        }
        
  
        
        public NonZeroId getProposingPlayerId () {
            return this.proposingPlayerId;
        }

        

        public void setProposingPlayerId (NonZeroId value) {
            this.proposingPlayerId = value;
        }
        
  
        
        public NonZeroId getKickPlayerId () {
            return this.kickPlayerId;
        }

        

        public void setKickPlayerId (NonZeroId value) {
            this.kickPlayerId = value;
        }
        
  
        
        public Integer getKickTimeoutSec () {
            return this.kickTimeoutSec;
        }

        

        public void setKickTimeoutSec (Integer value) {
            this.kickTimeoutSec = value;
        }
        
  
        
        public Integer getNumVotesNeededToKick () {
            return this.numVotesNeededToKick;
        }

        

        public void setNumVotesNeededToKick (Integer value) {
            this.numVotesNeededToKick = value;
        }
        
  
                
                
        public void initWithDefaults() {
            
        }

        public IASN1PreparedElementData getPreparedData() {
            return preparedData_StartKickPetitionMessageSequenceType;
        }

       private static IASN1PreparedElementData preparedData_StartKickPetitionMessageSequenceType = CoderFactory.getInstance().newPreparedElementData(StartKickPetitionMessageSequenceType.class);
                
       }

       
                
        @ASN1Element ( name = "StartKickPetitionMessage", isOptional =  false , hasTag =  true, tag = 66, 
        tagClass =  TagClass.Application  , hasDefaultValue =  false  )
    
        private StartKickPetitionMessageSequenceType  value;        

        
        
        public StartKickPetitionMessage () {
        }
        
        
        
        public void setValue(StartKickPetitionMessageSequenceType value) {
            this.value = value;
        }
        
        
        
        public StartKickPetitionMessageSequenceType getValue() {
            return this.value;
        }            
        

	    public void initWithDefaults() {
	    }

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

            
    }
            