Atavism Version 2018.1AGIS API

atavism.server.marshalling
Class Trampoline

java.lang.Object
  extended by atavism.server.marshalling.Trampoline

public class Trampoline
extends java.lang.Object

The initial class of all server processes is this class Trampoline, whose virtue is that it _doesn't_ reference any of the classes that must be injected to support byte-code marshalling of server messages.


Constructor Summary
Trampoline()
           
 
Method Summary
protected static java.lang.Class getClassForClassName(java.lang.String className)
           
static java.util.Properties getProperties()
          Get the Properties instance loaded by the main program
static void main(java.lang.String[] argv)
          The main program reads the property file, and uses the property file to initialize the log.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Trampoline

public Trampoline()
Method Detail

getClassForClassName

protected static java.lang.Class getClassForClassName(java.lang.String className)

main

public static void main(java.lang.String[] argv)
                 throws java.lang.Throwable
The main program reads the property file, and uses the property file to initialize the log. It then logs all the properties, makes a copy of the args, and calls MarshallingRuntime.initialize(), which marshals all the server classes that are declared as requiring marshalling. If MarshallingRuntime.initialize() returns false, that means that the set of classes requiring marshalling was inconsistent. Extensive information about the nature of the inconsistency will have been logged by MarshallingRuntime.initialize(), and Trampoline exits the process.

The first arg is always the class containing the main program for server process; for most server processes, this is the class atavism.server.engine.Engine. This main program is invoked using the Java reflection mechanism, because that way Trampoline doesn't directly reference the main class of the process.

Throws:
java.lang.Throwable

getProperties

public static java.util.Properties getProperties()
Get the Properties instance loaded by the main program



Copyright © 2018 Dragonsan Studios Sp. z o.o.