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