public class MultipleUDKBotRunner<BOT extends UDKBot,PARAMS extends UDKAgentParameters,MODULE extends UDKBotModule> extends MultipleAgentRunner<BOT,PARAMS,MODULE>
Designed especially for the usage inside NetBeans projects.
NOTE: by default, all bots get paused after they start and they are resumed after all bots are present in UDK. To
change this behaviour pass 'false' through MultipleAgentRunner.setPausing(boolean).
NOTE: It's not even meant to be instantiated twice for two different batch of bots and consequently executed in two different threads! Single-purpose class only ;-)
NOTE: It might be very interesting for you to check out the source of method MultipleUDKBotRunner#startAgent() to
see how the agent should be instantiated via UDKBotFactory using UDKBotModule.
| Modifier and Type | Field and Description |
|---|---|
protected String |
host
Default host where the instances are going to be connected as defaults, see
IAgentParameters.assignDefaults(IAgentParameters). |
protected String |
name
Default name that will serve as a basis for
IAgentId, see IAgentParameters.assignDefaults(IAgentParameters). |
protected int |
port
Default port where the instances are going to be connected as defaults, see
IAgentParameters.assignDefaults(IAgentParameters). |
agents, consoleLogging, defaultLogLevel, killed, latch, listener, log, main, mutex| Constructor and Description |
|---|
MultipleUDKBotRunner(String name)
Construct the runner + specify the default name, host:port will be taken from the Pogamut platform properties.
|
MultipleUDKBotRunner(String name,
String host,
int port)
Construct the runner + specify all defaults.
|
| Modifier and Type | Method and Description |
|---|---|
String |
getHost()
Returns host, where newly launched bots will be connected to.
|
String |
getName()
Returns name that is going to be used to form new
IAgentId of the bots. |
int |
getPort()
Returns port, where newly launched bots will be connected to.
|
protected IAgentFactory |
newAgentFactory(MODULE agentModule)
Uses
UDKBotFactory for agent construction. |
protected IAgentParameters |
newDefaultAgentParameters()
Provides default parameters that is,
IAgentId using name and SocketConnectionAddress
using host and port. |
protected void |
preStartHook(BOT agent)
We're setting the logging level to
Level.WARNING here so the bot won't log much. |
MultipleUDKBotRunner<BOT,PARAMS,MODULE> |
setHost(String host)
Sets host, where newly launched bots will be connected to.
|
MultipleUDKBotRunner<BOT,PARAMS,MODULE> |
setName(String name)
Sets name that is going to be used to form new
IAgentId of the bots. |
MultipleUDKBotRunner<BOT,PARAMS,MODULE> |
setPort(int port)
Sets port, where newly launched bots will be connected to.
|
List<BOT> |
startAgents(IAgentDescriptor<PARAMS,MODULE>... agentDescriptors) |
createAgentWithParams, getAgentCount, getLog, isMain, isPausing, killAgent, killAgents, newAgentId, postStartedHook, postStartHook, preInitHook, preResumeHook, setConsoleLogging, setLog, setLogLevel, setMain, setPausing, startAgent, startAgentsMain, startAgentsMain, startAgentsStandard, startAgentsStandardprotected String host
IAgentParameters.assignDefaults(IAgentParameters).protected int port
IAgentParameters.assignDefaults(IAgentParameters).protected String name
IAgentId, see IAgentParameters.assignDefaults(IAgentParameters).public MultipleUDKBotRunner(String name, String host, int port)
name - default name that serve as a basis for IAgentIdhost - default host where the instances are going to be connectedport - default port where the instances are going to be connectedpublic MultipleUDKBotRunner(String name)
public String getName()
IAgentId of the bots.public MultipleUDKBotRunner<BOT,PARAMS,MODULE> setName(String name)
IAgentId of the bots.
If null is passed, generic "UDKBot" will be set.
name - name used for the newly started botspublic String getHost()
public MultipleUDKBotRunner<BOT,PARAMS,MODULE> setHost(String host)
host - host running GBUDK server (can't be null)public int getPort()
public MultipleUDKBotRunner<BOT,PARAMS,MODULE> setPort(int port)
port - at the host where GBUDK server is listening for bot connectionsprotected void preStartHook(BOT agent) throws cz.cuni.amis.utils.exception.PogamutException
Level.WARNING here so the bot won't log much.preStartHook in class MultipleAgentRunner<BOT extends UDKBot,PARAMS extends UDKAgentParameters,MODULE extends UDKBotModule>cz.cuni.amis.utils.exception.PogamutExceptionprotected IAgentParameters newDefaultAgentParameters()
IAgentId using name and SocketConnectionAddress
using host and port.newDefaultAgentParameters in class MultipleAgentRunner<BOT extends UDKBot,PARAMS extends UDKAgentParameters,MODULE extends UDKBotModule>protected IAgentFactory newAgentFactory(MODULE agentModule)
UDKBotFactory for agent construction.newAgentFactory in class MultipleAgentRunner<BOT extends UDKBot,PARAMS extends UDKAgentParameters,MODULE extends UDKBotModule>public List<BOT> startAgents(IAgentDescriptor<PARAMS,MODULE>... agentDescriptors)
startAgents in interface IMultipleAgentRunner<BOT extends UDKBot,PARAMS extends UDKAgentParameters,MODULE extends UDKBotModule>startAgents in class MultipleAgentRunner<BOT extends UDKBot,PARAMS extends UDKAgentParameters,MODULE extends UDKBotModule>Copyright © 2012 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.