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=static]+classtype[@name=abstract] BEGIN
13  		
14  		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name=static]+classtype[@name=abstract] END
15      
16   		/**
17           *  
18              				Abstract definition of the static part of the GameBots2004 message CONFCH.  
19              			
20           *
21           *  <p></p><p></p>
22           *  Complete message documentation:               
23           *  
24  		Asynchronous message. Message sent when the bot configuration
25  		changed - each agent has a lot of parameters affecting his state
26  		in the environment. See each property for the details.
27  	
28           */
29   	public abstract class ConfigChangeStatic 
30    						extends InfoMessage
31    						implements IStaticWorldObject
32    						
33  	    {
34   	
35      	
36      	
37      	/**
38      	 * Parameter-less contructor for the message.
39      	 */
40  		public ConfigChangeStatic()
41  		{
42  		}
43  		
44  				// abstract definition of the static-part of the message, no more constructors is needed
45  			
46  	   		
47  			protected long SimTime;
48  				
49  			/**
50  			 * Simulation time in MILLI SECONDS !!!
51  			 */	
52  			@Override
53  			public long getSimTime() {
54  				return SimTime;
55  			}
56  						
57  			/**
58  			 * Used by Yylex to slip correct time of the object or programmatically.
59  			 */
60  			protected void setSimTime(long SimTime) {
61  				this.SimTime = SimTime;
62  			}
63  	   	
64  	    			
65  	    				@Override
66  		    			public abstract 
67  		    			ConfigChangeStatic clone();
68  		    			
69  						@Override
70  						public Class getCompositeClass() {
71  							return ConfigChange.class;
72  						}
73  	
74  						
75  		    			
76   		/**
77           * Id of this config message. This Id is generated from BotId, string "_CONFCH" is added at the end. 
78           */
79          public abstract UnrealId getId()
80   	;
81  		    			
82   		
83   		@Override
84   		public boolean isDifferentFrom(IStaticWorldObject other)
85   		{
86   			if (other == null) //early fail
87   			{
88   				return true;
89   			}
90   			else if (other == this) //early out
91   			{
92   				return false;
93   			}
94   			else
95   			{
96   				ConfigChangeStatic obj = (ConfigChangeStatic) other;
97  
98   				
99   						if ( !(
100  	 			AdvancedEquals.equalsOrNull(this.getId()
101  	, obj.getId()
102  	)
103  	 		) )
104 						{
105 							System.out.println("!!!!!PROPERTY UPDATE ERROR!!!! on property Id on object class ConfigChangeStatic");
106 							return true;
107 						}
108  					
109  			}
110  			return false;
111  		}
112  	 
113  		
114  	    public String toString() {
115             return
116             	super.toString() + "[" +
117             	
118 		              			"Id = " + String.valueOf(getId()
119  	) + " | " + 
120 		              		
121 				"]";           		
122         }
123  	
124  		
125  		public String toHtmlString() {
126  			return super.toString() + "[<br/>" +
127             	
128 		              			"<b>Id</b> = " + String.valueOf(getId()
129  	) + " <br/> " + 
130 		              		
131 				"<br/>]";     
132 		}
133  	
134  		
135  		// --- Extra Java from XML BEGIN (extra/code/java/javapart/classcategory[@name=all]) ---
136         	
137 		// --- Extra Java from XML END (extra/code/java/javapart/classcategory[@name=all]) ---
138 		
139 	    // --- Extra Java from XML BEGIN (extra/code/java/javapart/classcategory[@name=static+classtype[@name=abstract]) ---
140 	        
141 	    // --- Extra Java from XML END (extra/code/java/javapart/classcategory[@name=static+classtype[@name=abstract]) ---        	            	
142  	
143 		}
144