View Javadoc

1   package cz.cuni.amis.pogamut.ut2004.communication.parser;
2   
3   
4   import com.google.inject.Inject;
5   import com.google.inject.internal.Nullable;
6   
7   import cz.cuni.amis.pogamut.base.communication.connection.IWorldReaderProvider;
8   import cz.cuni.amis.pogamut.base.communication.exception.CommunicationException;
9   import cz.cuni.amis.pogamut.base.communication.parser.impl.yylex.IYylexObserver;
10  import cz.cuni.amis.pogamut.base.communication.parser.impl.yylex.YylexParser;
11  import cz.cuni.amis.pogamut.base.component.bus.IComponentBus;
12  import cz.cuni.amis.pogamut.base.utils.guice.AgentScoped;
13  import cz.cuni.amis.pogamut.base.utils.logging.IAgentLogger;
14  import cz.cuni.amis.pogamut.multi.agent.ITeamId;
15  import cz.cuni.amis.pogamut.multi.agent.impl.TeamedAgentId;
16  import cz.cuni.amis.pogamut.ut2004.communication.messages.UnrealIdTranslator;
17  import cz.cuni.amis.pogamut.ut2004.communication.translator.itemdescriptor.ItemTranslator;
18  import cz.cuni.amis.utils.NullCheck;
19  
20  @AgentScoped
21  public class UT2004Parser extends YylexParser {
22  	
23  	@Inject
24  	public UT2004Parser(UnrealIdTranslator unrealIdTranslator, ItemTranslator itemTranslator,
25  					    IWorldReaderProvider readerProvider, IUT2004Yylex yylex, @Nullable IYylexObserver yylexObserver, 
26  			            IComponentBus bus, IAgentLogger logger) throws CommunicationException {
27  		super(readerProvider, yylex, yylexObserver, bus, logger);
28  		
29  		NullCheck.check(unrealIdTranslator, "unrealIdTranslator");
30  		
31  		yylex.setTranslator(unrealIdTranslator);
32  		
33  		NullCheck.check(itemTranslator, "itemTranslator");
34  		
35  		yylex.setItemTranslator(itemTranslator);
36  		
37  		if (logger.getAgentId() instanceof TeamedAgentId) {
38  			yylex.setTeamId(((TeamedAgentId)logger.getAgentId()).getTeamId());
39  		}
40  	}
41  	
42  //	@Override
43  //	public InfoMessage parse() throws ParserException {
44  //		log.warning("going to parse message");
45  //		InfoMessage msg = super.parse();
46  //		log.warning("Message: " + msg);
47  //		return msg;
48  //	}
49  
50  }