public class BrokerCore
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
associatedUser
Associated user
|
static java.lang.String |
BROKER_CLASSPATH
Broker runtime class path
|
static java.lang.String |
BROKER_HOST
Broker P2J server address net:server:host
|
static java.lang.String |
BROKER_JVMARGS
Broker runtime JVM arguments
|
static java.lang.String |
BROKER_JVMARGS_SEPARATOR
Broker runtime JVM arguments
|
static java.lang.String |
BROKER_PORT
Broker P2J secured port net:server:secyred_port
|
private static java.lang.String |
classpath
classpath
|
private static int |
count
Number of retry
|
private static java.lang.String |
dedicatedHost
Dedicated web host
|
private static boolean |
dedicatedMode
Dedicated mode
|
private static java.lang.String |
host
P2J Server address
|
private static java.lang.Class<?>[] |
ifaces
Export BrokerRemote API
|
private static java.lang.String |
jvmargs
JVM args
|
private static java.util.List<java.lang.String> |
jvmArgs
JVM arguments and CLASSPATH
|
private static java.util.logging.Logger |
LOG
Logger.
|
static java.lang.String |
PARAM_CP
CLASSPATH placeholder
|
static java.lang.String |
PARAM_HOST
Host placeholder
|
static java.lang.String |
PARAM_JVM
JVM arguments placeholder
|
static java.lang.String |
PARAM_PORT
Secure port placeholder
|
static java.lang.String |
PARAM_SPAWNER
Spawner placeholder
|
private static java.lang.String |
port
P2J Server secure port
|
private static int |
seconds
Number of seconds to wait until retry
|
private static java.util.concurrent.CountDownLatch |
sessionLatch
Session latch used to notify when terminate
|
private static java.lang.String |
spawner
Spawner
|
private static java.lang.String |
uuid
Assigned UUID
|
Constructor and Description |
---|
BrokerCore() |
Modifier and Type | Method and Description |
---|---|
private static void |
asleep(long sleepSeconds)
Sleep for a while.
|
private static void |
cleanup(Session session)
Cleanup on exit or error
|
private static void |
connect(SessionManager sessMgr,
BootstrapConfig cfg)
Establish a secure connection to the P2J server running on the specified port.
|
private static SessionListener |
createSessionListener()
Create a
|
static java.lang.String |
getDedicatedHost()
Returns the dedicated host on which a spawned client will be run.
|
static double |
getSystemLoading()
Get OS loading.
|
private static void |
initialize(BootstrapConfig cfg)
Get broker JVM arguments and CLASSPATH which is inherited by spawned clients.
|
static java.lang.String |
ping(java.lang.String uuid)
This method is used for tests only.
|
static BrokerSpawnResult |
spawn(BrokerSpawnParameters args)
This is an exported service used to process remote launch.
|
static void |
start(BootstrapConfig cfg)
Start the broker.
|
public static final java.lang.String PARAM_HOST
public static final java.lang.String PARAM_PORT
public static final java.lang.String PARAM_SPAWNER
public static final java.lang.String PARAM_JVM
public static final java.lang.String PARAM_CP
public static final java.lang.String BROKER_HOST
public static final java.lang.String BROKER_PORT
public static final java.lang.String BROKER_JVMARGS
public static final java.lang.String BROKER_JVMARGS_SEPARATOR
public static final java.lang.String BROKER_CLASSPATH
private static final java.util.logging.Logger LOG
private static java.util.List<java.lang.String> jvmArgs
private static java.lang.Class<?>[] ifaces
private static java.util.concurrent.CountDownLatch sessionLatch
private static java.lang.String uuid
private static java.lang.String host
private static java.lang.String port
private static java.lang.String jvmargs
private static java.lang.String classpath
private static java.lang.String spawner
private static java.lang.String dedicatedHost
private static java.lang.String associatedUser
private static boolean dedicatedMode
private static int count
private static int seconds
public static void start(BootstrapConfig cfg)
The number of retries and the interval between retries could be specified in configuration (client.xml) file or could be override in command line. If missing the default values are used Example: remote:retry:count=10 remote:retry:minutes=1
Broker name parameter MUST be override in command line because this parameter is used to identify broker clients and to set the name of the logger file. Example: remote:broker:name=<broker name>
cfg
- Bootstrap configuration.public static BrokerSpawnResult spawn(BrokerSpawnParameters args)
args
- Remote launch parameters.BrokerSpawnResult
object containing the remote launch result.public static java.lang.String ping(java.lang.String uuid)
uuid
- Assigned UUIDpublic static java.lang.String getDedicatedHost()
public static double getSystemLoading()
private static void initialize(BootstrapConfig cfg)
cfg
- Bootstrap configuration.private static void asleep(long sleepSeconds)
sleepSeconds
- Sleep amount time in seconds.private static void connect(SessionManager sessMgr, BootstrapConfig cfg)
remote:broker:name=<broker name>
cfg
- Bootstrap configuration.private static SessionListener createSessionListener()
SessionListener
object.SessionListener
instance.private static void cleanup(Session session)