edu.uci.isr.yancees
Class ArchitectureManager

java.lang.Object
  extended by edu.uci.isr.yancees.ArchitectureManager

public class ArchitectureManager
extends java.lang.Object

That's a parser that reads an architecture description and assembly the notification server architecture. It is also a dynamic change manager of the components.


Constructor Summary
protected ArchitectureManager()
          Protected here prevents direct instantiation of this singleton but allows the extension of this class and the invocation of this construction by the specialization class.
 
Method Summary
 void configureArchitecture(java.io.File fileName)
          Configures the architecture based on a configuration file.
 void dispose()
          Finalizes the architecture, making sure all the connections are closed
protected  void finalize()
          Finalizes the architecture, making sure all the connections are closed since this is protected, we created a dispose method to call this one.
 ActivePluginInstancesRegistry getActiveSubscriptionTreesDB()
           
 EventDispatcherInterface getEventDispatcher()
           
 InputFilterManager getInputFilterManager()
           
static ArchitectureManager getInstance()
           
 NotificationManager getNotificationManager()
           
 MOPluginManagerInterface getNotificationPluginManager()
           
 OutputFilterManager getOutputFilterManager()
           
 ProtocolManager getProtocolManager()
           
 ProtocolPluginManagerInterface getProtocolPluginManager()
           
 ServiceManager getServiceManager()
           
 SubscriptionManager getSubscriptionManager()
           
 MOPluginManagerInterface getSubscriptionPluginManager()
           
 void initialize()
          Initializes the architecture using the default configuration
 void initialize(java.io.File configFile)
          Initializes the architecture based on a configuratio file
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArchitectureManager

protected ArchitectureManager()
Protected here prevents direct instantiation of this singleton but allows the extension of this class and the invocation of this construction by the specialization class.

Method Detail

getInstance

public static ArchitectureManager getInstance()
Returns:
the unique instance of PlugInManager. This method should be called as an alternative to the new command

initialize

public void initialize()
Initializes the architecture using the default configuration


initialize

public void initialize(java.io.File configFile)
                throws MessageParsingException
Initializes the architecture based on a configuratio file

Parameters:
configFile - is the XML file containing the configuration
Throws:
MessageParsingException

configureArchitecture

public void configureArchitecture(java.io.File fileName)
                           throws MessageParsingException
Configures the architecture based on a configuration file. We assume that the basic components of the system are already instantiated by the command createComponents(); This method looks for the tag and processes the , and tags as they are found in this architecture declaration. If errors are found, an exception is rased. We assume that the file is grammatically correct, which is assured by the XML DOM parser.

Parameters:
fileName - is the configuration XML file with the plug-ins and dispatcher information.
Throws:
parsingException - in case of parsing errors.
MessageParsingException

getEventDispatcher

public EventDispatcherInterface getEventDispatcher()

getSubscriptionManager

public SubscriptionManager getSubscriptionManager()

getNotificationManager

public NotificationManager getNotificationManager()

getSubscriptionPluginManager

public MOPluginManagerInterface getSubscriptionPluginManager()

getNotificationPluginManager

public MOPluginManagerInterface getNotificationPluginManager()

getProtocolManager

public ProtocolManager getProtocolManager()

getProtocolPluginManager

public ProtocolPluginManagerInterface getProtocolPluginManager()

getActiveSubscriptionTreesDB

public ActivePluginInstancesRegistry getActiveSubscriptionTreesDB()

getServiceManager

public ServiceManager getServiceManager()

getInputFilterManager

public InputFilterManager getInputFilterManager()

getOutputFilterManager

public OutputFilterManager getOutputFilterManager()

dispose

public void dispose()
             throws java.lang.Throwable
Finalizes the architecture, making sure all the connections are closed

Throws:
java.lang.Throwable

finalize

protected void finalize()
                 throws java.lang.Throwable
Finalizes the architecture, making sure all the connections are closed since this is protected, we created a dispose method to call this one.

Overrides:
finalize in class java.lang.Object
Throws:
java.lang.Throwable