View Javadoc

1   package cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages;
2    		
3    		// --- IMPORTS FROM /messages/settings/javasettings/javaimport BEGIN
4   			import java.util.*;import javax.vecmath.*;import cz.cuni.amis.pogamut.base.communication.messages.*;import cz.cuni.amis.pogamut.base.communication.worldview.*;import cz.cuni.amis.pogamut.base.communication.worldview.event.*;import cz.cuni.amis.pogamut.base.communication.worldview.object.*;import cz.cuni.amis.pogamut.multi.communication.worldview.object.*;import cz.cuni.amis.pogamut.base.communication.translator.event.*;import cz.cuni.amis.pogamut.multi.communication.translator.event.*;import cz.cuni.amis.pogamut.base3d.worldview.object.*;import cz.cuni.amis.pogamut.base3d.worldview.object.event.*;import cz.cuni.amis.pogamut.ut2004.communication.messages.*;import cz.cuni.amis.pogamut.ut2004.communication.worldview.objects.*;import cz.cuni.amis.pogamut.ut2004multi.communication.worldview.objects.*;import cz.cuni.amis.pogamut.ut2004.communication.translator.itemdescriptor.*;import cz.cuni.amis.pogamut.ut2004.communication.messages.ItemType.Category;import cz.cuni.amis.pogamut.unreal.communication.messages.UnrealId;import cz.cuni.amis.utils.exception.*;import cz.cuni.amis.pogamut.base.communication.translator.event.IWorldObjectUpdateResult.Result;import cz.cuni.amis.utils.SafeEquals;import cz.cuni.amis.pogamut.base.agent.*;import cz.cuni.amis.pogamut.multi.agent.*;import cz.cuni.amis.pogamut.multi.communication.worldview.property.*;import cz.cuni.amis.pogamut.ut2004multi.communication.worldview.property.*;import cz.cuni.amis.utils.token.*;import cz.cuni.amis.utils.*;
5   		// --- IMPORTS FROM /messages/settings/javasettings/javaimport END
6   		
7   		
8   		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name='all'] BEGIN
9   				
10  		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name='all'] END
11  		
12  		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name=event]+classtype[@name=impl] BEGIN
13  		
14  		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name=event]+classtype[@name=impl] END
15      
16   		/**
17           *  
18           			Definition of the event HELLO_BOT.
19           		
20           *
21           *  <p></p><p></p>
22           *  Complete message documentation:               
23           *  
24  		Asynchronous message. Sent for bot connection. First message
25  		from UT2004, part of handshake.
26  	
27           */
28   	public class HelloBotHandshake 
29    				extends InfoMessage
30      			implements IWorldEvent, IWorldChangeEvent
31      			
32  	    {
33   	
34      	/** Example how the message looks like - used during parser tests. */
35      	public static final String PROTOTYPE =
36      		"HELLO_BOT {ServerFull False} ";
37      
38      	
39      	
40      	/**
41      	 * Parameter-less contructor for the message.
42      	 */
43  		public HelloBotHandshake()
44  		{
45  		}
46  	
47      	
48      	
49      	
50      	/**
51  		 * Creates new instance of the message HelloBotHandshake.
52  		 * 
53  		Asynchronous message. Sent for bot connection. First message
54  		from UT2004, part of handshake.
55  	
56  		 * Corresponding GameBots message
57  		 *   
58  		 *   is
59  		 *   HELLO_BOT.
60  		 * 
61   	  	 * 
62  		 *   
63  		 *     @param ServerFull 
64  			If it is true, connection will be terminated afterwards.
65  		
66  		 *   
67  		 * 
68  		 */
69  		public HelloBotHandshake(
70  			boolean ServerFull
71  		) {
72  			
73  					this.ServerFull = ServerFull;
74  				
75  		}
76      
77      	/**
78  		 * Cloning constructor from the full message.
79  		 *
80  		 * @param original
81  		 */
82  		public HelloBotHandshake(HelloBotHandshake original) {		
83  			
84  					this.ServerFull = original.isServerFull()
85   	;
86  				
87  			this.SimTime = original.getSimTime();			
88  		}
89  		
90  	   		
91  			protected long SimTime;
92  				
93  			/**
94  			 * Simulation time in MILLI SECONDS !!!
95  			 */	
96  			@Override
97  			public long getSimTime() {
98  				return SimTime;
99  			}
100 						
101 			/**
102 			 * Used by Yylex to slip correct time of the object or programmatically.
103 			 */
104 			protected void setSimTime(long SimTime) {
105 				this.SimTime = SimTime;
106 			}
107 	   	
108     	
109 	    /**
110          * 
111 			If it is true, connection will be terminated afterwards.
112 		 
113          */
114         protected
115          boolean ServerFull =
116        	false;
117 	
118  		/**
119          * 
120 			If it is true, connection will be terminated afterwards.
121 		 
122          */
123         public  boolean isServerFull()
124  	 {
125     					return ServerFull;
126     				}
127     			
128  		
129  	    public String toString() {
130             return
131             	super.toString() + "[" +
132             	
133 		              			"ServerFull = " + String.valueOf(isServerFull()
134  	) + " | " + 
135 		              		
136 				"]";           		
137         }
138  	
139  		
140  		public String toHtmlString() {
141  			return super.toString() + "[<br/>" +
142             	
143 		              			"<b>ServerFull</b> = " + String.valueOf(isServerFull()
144  	) + " <br/> " + 
145 		              		
146 				"<br/>]";     
147 		}
148  	 
149  	    public String toJsonLiteral() {
150             return "HelloBotHandshake(null, "
151             		
152                    + ")";
153         }
154  	
155  		
156  		// --- Extra Java from XML BEGIN (extra/code/java/javapart/classcategory[@name=all]) ---
157         	
158 		// --- Extra Java from XML END (extra/code/java/javapart/classcategory[@name=all]) ---
159 		
160 	    // --- Extra Java from XML BEGIN (extra/code/java/javapart/classcategory[@name=event+classtype[@name=impl]) ---
161 	        
162 	    // --- Extra Java from XML END (extra/code/java/javapart/classcategory[@name=event+classtype[@name=impl]) ---        	            	
163  	
164 		}
165