1 package cz.cuni.amis.pogamut.ut2004multi.communication.worldview.objects; 2 3 import cz.cuni.amis.pogamut.base.communication.worldview.object.WorldObjectId; 4 import cz.cuni.amis.pogamut.multi.agent.ITeamId; 5 import cz.cuni.amis.pogamut.multi.communication.translator.event.ISharedWorldObjectUpdatedEvent; 6 import cz.cuni.amis.pogamut.multi.communication.worldview.object.ISharedWorldObject; 7 8 public abstract class TestSharedViewableObject implements ISharedWorldObject { 9 10 protected WorldObjectId objectId; 11 protected long simTime; 12 @Override 13 public abstract TestSharedViewableObject clone(); 14 15 protected TestSharedViewableObject() 16 { 17 objectId = null; 18 simTime = 0; 19 } 20 21 protected TestSharedViewableObject(WorldObjectId objectId, long simTime) 22 { 23 this.simTime = simTime; 24 this.objectId = objectId; 25 } 26 27 public abstract String getSharedString(); 28 public abstract long getSharedLong(); 29 30 @Override 31 public WorldObjectId getId() { 32 return this.objectId; 33 } 34 35 @Override 36 public long getSimTime() { 37 return this.simTime; 38 } 39 40 @Override 41 public Class getCompositeClass() { 42 return TestCompositeViewableObject.class; 43 } 44 45 46 public ISharedWorldObjectUpdatedEvent createUpdateEvent(long time, 47 ITeamId teamId) { 48 return new TestSharedViewableObjectImpl.TestSharedViewableObjectUpdatedEvent(this, time, teamId); 49 } 50 }