public class Global
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
AGENT_REPOSITORY
Path to agent repository
|
static java.lang.String |
DOMAIN_REPOSITORY
Path to domain repository
|
static java.lang.String |
logPrefix |
static java.lang.String |
logPreset |
static java.lang.String |
PROTOCOL_REPOSITORY
Path to protocol repository
|
static java.lang.String |
SIMULATOR_REPOSITORY
Path to simulator repository
|
Constructor and Description |
---|
Global() |
Modifier and Type | Method and Description |
---|---|
static Protocol |
createProtocolInstance(ProtocolRepItem protRepItem,
AgentRepItem[] agentRepItems,
ProfileRepItem[] profileRepItems,
java.util.HashMap<AgentParameterVariable,AgentParamValue>[] agentParams) |
static <T> T |
deserializeObject(java.io.InputStream is)
Deserializes an object and casts it to the given type.
|
static java.lang.String |
getAgentDescription(Agent agent)
Gives a useful agent name.
|
static java.lang.String |
getCurrentTime() |
static java.lang.String |
getDistributedOutcomesFileName() |
static java.lang.String |
getExtensiveOutcomesFileName() |
static java.lang.String |
getFileNameWithoutExtension(java.lang.String fileName) |
static java.lang.String |
getOQMOutcomesFileName() |
static java.lang.String |
getOutcomesFileName() |
static java.lang.Class<Protocol> |
getProtocolClass(ProtocolRepItem protRepItem) |
static java.lang.String |
getTournamentOutcomeFileName() |
static Agent |
loadAgent(java.lang.String path)
Load an agent using the given classname/filename.
|
static Agent |
loadAgent(java.lang.String agentClassName,
java.lang.String variables)
load agent and then set the parameters.
|
static java.lang.Object |
loadClassFromFile(java.io.File file)
Load a file as a class.
|
static java.lang.Object |
loadObject(java.lang.String path)
Load an object from a given path.
|
static java.lang.Object |
loadObject(java.lang.String path,
java.lang.Class<?> expectedClass)
Runtime type-checked version of
loadObject(String) . |
static java.lang.String |
nameOfClass(java.lang.String classname1) |
static void |
serializeObject(java.io.OutputStream outputStream,
java.io.Serializable object)
Serialize a serializable object to a outputstream.
|
static java.lang.String |
shortNameOfClass(java.lang.String classname1) |
static void |
showLoadError(java.io.File fc,
java.lang.Throwable e)
Show a dialog to the user, explaining the exception that was raised while
loading file fc.
|
public static final java.lang.String DOMAIN_REPOSITORY
public static final java.lang.String AGENT_REPOSITORY
public static final java.lang.String PROTOCOL_REPOSITORY
public static final java.lang.String SIMULATOR_REPOSITORY
public static java.lang.String logPrefix
public static java.lang.String logPreset
public static java.lang.String getCurrentTime()
public static java.lang.String getFileNameWithoutExtension(java.lang.String fileName)
public static java.lang.Class<Protocol> getProtocolClass(ProtocolRepItem protRepItem) throws java.lang.Exception
java.lang.Exception
public static Protocol createProtocolInstance(ProtocolRepItem protRepItem, AgentRepItem[] agentRepItems, ProfileRepItem[] profileRepItems, java.util.HashMap<AgentParameterVariable,AgentParamValue>[] agentParams) throws InstantiateException
InstantiateException
public static java.lang.Object loadObject(java.lang.String path) throws InstantiateException
we can't properly typecheck here. Generics fail as we have type erasure, and casting to the given type does NOTHING. So we leave this a general object and leave it to the caller to do the type checking.
path
- This can be either a class name or filename.Object
in the given fileInstantiateException
- if path can not be loaded as object.public static java.lang.Object loadObject(java.lang.String path, java.lang.Class<?> expectedClass) throws InstantiateException
loadObject(String)
.path
- expectedClass
- the class type that the loaded object must extend.InstantiateException
public static <T> T deserializeObject(java.io.InputStream is) throws java.lang.ClassNotFoundException, java.io.IOException
is
- the input stream containing serialized object.java.io.IOException
- if file can not be foundjava.lang.ClassNotFoundException
- if class in the object can't be foundjava.lang.ClassCastException
- if not of given class typepublic static void serializeObject(java.io.OutputStream outputStream, java.io.Serializable object) throws java.io.IOException
outputStream
- the stream to write toobject
- the object to storejava.io.IOException
public static java.lang.Object loadClassFromFile(java.io.File file) throws java.net.MalformedURLException, java.lang.InstantiationException, java.lang.IllegalAccessException, java.lang.ClassNotFoundException
file
- the object to be loaded. Filename should end with ".class".java.lang.ClassNotFoundException
java.lang.IllegalAccessException
java.lang.InstantiationException
java.net.MalformedURLException
public static Agent loadAgent(java.lang.String path) throws InstantiateException
Agent.parseStrategyParameters(String)
path
- This can be either a class name or filename.InstantiateException
- if object can't be loadedpublic static Agent loadAgent(java.lang.String agentClassName, java.lang.String variables) throws InstantiateException
loadAgent(String)
agentClassName
- variables
- the variables to use, as string (eg, "time=0.9;e=1.0").InstantiateException
- if class can't be loadedpublic static java.lang.String getAgentDescription(Agent agent)
public static void showLoadError(java.io.File fc, java.lang.Throwable e)
loadObject(String)
and associates. Also dumps a copy of the full
stacktrace to the console, to help us debugging #906fc
- file that was attempted to be loadede
- the exception that was raisedpublic static java.lang.String getOutcomesFileName()
public static java.lang.String getDistributedOutcomesFileName()
public static java.lang.String getTournamentOutcomeFileName()
public static java.lang.String getExtensiveOutcomesFileName()
public static java.lang.String getOQMOutcomesFileName()
public static java.lang.String nameOfClass(java.lang.String classname1)
classname
- public static java.lang.String shortNameOfClass(java.lang.String classname1)
classname
-