palio
Class ModuleManager

java.lang.Object
  extended by palio.ModuleManager

public class ModuleManager
extends java.lang.Object

This class is responsible for following actions: - scanning classpath (packaged jars and individual classes) for modules - prepares shared metadata of modules: local and remote registry of methods, annotated features, etc. - starts independent modules for each instance, registers annotated features from enabled modules

Author:
Szymon Kuklewicz, Radoslaw Osinski

Field Summary
static int MODULE_CORE
           
static int MODULE_EXTERNAL
           
static int MODULE_STANDARD
           
 
Constructor Summary
ModuleManager(Instance instance, java.util.Map<java.lang.String,java.util.Properties> modulesParams)
           
 
Method Summary
 pl.com.torn.jpalio.lang.classes.palio.LocalPalioClassRegistry getLocalRegistry()
           
 Module getModule(java.lang.String name)
           
 PalioServerModuleInfo getModuleInfo(java.lang.String name)
           
 java.util.Map<java.lang.String,Module> getModules()
           
 java.util.Map<java.lang.String,PalioServerModuleInfo> getModulesInfo()
           
static java.lang.String getNameForClass(java.lang.Class<?> module)
           
 pl.com.torn.jpalio.lang.classes.palio.RemotePalioClassRegistry getRemoteRegistry()
           
 pl.com.torn.jpalio.lang.modules.palio.SerializablePalioModuleInfo getSerializableModuleInfo(java.lang.String name)
           
 java.util.Map<java.lang.String,pl.com.torn.jpalio.lang.modules.palio.SerializablePalioModuleInfo> getSerializableModulesInfo()
           
static void registerModule(java.lang.String name, java.lang.Class<? extends Module> module, int moduleType)
           
static void registerModule(java.lang.String name, java.lang.Class<? extends Module> module, int moduleType, InstanceType visiblity)
           
static void scanClasspathForModules(java.io.File[] files)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MODULE_CORE

public static final int MODULE_CORE
See Also:
Constant Field Values

MODULE_STANDARD

public static final int MODULE_STANDARD
See Also:
Constant Field Values

MODULE_EXTERNAL

public static final int MODULE_EXTERNAL
See Also:
Constant Field Values
Constructor Detail

ModuleManager

public ModuleManager(Instance instance,
                     java.util.Map<java.lang.String,java.util.Properties> modulesParams)
Method Detail

scanClasspathForModules

public static void scanClasspathForModules(java.io.File[] files)

registerModule

public static void registerModule(java.lang.String name,
                                  java.lang.Class<? extends Module> module,
                                  int moduleType)

registerModule

public static void registerModule(java.lang.String name,
                                  java.lang.Class<? extends Module> module,
                                  int moduleType,
                                  InstanceType visiblity)

getNameForClass

public static java.lang.String getNameForClass(java.lang.Class<?> module)

getModule

public Module getModule(java.lang.String name)

getModules

public java.util.Map<java.lang.String,Module> getModules()

getModuleInfo

public PalioServerModuleInfo getModuleInfo(java.lang.String name)

getModulesInfo

public java.util.Map<java.lang.String,PalioServerModuleInfo> getModulesInfo()

getSerializableModuleInfo

public pl.com.torn.jpalio.lang.modules.palio.SerializablePalioModuleInfo getSerializableModuleInfo(java.lang.String name)

getSerializableModulesInfo

public java.util.Map<java.lang.String,pl.com.torn.jpalio.lang.modules.palio.SerializablePalioModuleInfo> getSerializableModulesInfo()

getLocalRegistry

public pl.com.torn.jpalio.lang.classes.palio.LocalPalioClassRegistry getLocalRegistry()

getRemoteRegistry

public pl.com.torn.jpalio.lang.classes.palio.RemotePalioClassRegistry getRemoteRegistry()