cz.cuni.amis.pogamut.ut2004.factory.guice.remoteagent
Class UT2004ObserverModule<PARAMS extends UT2004AgentParameters>

Package class diagram package UT2004ObserverModule
java.lang.Object
  extended by com.google.inject.AbstractModule
      extended by cz.cuni.amis.pogamut.base.factory.guice.GuiceAgentModule<PARAMS>
          extended by cz.cuni.amis.pogamut.base.factory.guice.GuiceCommunicationModule<PARAMS>
              extended by cz.cuni.amis.pogamut.base.factory.guice.GuiceRemoteAgentModule<PARAMS>
                  extended by cz.cuni.amis.pogamut.ut2004.factory.guice.remoteagent.UT2004CommunicationModule<PARAMS>
                      extended by cz.cuni.amis.pogamut.ut2004.factory.guice.remoteagent.UT2004ObserverModule<PARAMS>
All Implemented Interfaces:
com.google.inject.Module
Direct Known Subclasses:
UT2004AnalyzerFullObserverModule, UT2004AnalyzerObserverModule

public class UT2004ObserverModule<PARAMS extends UT2004AgentParameters>
extends UT2004CommunicationModule<PARAMS>

Module extending UT2004CommunicationModule for the purpose of UT2004Observer instantiation.

Introduces worldViewDependenciesProvider.

Newly binded classes:

Mapped class Target Description
IWorldMessageTranslator -> ObserverFSM Protocol-validating translator of InfoMessages of GameBots2004.
IWorldView -> IVisionWorldView Binds world view as vision world view.
IVisionWorldView -> ILockableVisionWorldViewBinds vision world view as lockable one.
ILockableWorldView -> ILockableVisionWorldViewBinds lockable world view as vision world view.
ILockableVisionWorldView-> UT2004LockableWorldView Binds world view with concrete implementation.
UT2004LockableWorldView dependencies -> worldViewDependenciesProvider
IAgent -> IUT2004Observer
IUT2004Observer -> UT2004Observer Binds concrete implementation of the observer.
To have successful module the descendant must specify these missing bindings:
Mapped class Description
nothing
... but all newly introduced dependencies (by various implementors of mentioned interfaces).

... don't forget to call super.configureModules() in the subclasses ;-)

Author:
Jimmy
See Also:
UT2004CommunicationModule, GuiceRemoteAgentModule, GuiceAgentModule

Field Summary
protected  AdaptableProvider<ComponentDependencies> worldViewDependenciesProvider
          Dependency provider for the world view, so the world view know when to start.
 
Fields inherited from class cz.cuni.amis.pogamut.ut2004.factory.guice.remoteagent.UT2004CommunicationModule
connectionDependenciesProvider
 
Constructor Summary
UT2004ObserverModule()
           
 
Method Summary
protected  void configureModules()
           
 void prepareNewAgent(PARAMS agentParameters)
          Binds runtime dependencies to the module/Injector.
 
Methods inherited from class cz.cuni.amis.pogamut.base.factory.guice.GuiceRemoteAgentModule
getAddressProvider
 
Methods inherited from class cz.cuni.amis.pogamut.base.factory.guice.GuiceAgentModule
addModule, configure, createAgentScope, createAgentTeamScope, getAgentIdProvider, getAgentParamsProvider, getAgentScope, getAgentTeamScope
 
Methods inherited from class com.google.inject.AbstractModule
addError, addError, addError, bind, bind, bind, bindConstant, binder, bindInterceptor, bindListener, bindScope, configure, convertToTypes, currentStage, getMembersInjector, getMembersInjector, getProvider, getProvider, install, requestInjection, requestStaticInjection, requireBinding, requireBinding
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

worldViewDependenciesProvider

protected AdaptableProvider<ComponentDependencies> worldViewDependenciesProvider
Dependency provider for the world view, so the world view know when to start.

Constructor Detail

UT2004ObserverModule

public UT2004ObserverModule()
Method Detail

prepareNewAgent

public void prepareNewAgent(PARAMS agentParameters)
Description copied from class: UT2004CommunicationModule
Binds runtime dependencies to the module/Injector.

Must be called before the new agent is instantiated with Injector.

Overrides:
prepareNewAgent in class UT2004CommunicationModule<PARAMS extends UT2004AgentParameters>

configureModules

protected void configureModules()
Overrides:
configureModules in class UT2004CommunicationModule<PARAMS extends UT2004AgentParameters>


Copyright © 2014 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.