cz.cuni.amis.pogamut.udk.factory.guice.remoteagent
Class UDKObserverModule<PARAMS extends UDKAgentParameters>

Package class diagram package UDKObserverModule
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.udk.factory.guice.remoteagent.UDKCommunicationModule<PARAMS>
                      extended by cz.cuni.amis.pogamut.udk.factory.guice.remoteagent.UDKObserverModule<PARAMS>
All Implemented Interfaces:
com.google.inject.Module

public class UDKObserverModule<PARAMS extends UDKAgentParameters>
extends UDKCommunicationModule<PARAMS>

Module extending UDKCommunicationModule for the purpose of UDKObserver instantiation.

Introduces worldViewDependenciesProvider.

Newly binded classes:

Mapped class Target Description
IWorldMessageTranslator -> ObserverFSM Protocol-validating translator of InfoMessages of GameBotsUDK.
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-> UDKLockableWorldView Binds world view with concrete implementation.
UDKLockableWorldView dependencies -> worldViewDependenciesProvider
IAgent -> IUDKObserver
IUDKObserver -> UDKObserver 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:
UDKCommunicationModule, 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.udk.factory.guice.remoteagent.UDKCommunicationModule
connectionDependenciesProvider
 
Constructor Summary
UDKObserverModule()
           
 
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

UDKObserverModule

public UDKObserverModule()
Method Detail

prepareNewAgent

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

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

Overrides:
prepareNewAgent in class UDKCommunicationModule<PARAMS extends UDKAgentParameters>

configureModules

protected void configureModules()
Overrides:
configureModules in class UDKCommunicationModule<PARAMS extends UDKAgentParameters>


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