1 package cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages;
2
3
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
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 public class TeamScoreLocalImpl
28 extends
29 TeamScoreLocal
30 {
31
32
33
34
35
36
37 public TeamScoreLocalImpl()
38 {
39 }
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 public TeamScoreLocalImpl(
65 UnrealId Id
66 ) {
67
68 this.Id = Id;
69
70 }
71
72
73
74
75
76
77 public TeamScoreLocalImpl(TeamScore original) {
78
79 this.Id = original.getId()
80 ;
81
82 this.SimTime = original.getSimTime();
83 }
84
85
86
87
88
89
90 public TeamScoreLocalImpl(TeamScoreLocalImpl original) {
91
92 this.Id = original.getId()
93 ;
94
95 this.SimTime = original.getSimTime();
96 }
97
98
99
100
101
102
103 public TeamScoreLocalImpl(TeamScoreLocal original) {
104
105 this.Id = original.getId()
106 ;
107
108 }
109
110
111 @Override
112 public void setSimTime(long SimTime) {
113 super.setSimTime(SimTime);
114 }
115
116 @Override
117 public
118 TeamScoreLocalImpl clone() {
119 return new
120 TeamScoreLocalImpl(this);
121 }
122
123
124
125
126
127
128 protected
129 UnrealId Id =
130 null;
131
132
133
134
135 public UnrealId getId()
136 {
137 return Id;
138 }
139
140
141
142
143
144 public TeamScoreLocalImpl getLocal() {
145 return this;
146 }
147 public ISharedWorldObject getShared() {
148 throw new UnsupportedOperationException("Could not return LOCAL as SHARED");
149 }
150 public IStaticWorldObject getStatic() {
151 throw new UnsupportedOperationException("Could not return LOCAL as STATIC");
152 }
153
154 public static class TeamScoreLocalUpdate
155 implements ILocalWorldObjectUpdatedEvent, IGBWorldObjectEvent
156 {
157 protected long time;
158
159 protected TeamScoreLocal data = null;
160
161 public TeamScoreLocalUpdate
162 (TeamScoreLocal moverLocal, long time)
163 {
164 this.data = moverLocal;
165 this.time = time;
166 }
167
168 @Override
169 public IWorldObjectUpdateResult<ILocalWorldObject> update(
170 ILocalWorldObject object)
171 {
172 if ( object == null)
173 {
174 data = new TeamScoreLocalImpl(data);
175 return new IWorldObjectUpdateResult.WorldObjectUpdateResult<ILocalWorldObject>(IWorldObjectUpdateResult.Result.CREATED, data);
176 }
177 if ( object instanceof TeamScoreLocalImpl )
178 {
179 TeamScoreLocalImpl toUpdate = (TeamScoreLocalImpl)object;
180
181 boolean updated = false;
182
183
184
185
186 data = toUpdate;
187
188 if ( updated )
189 {
190 toUpdate.SimTime = this.time;
191 return new IWorldObjectUpdateResult.WorldObjectUpdateResult<ILocalWorldObject>(IWorldObjectUpdateResult.Result.UPDATED, data);
192 }
193
194 return new IWorldObjectUpdateResult.WorldObjectUpdateResult<ILocalWorldObject>(IWorldObjectUpdateResult.Result.SAME, data);
195 }
196 throw new PogamutException("Unsupported object type for update. Expected TeamScoreLocalImpl for object " + object.getId() +", not object of class " + object.getClass().getSimpleName() + ".", this);
197 }
198
199
200
201
202 @Override
203 public long getSimTime() {
204 return this.time;
205 }
206
207 @Override
208 public IWorldObject getObject() {
209 return data;
210 }
211
212 @Override
213 public WorldObjectId getId() {
214 return data.getId();
215 }
216
217 }
218
219
220 public String toString() {
221 return
222 super.toString() + "[" +
223
224 "Id = " + String.valueOf(getId()
225 ) + " | " +
226
227 "]";
228 }
229
230
231 public String toHtmlString() {
232 return super.toString() + "[<br/>" +
233
234 "<b>Id</b> = " + String.valueOf(getId()
235 ) + " <br/> " +
236
237 "<br/>]";
238 }
239
240
241
242
243
244
245
246
247
248
249 }
250