network.manager
Class SMSHandlerActionObject

java.lang.Object
  |
  +--network.manager.DefaultHandlerActionObject
        |
        +--network.manager.SMSHandlerActionObject

synchronized class SMSHandlerActionObject
extends DefaultHandlerActionObject


Field Summary
protected  network.manager.ConfigManager configManager
           
protected  network.manager.EventIDGenerator eventIDGenerator
           
protected  java.util.Hashtable listOfEventSubscribers
           
protected  network.manager.EventQueueSync reportedEventList
           
protected  java.util.Hashtable seqNumbersHashtable
           
 
Constructor Summary
SMSHandlerActionObject(network.manager.EventTableSync, java.util.Hashtable, java.util.Hashtable, network.manager.DBModule, ajanta.agent.Agent, java.util.Hashtable, network.manager.ConfigManager, network.manager.EventQueueSync, java.util.Hashtable, network.manager.EventIDGenerator, ajanta.naming.URN)
           
 
Method Summary
 void abortConfig(java.lang.String configHandle)
           
 void addAndLaunchAgents(java.lang.String filename, java.lang.String configHandle)
           
 void addChangeListener(network.manager.ConfigObjectChangeListener cl)
           
 void addDetector(java.lang.String eventDetector, java.lang.String eventHandler)
           
 void addDetector(ajanta.naming.URN agentURN, java.lang.String detectorName, java.lang.String handlerName)
           
 void addEvent(network.detectors.EventDetector detector, network.manager.EventHandler handler, java.util.Vector subscriberList)
           
 void addEvent(java.lang.String eventClassName, network.manager.EventHandler handler, java.util.Vector subscriberList)
           
 void addEventDetector(java.lang.String eventName, network.detectors.EventDetector ed)
           
 void addEventHandler(java.lang.String eventName, network.manager.EventHandler eh)
           
 void addEvents(java.util.Vector eventList)
           
abstract  void addHandlerPostAction(network.manager.EventHandler handler)
           
 void addNewSubscription(ajanta.naming.URN publisherURN, ajanta.naming.URN subscriberURN, java.lang.String eventName, java.lang.String eventHandler)
          Interface method to add a subscription to an agent Called by the proxy object
 void addOldSynchornizerObjects(java.lang.String eventClassName, java.util.Vector synchronizerObjectsVector)
           
 void addStatusItem(network.manager.HostStatusItem i)
           
 void addSubscriber(java.lang.String eventName, java.util.Vector subscriberList)
           
 void addSubscriberAgentInfo(network.manager.SubscriberEntry s)
           
 void addSubscriberList(java.util.Vector subList)
           
 void addSubscription(ajanta.naming.URN agentURN, java.lang.String eventName, java.lang.String eventHandler)
           
 void addSubscription(ajanta.naming.URN monitorURN, ajanta.naming.URN subscriberURN, java.lang.String event, java.lang.String handler)
           
 void addSubscription(ajanta.naming.URN monitorURN, ajanta.naming.URN subscriberURN, java.util.Vector eventList)
           
 void addSubscription(java.util.Vector eventList, ajanta.naming.URN agURN)
           
 void agentReached()
           
 void agentReached(java.lang.String agentType, ajanta.naming.URN monAgentURN)
           
 void agentReached(ajanta.naming.URN agentURN)
           
 void agentSubscriptionDone(ajanta.naming.URN agURN)
           
 void arrive()
           
 java.lang.String attachToSMSAgent(java.lang.String name)
          TODO Jan 30, 2004 Harsha, Tanvir, Tripathi: Remove this api, Let GUI maintain SMA urna in config and rebind on restart
static int byteToInt(byte b)
           
 boolean checkIfSql()
           
 boolean checkStart(ajanta.naming.URN agURN)
           
 boolean containsKey(java.lang.String eventClassName)
           
 java.util.Hashtable createAgentHashtableForSmsFD()
           
static ajanta.pattern.Itinerary createItinerary(ajanta.server.AgentEnv creatingHost, java.lang.String travelpattern, java.lang.String hostfile, int loopInterval)
          Function called by ConfigManager which supplies the file containing list of hosts.
 void createMonitorSubscriberTable()
           
 java.lang.Object createObject(java.lang.String name)
           
static java.lang.Object createObject(java.lang.String className, java.lang.String argString, network.manager.ConfigObject configObj)
           
 void deleteAgentEntry(ajanta.naming.URN agentURN)
          UPDATE METHODS
 void deleteEvent(java.lang.String eventName)
           
 void deleteSubscriber(java.lang.String eventName, ajanta.naming.URN subscriber)
           
 void deleteSubscriber(java.lang.String eventName, java.util.Vector subscriberList)
           
 void depart()
           
 java.util.Enumeration elements()
           
 boolean equals(java.lang.Object object)
          Tests for the equality of an object with MonitorEntry
 boolean equals(java.lang.String className)
           
 void execute(java.lang.String command)
           
protected  void executeBeforeRun()
          Over ridden in Monitoring Agent
 void failureAction(network.events.FailureEvent event)
           
 void forceRun()
           
 void forceRun(ajanta.naming.URN agentURN)
           
 network.events.Event get()
           
 network.manager.EventTableEntry get(java.lang.String eventClassName)
           
 int getAction()
           
 java.util.Hashtable getAgentHashtable()
           
 java.util.Hashtable getAgentHashtableForSmsFD()
           
 java.util.Hashtable getAgentInfo()
           
 boolean getAgentReachedStatus()
           
 boolean getAgentReadyStatus()
           
 network.manager.AgentStatus getAgentStatus(ajanta.naming.URN agentURN)
           
 java.lang.Object getAgentStub(ajanta.naming.URN agentURN)
           
 java.lang.String getArgs()
           
 byte[] getBytes()
           
 java.lang.String getCheckPointBaseDir()
           
 java.lang.String getCheckPointFile()
           
 java.util.Vector getConfigHandleList()
           
 network.manager.ConfigObject getConfigObject()
           
 network.manager.ConfigObject getConfigObject(java.lang.String configHandle)
           
 java.lang.String getCPUTime()
           
 java.lang.String getDBUrl()
           
 network.manager.SubscriberEntry getDefaultSubEntry()
           
 ajanta.naming.URN getDefaultSubscriber()
           
 ajanta.naming.URN getDefaultSubscriberURN(java.lang.String configHandle)
           
 ajanta.naming.URN getDefaultURN()
           
 network.detectors.EventDetector getDetector()
           
 java.util.Hashtable getDetectors()
           
 java.util.Vector getDetectors(ajanta.naming.URN agentURN)
           
 java.lang.Object getDetectorStatus(java.lang.String detector)
           
 java.util.Vector getDetectorsVector()
           
 java.lang.String getEventClassName()
           
 network.manager.EventID getEventID()
           
 network.manager.EventIDGenerator getEventIDGenerator()
          returns the unique event id generator for the agent
 java.util.Vector getEventList()
           
 java.util.Vector getEventList(ajanta.naming.URN subscriberURN, ajanta.naming.URN publisherURN)
           
 int getEventMask()
           
 java.lang.String getEventName()
           
 java.lang.String getExecTime()
           
 java.util.Vector getFailureDetectionAgents()
           
 java.util.Vector getFailureDetectionAgents(ajanta.naming.URN agentURN)
           
 int getGID()
           
 java.lang.String getHandle()
           
 network.manager.EventHandler getHandler()
           
 java.lang.String getHexString()
           
 java.lang.String getHostname()
           
 java.util.Hashtable getHostStatusForConfig(java.lang.String configHandle)
           
static void getLastReadTime(network.detectors.SyslogEventDetector eventDetector, java.lang.String agURN)
           
 boolean getLaunchStatus()
           
 java.util.Vector getList()
           
 java.lang.Object getLocalEvents(java.lang.String key)
          Method that returns the list of triggering events
 double getMemUsage()
           
 java.lang.String getMsg()
           
 network.manager.EventTableEntry getNewEntrySync()
           
 network.manager.SubscriptionObject getNext()
           
 java.lang.String getNiceValue()
           
 int getNLWP()
           
static java.lang.Object getObject(java.lang.String eventName, java.io.BufferedReader bufReader)
          Primary function of this static function is to aid in the addition, deletion and modification of detectors.
 java.lang.String getPattern()
           
 java.util.Vector getPatternVector()
           
 double getPCPU()
           
 int getPid()
           
 int getPPid()
           
 int getPriority()
           
 java.lang.String getProcInstr()
           
 java.util.Vector getProgramNames()
           
 java.util.Vector getPublishers(ajanta.naming.URN agentURN)
           
 java.lang.Object getRemoteEvents(java.lang.String key)
           
 java.lang.String getResource()
           
 boolean getRunStatus()
           
 java.lang.String getSchedClass()
           
 boolean getServerStatus()
           
 java.lang.String getSMSAgentName()
           
 java.lang.String getSMSAgentURL()
           
 java.lang.String getSourceHost()
           
 java.lang.String getSourcePort()
           
 java.lang.String getSourceUserName()
           
 java.sql.Connection getSqlHandle()
           
 java.lang.String getState()
           
 int getStatus()
           
 java.util.Vector getStatusItems()
           
 java.util.Vector getSubscriberList()
           
 java.util.Vector getSubscribers(ajanta.naming.URN agentURN)
           
 java.lang.Object getSystemValue(java.lang.String v)
           
 boolean getSystemValueChangedFlag()
           
 ajanta.naming.URN getTargetAgentURN()
           
 java.lang.String getTime()
           
 java.lang.String getTTY()
           
 ajanta.naming.URN getURN()
           
 java.util.Hashtable getURNeventTableForEvents(java.util.Vector events)
           
 java.util.Vector getURNlistForDetector(java.lang.String detName)
          QUERY METHODS
 java.util.Vector getURNlistForEvent(java.lang.String handle, java.lang.String event)
           
 java.util.Hashtable getURNTableForEvents(java.lang.String handle, java.util.Vector events)
           
 java.lang.String getUser()
           
 int getUserID()
           
 java.lang.String getUserName()
           
 java.util.Vector getVector()
           
 int getVirtMemUsage()
           
protected  void handlerAction(network.events.Event)
           
 void initialize()
           
 boolean isFailureAgent(ajanta.naming.URN agentURN)
           
 java.util.Enumeration keys()
           
 void launch()
           
 void launchConfig(java.lang.String configHandle)
           
 void launchConfigRestartMode(java.lang.String configHandle)
           
 java.lang.String launchSMSAgent(java.lang.String name)
          TODO Jan 30, 2004 Harsha, Tanvir, Tripathi: Though: have this as a generic api for all agentserver, Currently run SMSAgentServer as generic server.
 java.util.Vector listSMSAgents()
          TODO Jan 30, 2004 Harsha, Tanvir, Tripathi: Remove this api, Reove this functionality to registry (e.g.
 void logEventInDB(network.events.Event e)
           
static void main(java.lang.String[] args)
           
 boolean match(java.lang.String user, java.lang.String program)
           
 void modifyDetector(java.lang.String userInput, java.lang.Object[] objectList)
           
 void modifyDetector(ajanta.naming.URN agentURN, java.lang.String eventDetector, java.lang.Object[] objectList)
           
 void modifyDetectorOnAgent(ajanta.naming.URN agentURN, java.lang.String eventDetector, java.lang.Object[] object)
           
 void notifyEvent(network.events.Event event, int typeOfAgent)
           
 void notifyEventPreProcess(network.events.Event event)
           
static java.util.Vector parsePatternFile(java.lang.String fileName)
          Parses the patternfile and returns a vector of patternInfo read from the file.
static void printByteArray(byte[] b)
           
 void printRunningThreads()
           
 void processEvent(network.events.Event e, ajanta.server.AgentEnv ae, network.manager.DBModule dbModule, int typeOfAgent)
           
 void put(network.events.Event event)
           
 void put(java.lang.String eventClassName, network.manager.EventTableEntry entry)
           
 void put(java.util.Vector eventList, ajanta.naming.URN agentURN)
           
 void putDetectorsVector(java.util.Vector newVector)
           
 void putNewEntrySync(java.lang.String eventClassName, network.manager.EventTableEntry entry)
           
 void readConfigFile(java.lang.String filename, java.lang.String configHandle)
           
static network.manager.ConfigObject readConfigFile(java.lang.String configFile, ajanta.naming.URN baseURN)
           
 void readyToRun()
           
 void registerForEvents(java.lang.String configHandle, java.lang.String url, java.util.Vector eventList)
          Overloaded method for handling events taken from the Event queue of the SMSAgent /** register for interesting events from the default subscriber
 void registerForHostStatusEvents(java.lang.String clientURL, java.util.Vector configHandles)
           
 void registerGUI(java.lang.String url)
           
 void relaunchAgent(ajanta.naming.URN agentURN)
           
 void relaunchDetector(ajanta.naming.URN agentURN, java.lang.String eventDetector)
           
 void remove(network.manager.SubscriptionObject subObject)
           
 void removeAllChangeListeners()
           
 void removeDetector(java.lang.String detector)
           
 void removeDetector(ajanta.naming.URN agentURN, java.lang.String eventDetector)
           
 void removeDetectorOnAgent(ajanta.naming.URN agentURN, java.lang.String detectorName)
          Remote Interface method to remove a detector from an agent
 void removeDetectorStatus(java.lang.String eventDetector)
           
 void removeEvent(java.lang.String eventClassName)
           
 void removeSubscribeRelation(ajanta.naming.URN publisherURN, ajanta.naming.URN subscriberURN, java.lang.String eventName)
          Method to remove the publish-subscribe relation
 void removeSubscription(ajanta.naming.URN agentURN, java.lang.String eventName)
           
 void removeSubscription(ajanta.naming.URN monitorURN, ajanta.naming.URN subscriberURN, java.lang.String event)
           
 void removeSubscription(ajanta.naming.URN monitorURN, ajanta.naming.URN subscriberURN, java.util.Vector eventList)
           
 void removeSubscription(ajanta.naming.URN agentURN, java.util.Vector eventList)
           
 void removeSubscription(java.util.Vector eList)
           
 void replaceEventDetector(java.lang.String eventName, network.detectors.EventDetector ed)
           
 void replaceEventHandler(java.lang.String eventName, network.manager.EventHandler eh)
           
 void report(network.events.Event event)
           
 void report(network.events.Event e, ajanta.server.AgentEnv host)
           
 void resetIndex()
           
 void restoreDetector(network.detectors.EventDetector detector, network.manager.EventHandler handler)
           
 void resubscribe(ajanta.naming.URN monitorURN)
           
 void run()
           
 void saveToFiles(java.io.File baseDir, java.lang.String baseName)
           
 void set(network.events.Event e)
           
 void setAgentHandle(network.manager.BasicMonitoringAgent agent)
           
 void setAgentURN(ajanta.naming.URN agentURN)
           
 void setAlarmLevel(java.lang.String eventClassName, int alarmLevel)
           
 void setAlertLevel(java.lang.String eventClassName, int alertLevel)
           
 void setBackupInfoForConfig(java.lang.String configHandle, java.lang.String baseDir, java.lang.String baseFileName)
           
 void setDefaultSubscriberEntry(network.manager.SubscriberEntry s)
           
 void setDetector(network.detectors.EventDetector ed)
           
 void setDetectorStatus(java.lang.String detector, java.lang.Object obj)
           
 void setDetectorStatus(ajanta.naming.URN agentURN, java.lang.String detector, java.lang.Object status)
           
 void setHandle(java.lang.String s)
           
 void setHandler(network.manager.EventHandler eh)
           
 void setMsg(java.lang.String msg)
           
 void setPatternVector(java.util.Vector s)
           
 void setProgramName(java.lang.String program)
           
 void setProgramName(java.util.Vector programNames)
           
 void setResource(java.lang.String resource)
           
 void setRunStatus(boolean status)
           
 void setRunStatus(ajanta.naming.URN agentURN, boolean status)
           
 void setServerStatus(boolean status)
           
 void setSourceUserName(java.lang.String uName)
           
 void setStatus(int status)
           
 void setSubscriberList(java.util.Vector subscriberList)
           
 void setTriggerTable(java.util.Hashtable localTriggerTable, java.util.Hashtable remoteTriggerTable)
          Method that sets the trigger table
 void setUrlToEventVector(java.util.Hashtable urlToEventVector)
           
 void setUser(java.lang.String user)
           
 void setValues(network.manager.DBModule dbModule, ajanta.agent.Agent agentRef, java.util.Hashtable seqNumbersHashtable, network.manager.ConfigManager configManager, network.manager.EventQueueSync reportedEventList, java.util.Hashtable listOfEventSubscribers, network.manager.EventIDGenerator eventIDGenerator)
           
 void setValues(network.manager.DBModule dbModule, ajanta.agent.Agent agentRef, java.util.Hashtable seqNumbersHashtable, network.manager.ConfigManager configManager, network.manager.EventQueueSync reportedEventList, network.manager.EventIDGenerator eventIDGenerator)
           
 void showSubscribers()
           
 int size()
           
 void smsfailureAction(network.events.SMSFailureEvent event)
           
 void startEventDetectorThread()
           
 boolean startRun(ajanta.naming.URN agentURN)
           
 boolean startSubscription(ajanta.naming.URN agentURN)
           
 void startToRun()
           
 void stateChanged(network.manager.ConfigObjectChangeEvent ce)
           
 void stopAgent()
           
 boolean subscribe(java.util.Vector eventList, ajanta.naming.URN agURN)
           
 void subscribeEvent(java.lang.String eventClassName, ajanta.naming.URN subscriber)
           
 void switchOffPrintRunningThreads()
           
 void terminateAgent(ajanta.naming.URN agentURN)
           
 void terminateChildAgent(ajanta.naming.URN agentURN)
          Interface method to terminate agent launched by this SMS Called by proxy object
 void test(java.lang.String e)
           
 java.lang.String toString()
           
 void unregisterForAllHostStatusEvents(java.lang.String clientURL)
           
 void unregisterForEvents(java.lang.String configHandle, java.lang.String url, java.util.Vector v)
          register for interesting events from the default subscriber
 void updateSystemValues(java.lang.String systemValueKey, java.lang.Object systemValue)
           
 void viewEventTable()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

seqNumbersHashtable

protected java.util.Hashtable seqNumbersHashtable

configManager

protected network.manager.ConfigManager configManager

reportedEventList

protected network.manager.EventQueueSync reportedEventList

listOfEventSubscribers

protected java.util.Hashtable listOfEventSubscribers

eventIDGenerator

protected network.manager.EventIDGenerator eventIDGenerator
Constructor Detail

SMSHandlerActionObject

public SMSHandlerActionObject(network.manager.EventTableSync,
                              java.util.Hashtable,
                              java.util.Hashtable,
                              network.manager.DBModule,
                              ajanta.agent.Agent,
                              java.util.Hashtable,
                              network.manager.ConfigManager,
                              network.manager.EventQueueSync,
                              java.util.Hashtable,
                              network.manager.EventIDGenerator,
                              ajanta.naming.URN)
Method Detail

handlerAction

protected void handlerAction(network.events.Event)
                      throws java.lang.Exception
Parameters:
-
Returns:
java.lang.Exception

setAgentURN

public void setAgentURN(ajanta.naming.URN agentURN)

notifyEvent

public void notifyEvent(network.events.Event event,
                        int typeOfAgent)

notifyEventPreProcess

public void notifyEventPreProcess(network.events.Event event)
Parameters:
event -
Returns:

processEvent

public void processEvent(network.events.Event e,
                         ajanta.server.AgentEnv ae,
                         network.manager.DBModule dbModule,
                         int typeOfAgent)
Parameters:
e -
ae -
dbModule -
Returns:

setAgentHandle

public void setAgentHandle(network.manager.BasicMonitoringAgent agent)
Parameters:
agent -
Returns:

addSubscriberList

public void addSubscriberList(java.util.Vector subList)
Parameters:
subList -
Returns:

setValues

public void setValues(network.manager.DBModule dbModule,
                      ajanta.agent.Agent agentRef,
                      java.util.Hashtable seqNumbersHashtable,
                      network.manager.ConfigManager configManager,
                      network.manager.EventQueueSync reportedEventList,
                      network.manager.EventIDGenerator eventIDGenerator)

getSqlHandle

public java.sql.Connection getSqlHandle()
Returns:

checkIfSql

public boolean checkIfSql()
Returns:

getDBUrl

public java.lang.String getDBUrl()
Returns:

getAgentStub

public java.lang.Object getAgentStub(ajanta.naming.URN agentURN)
                              throws java.lang.Exception
java.lang.Exception

readConfigFile

public void readConfigFile(java.lang.String filename,
                           java.lang.String configHandle)
                    throws java.lang.Exception
java.lang.Exception

getConfigHandleList

public java.util.Vector getConfigHandleList()

getFailureDetectionAgents

public java.util.Vector getFailureDetectionAgents(ajanta.naming.URN agentURN)
                                           throws java.lang.Exception
java.lang.Exception

getPublishers

public java.util.Vector getPublishers(ajanta.naming.URN agentURN)
                               throws java.lang.Exception
java.lang.Exception

setDetectorStatus

public void setDetectorStatus(ajanta.naming.URN agentURN,
                              java.lang.String detector,
                              java.lang.Object status)
                       throws java.lang.Exception
java.lang.Exception

setRunStatus

public void setRunStatus(ajanta.naming.URN agentURN,
                         boolean status)
                  throws java.lang.Exception
java.lang.Exception

getConfigObject

public network.manager.ConfigObject getConfigObject(java.lang.String configHandle)
                                             throws java.lang.Exception
java.lang.Exception

getURNlistForEvent

public java.util.Vector getURNlistForEvent(java.lang.String handle,
                                           java.lang.String event)
                                    throws java.lang.Exception
java.lang.Exception

getURNTableForEvents

public java.util.Hashtable getURNTableForEvents(java.lang.String handle,
                                                java.util.Vector events)
                                         throws java.lang.Exception
java.lang.Exception

relaunchAgent

public void relaunchAgent(ajanta.naming.URN agentURN)
                   throws java.lang.Exception
java.lang.Exception

addAndLaunchAgents

public void addAndLaunchAgents(java.lang.String filename,
                               java.lang.String configHandle)
                        throws java.lang.Exception
java.lang.Exception

setBackupInfoForConfig

public void setBackupInfoForConfig(java.lang.String configHandle,
                                   java.lang.String baseDir,
                                   java.lang.String baseFileName)
                            throws java.lang.Exception
java.lang.Exception

launchConfigRestartMode

public void launchConfigRestartMode(java.lang.String configHandle)
                             throws java.lang.Exception
java.lang.Exception

launchConfig

public void launchConfig(java.lang.String configHandle)
                  throws java.lang.Exception
java.lang.Exception

relaunchDetector

public void relaunchDetector(ajanta.naming.URN agentURN,
                             java.lang.String eventDetector)
                      throws java.lang.Exception
java.lang.Exception

removeDetector

public void removeDetector(ajanta.naming.URN agentURN,
                           java.lang.String eventDetector)
                    throws java.lang.Exception
java.lang.Exception

addDetector

public void addDetector(ajanta.naming.URN agentURN,
                        java.lang.String detectorName,
                        java.lang.String handlerName)
                 throws java.lang.Exception
java.lang.Exception

addSubscription

public void addSubscription(ajanta.naming.URN monitorURN,
                            ajanta.naming.URN subscriberURN,
                            java.lang.String event,
                            java.lang.String handler)
                     throws java.lang.Exception
java.lang.Exception

addSubscription

public void addSubscription(ajanta.naming.URN monitorURN,
                            ajanta.naming.URN subscriberURN,
                            java.util.Vector eventList)
                     throws java.lang.Exception
java.lang.Exception

removeSubscription

public void removeSubscription(ajanta.naming.URN monitorURN,
                               ajanta.naming.URN subscriberURN,
                               java.lang.String event)
                        throws java.lang.Exception
java.lang.Exception

removeSubscription

public void removeSubscription(ajanta.naming.URN monitorURN,
                               ajanta.naming.URN subscriberURN,
                               java.util.Vector eventList)
                        throws java.lang.Exception
java.lang.Exception

agentReached

public void agentReached(ajanta.naming.URN agentURN)
                  throws java.lang.Exception
java.lang.Exception

startRun

public boolean startRun(ajanta.naming.URN agentURN)
                 throws java.lang.Exception
java.lang.Exception

startSubscription

public boolean startSubscription(ajanta.naming.URN agentURN)
                          throws java.lang.Exception
java.lang.Exception

forceRun

public void forceRun(ajanta.naming.URN agentURN)
              throws java.lang.Exception
java.lang.Exception

modifyDetector

public void modifyDetector(ajanta.naming.URN agentURN,
                           java.lang.String eventDetector,
                           java.lang.Object[] objectList)
                    throws java.lang.Exception
java.lang.Exception

terminateAgent

public void terminateAgent(ajanta.naming.URN agentURN)
                    throws java.lang.Exception
java.lang.Exception

abortConfig

public void abortConfig(java.lang.String configHandle)
                 throws java.lang.Exception
java.lang.Exception

getDefaultSubscriberURN

public ajanta.naming.URN getDefaultSubscriberURN(java.lang.String configHandle)
                                          throws java.lang.Exception
java.lang.Exception

getHostStatusForConfig

public java.util.Hashtable getHostStatusForConfig(java.lang.String configHandle)
                                           throws java.lang.Exception
java.lang.Exception

getVector

public java.util.Vector getVector()
Returns:

size

public int size()
Returns:

put

public void put(network.events.Event event)
Parameters:
event -
Returns:

elements

public java.util.Enumeration elements()
Returns:

get

public network.events.Event get()
Returns:

getEventID

public network.manager.EventID getEventID()

main

public static void main(java.lang.String[] args)

printByteArray

public static void printByteArray(byte[] b)

byteToInt

public static int byteToInt(byte b)

getURN

public ajanta.naming.URN getURN()
Returns:

report

public void report(network.events.Event e,
                   ajanta.server.AgentEnv host)
            throws java.lang.Exception
Parameters:
e -
host -
Returns:
java.lang.Exception

arrive

public void arrive()
Returns:

depart

public void depart()
Returns:

stopAgent

public void stopAgent()
               throws java.rmi.RemoteException
Returns:
java.rmi.RemoteException

executeBeforeRun

protected void executeBeforeRun()
Over ridden in Monitoring Agent


run

public void run()
Returns:

viewEventTable

public void viewEventTable()
Returns:

subscribeEvent

public void subscribeEvent(java.lang.String eventClassName,
                           ajanta.naming.URN subscriber)
                    throws java.rmi.RemoteException,
                           remoteConfigException
Parameters:
eventClassName -
subscriber -
Returns:
java.rmi.RemoteException
remoteConfigException

deleteEvent

public void deleteEvent(java.lang.String eventName)
Parameters:
eventName -
Returns:

removeDetector

public void removeDetector(java.lang.String detector)
                    throws java.rmi.RemoteException
Parameters:
detector -
Returns:
java.rmi.RemoteException

addEvent

public void addEvent(network.detectors.EventDetector detector,
                     network.manager.EventHandler handler,
                     java.util.Vector subscriberList)
              throws java.rmi.RemoteException,
                     java.rmi.AlreadyBoundException
java.rmi.RemoteException
java.rmi.AlreadyBoundException

addEvent

public void addEvent(java.lang.String eventClassName,
                     network.manager.EventHandler handler,
                     java.util.Vector subscriberList)
              throws java.rmi.RemoteException,
                     java.rmi.AlreadyBoundException
java.rmi.RemoteException
java.rmi.AlreadyBoundException

restoreDetector

public void restoreDetector(network.detectors.EventDetector detector,
                            network.manager.EventHandler handler)
Parameters:
detector -
handler -
Returns:

addSubscriber

public void addSubscriber(java.lang.String eventName,
                          java.util.Vector subscriberList)
                   throws java.rmi.RemoteException
Parameters:
eventName -
subscriberList -
Returns:
java.rmi.RemoteException

addEventHandler

public void addEventHandler(java.lang.String eventName,
                            network.manager.EventHandler eh)
Parameters:
eventName -
eh -
Returns:

addEventDetector

public void addEventDetector(java.lang.String eventName,
                             network.detectors.EventDetector ed)
Parameters:
eventName -
ed -
Returns:

replaceEventDetector

public void replaceEventDetector(java.lang.String eventName,
                                 network.detectors.EventDetector ed)
Parameters:
eventName -
ed -
Returns:

replaceEventHandler

public void replaceEventHandler(java.lang.String eventName,
                                network.manager.EventHandler eh)
Parameters:
eventName -
eh -
Returns:

deleteSubscriber

public void deleteSubscriber(java.lang.String eventName,
                             java.util.Vector subscriberList)
Parameters:
eventName -
subscriberList -
Returns:

deleteSubscriber

public void deleteSubscriber(java.lang.String eventName,
                             ajanta.naming.URN subscriber)
Parameters:
eventName -
subscriber -
Returns:

showSubscribers

public void showSubscribers()
Returns:

modifyDetector

public void modifyDetector(java.lang.String userInput,
                           java.lang.Object[] objectList)
                    throws java.rmi.RemoteException
Parameters:
userInput -
Returns:
java.rmi.RemoteException

setAlarmLevel

public void setAlarmLevel(java.lang.String eventClassName,
                          int alarmLevel)
Parameters:
eventClassName -
alarmLevel -
Returns:

setAlertLevel

public void setAlertLevel(java.lang.String eventClassName,
                          int alertLevel)
Parameters:
eventClassName -
alertLevel -
Returns:

getDefaultSubscriber

public ajanta.naming.URN getDefaultSubscriber()
Returns:

addOldSynchornizerObjects

public void addOldSynchornizerObjects(java.lang.String eventClassName,
                                      java.util.Vector synchronizerObjectsVector)

printRunningThreads

public void printRunningThreads()
Returns:

switchOffPrintRunningThreads

public void switchOffPrintRunningThreads()
Returns:

getEventIDGenerator

public network.manager.EventIDGenerator getEventIDGenerator()
returns the unique event id generator for the agent

Returns:

addHandlerPostAction

public abstract void addHandlerPostAction(network.manager.EventHandler handler)

removeAllChangeListeners

public void removeAllChangeListeners()

addChangeListener

public void addChangeListener(network.manager.ConfigObjectChangeListener cl)

saveToFiles

public void saveToFiles(java.io.File baseDir,
                        java.lang.String baseName)
                 throws java.lang.Exception
java.lang.Exception

deleteAgentEntry

public void deleteAgentEntry(ajanta.naming.URN agentURN)
                      throws java.lang.Exception
UPDATE METHODS

java.lang.Exception

addSubscriberAgentInfo

public void addSubscriberAgentInfo(network.manager.SubscriberEntry s)

setPatternVector

public void setPatternVector(java.util.Vector s)

setDefaultSubscriberEntry

public void setDefaultSubscriberEntry(network.manager.SubscriberEntry s)

updateSystemValues

public void updateSystemValues(java.lang.String systemValueKey,
                               java.lang.Object systemValue)
                        throws configException
configException

initialize

public void initialize()
                throws java.lang.Exception
java.lang.Exception

getURNlistForDetector

public java.util.Vector getURNlistForDetector(java.lang.String detName)
QUERY METHODS


getURNeventTableForEvents

public java.util.Hashtable getURNeventTableForEvents(java.util.Vector events)

getRunStatus

public boolean getRunStatus()

getEventList

public java.util.Vector getEventList(ajanta.naming.URN subscriberURN,
                                     ajanta.naming.URN publisherURN)
                              throws java.lang.Exception
java.lang.Exception

getSystemValueChangedFlag

public boolean getSystemValueChangedFlag()

getAgentInfo

public java.util.Hashtable getAgentInfo()

getSubscribers

public java.util.Vector getSubscribers(ajanta.naming.URN agentURN)
                                throws java.lang.Exception
java.lang.Exception

getPatternVector

public java.util.Vector getPatternVector()

getFailureDetectionAgents

public java.util.Vector getFailureDetectionAgents()

getAgentStatus

public network.manager.AgentStatus getAgentStatus(ajanta.naming.URN agentURN)
                                           throws java.lang.Exception
java.lang.Exception

getDefaultSubEntry

public network.manager.SubscriberEntry getDefaultSubEntry()
                                                   throws java.lang.Exception
java.lang.Exception

getDefaultURN

public ajanta.naming.URN getDefaultURN()
                                throws java.lang.Exception
java.lang.Exception

getSystemValue

public java.lang.Object getSystemValue(java.lang.String v)

isFailureAgent

public boolean isFailureAgent(ajanta.naming.URN agentURN)
                       throws java.lang.Exception
java.lang.Exception

getCheckPointBaseDir

public java.lang.String getCheckPointBaseDir()

getCheckPointFile

public java.lang.String getCheckPointFile()

getSMSAgentName

public java.lang.String getSMSAgentName()

getSMSAgentURL

public java.lang.String getSMSAgentURL()

getAgentHashtable

public java.util.Hashtable getAgentHashtable()

getAgentHashtableForSmsFD

public java.util.Hashtable getAgentHashtableForSmsFD()

getDetectors

public java.util.Vector getDetectors(ajanta.naming.URN agentURN)
                              throws java.lang.Exception
java.lang.Exception

createAgentHashtableForSmsFD

public java.util.Hashtable createAgentHashtableForSmsFD()

createMonitorSubscriberTable

public void createMonitorSubscriberTable()
                                  throws java.lang.Exception
java.lang.Exception

setHandle

public void setHandle(java.lang.String s)

getHandle

public java.lang.String getHandle()

toString

public java.lang.String toString()

addDetector

public void addDetector(java.lang.String eventDetector,
                        java.lang.String eventHandler)
                 throws java.lang.Exception
java.lang.Exception

addSubscription

public void addSubscription(ajanta.naming.URN agentURN,
                            java.lang.String eventName,
                            java.lang.String eventHandler)
                     throws java.lang.Exception
java.lang.Exception

removeSubscription

public void removeSubscription(ajanta.naming.URN agentURN,
                               java.lang.String eventName)
                        throws java.lang.Exception
java.lang.Exception

equals

public boolean equals(java.lang.Object object)
Tests for the equality of an object with MonitorEntry

Parameters:
object - Object to compared
Returns:

setTriggerTable

public void setTriggerTable(java.util.Hashtable localTriggerTable,
                            java.util.Hashtable remoteTriggerTable)
Method that sets the trigger table


getLocalEvents

public java.lang.Object getLocalEvents(java.lang.String key)
Method that returns the list of triggering events

Parameters:
key -
Returns:

getRemoteEvents

public java.lang.Object getRemoteEvents(java.lang.String key)

getDetectors

public java.util.Hashtable getDetectors()

getBytes

public byte[] getBytes()

getHexString

public java.lang.String getHexString()

report

public void report(network.events.Event event)
            throws java.rmi.RemoteException
Parameters:
event -
java.rmi.RemoteException

addSubscription

public void addSubscription(java.util.Vector eventList,
                            ajanta.naming.URN agURN)
                     throws java.rmi.RemoteException,
                            remoteConfigException
java.rmi.RemoteException
remoteConfigException

resubscribe

public void resubscribe(ajanta.naming.URN monitorURN)
                 throws java.rmi.RemoteException
java.rmi.RemoteException

put

public void put(java.lang.String eventClassName,
                network.manager.EventTableEntry entry)
Parameters:
eventClassName -
entry -
Returns:

putNewEntrySync

public void putNewEntrySync(java.lang.String eventClassName,
                            network.manager.EventTableEntry entry)
Parameters:
eventClassName -
entry -
Returns:

getNewEntrySync

public network.manager.EventTableEntry getNewEntrySync()
Returns:

get

public network.manager.EventTableEntry get(java.lang.String eventClassName)
Parameters:
eventClassName -
Returns:

removeEvent

public void removeEvent(java.lang.String eventClassName)
Parameters:
eventClassName -
Returns:

keys

public java.util.Enumeration keys()
Returns:

containsKey

public boolean containsKey(java.lang.String eventClassName)
Parameters:
eventClassName -
Returns:

logEventInDB

public void logEventInDB(network.events.Event e)
Parameters:
e -
Returns:

stateChanged

public void stateChanged(network.manager.ConfigObjectChangeEvent ce)

getServerStatus

public boolean getServerStatus()

setServerStatus

public void setServerStatus(boolean status)

readyToRun

public void readyToRun()

removeDetectorStatus

public void removeDetectorStatus(java.lang.String eventDetector)

setDetectorStatus

public void setDetectorStatus(java.lang.String detector,
                              java.lang.Object obj)

getDetectorStatus

public java.lang.Object getDetectorStatus(java.lang.String detector)

launch

public void launch()

agentReached

public void agentReached()

startToRun

public void startToRun()

getAgentReachedStatus

public boolean getAgentReachedStatus()

getAgentReadyStatus

public boolean getAgentReadyStatus()

getLaunchStatus

public boolean getLaunchStatus()

forceRun

public void forceRun()

setRunStatus

public void setRunStatus(boolean status)

setHandler

public void setHandler(network.manager.EventHandler eh)
Parameters:
eh -
Returns:

setDetector

public void setDetector(network.detectors.EventDetector ed)
Parameters:
ed -
Returns:

setSubscriberList

public void setSubscriberList(java.util.Vector subscriberList)
Parameters:
subscriberList -
Returns:

getHandler

public network.manager.EventHandler getHandler()
Returns:

getDetector

public network.detectors.EventDetector getDetector()
Returns:

getSubscriberList

public java.util.Vector getSubscriberList()
Returns:

getConfigObject

public network.manager.ConfigObject getConfigObject()

getEventMask

public int getEventMask()

readConfigFile

public static network.manager.ConfigObject readConfigFile(java.lang.String configFile,
                                                          ajanta.naming.URN baseURN)
                                                   throws java.lang.Exception
java.lang.Exception

parsePatternFile

public static java.util.Vector parsePatternFile(java.lang.String fileName)
Parses the patternfile and returns a vector of patternInfo read from the file. PatternInfo object contains the Event Class, name of the event, the pattern and the processing instruction(The substring numbers which are useful for processing the parsed logfile)

Parameters:
fileName - Name of the file containing the patterns
Returns:

getObject

public static java.lang.Object getObject(java.lang.String eventName,
                                         java.io.BufferedReader bufReader)
Primary function of this static function is to aid in the addition, deletion and modification of detectors. Provides a command line interface for entering modified values and returns an appropriate Object depending on the type of Event to be modified.

Parameters:
eventName - Name of the event class
bufReader - Buffered Reader object
Returns:

failureAction

public void failureAction(network.events.FailureEvent event)
                   throws java.lang.Exception
java.lang.Exception

smsfailureAction

public void smsfailureAction(network.events.SMSFailureEvent event)
                      throws java.lang.Exception
java.lang.Exception

setUrlToEventVector

public void setUrlToEventVector(java.util.Hashtable urlToEventVector)

getEventClassName

public java.lang.String getEventClassName()
Returns:

set

public void set(network.events.Event e)
         throws java.lang.Exception
Parameters:
e -
Returns:
java.lang.Exception

launchSMSAgent

public java.lang.String launchSMSAgent(java.lang.String name)
                                throws java.rmi.RemoteException
TODO Jan 30, 2004 Harsha, Tanvir, Tripathi: Though: have this as a generic api for all agentserver, Currently run SMSAgentServer as generic server.

java.rmi.RemoteException

listSMSAgents

public java.util.Vector listSMSAgents()
                               throws java.rmi.RemoteException
TODO Jan 30, 2004 Harsha, Tanvir, Tripathi: Remove this api, Reove this functionality to registry (e.g. name registry) for listing of all the SMAs

java.rmi.RemoteException

attachToSMSAgent

public java.lang.String attachToSMSAgent(java.lang.String name)
                                  throws java.rmi.RemoteException
TODO Jan 30, 2004 Harsha, Tanvir, Tripathi: Remove this api, Let GUI maintain SMA urna in config and rebind on restart

java.rmi.RemoteException

setResource

public void setResource(java.lang.String resource)

setStatus

public void setStatus(int status)

setMsg

public void setMsg(java.lang.String msg)

getResource

public java.lang.String getResource()

getHostname

public java.lang.String getHostname()

getMsg

public java.lang.String getMsg()

getStatus

public int getStatus()

addStatusItem

public void addStatusItem(network.manager.HostStatusItem i)

getStatusItems

public java.util.Vector getStatusItems()

setUser

public void setUser(java.lang.String user)
Parameters:
user -
Returns:

setProgramName

public void setProgramName(java.lang.String program)
Parameters:
program -
Returns:

setProgramName

public void setProgramName(java.util.Vector programNames)
Parameters:
programNames -
Returns:

getUser

public java.lang.String getUser()
Returns:

getProgramNames

public java.util.Vector getProgramNames()
Returns:

match

public boolean match(java.lang.String user,
                     java.lang.String program)
Parameters:
user -
program -
Returns:

createItinerary

public static ajanta.pattern.Itinerary createItinerary(ajanta.server.AgentEnv creatingHost,
                                                       java.lang.String travelpattern,
                                                       java.lang.String hostfile,
                                                       int loopInterval)
                                                throws java.lang.Exception
Function called by ConfigManager which supplies the file containing list of hosts. This function parses the host file, creates the itinerary file and creates the Itinerary object and returns it to ConfigManager.

Parameters:
hostfile -
loopInterval -
java.lang.Exception

subscribe

public boolean subscribe(java.util.Vector eventList,
                         ajanta.naming.URN agURN)
                  throws remoteConfigException
remoteConfigException

createObject

public java.lang.Object createObject(java.lang.String name)
Parameters:
name -
Returns:

startEventDetectorThread

public void startEventDetectorThread()

agentSubscriptionDone

public void agentSubscriptionDone(ajanta.naming.URN agURN)
                           throws java.rmi.RemoteException,
                                  java.rmi.AlreadyBoundException
java.rmi.RemoteException
java.rmi.AlreadyBoundException

checkStart

public boolean checkStart(ajanta.naming.URN agURN)
                   throws java.rmi.RemoteException
java.rmi.RemoteException

agentReached

public void agentReached(java.lang.String agentType,
                         ajanta.naming.URN monAgentURN)
                  throws java.rmi.RemoteException,
                         java.rmi.AlreadyBoundException
java.rmi.RemoteException
java.rmi.AlreadyBoundException

getList

public java.util.Vector getList()
Returns:

put

public void put(java.util.Vector eventList,
                ajanta.naming.URN agentURN)
Returns:

removeSubscription

public void removeSubscription(java.util.Vector eList)

getEventList

public java.util.Vector getEventList()
Returns:

addEvents

public void addEvents(java.util.Vector eventList)

getNext

public network.manager.SubscriptionObject getNext()
Returns:

resetIndex

public void resetIndex()

remove

public void remove(network.manager.SubscriptionObject subObject)

removeSubscription

public void removeSubscription(ajanta.naming.URN agentURN,
                               java.util.Vector eventList)

createObject

public static java.lang.Object createObject(java.lang.String className,
                                            java.lang.String argString,
                                            network.manager.ConfigObject configObj)
                                     throws java.lang.Exception
java.lang.Exception

equals

public boolean equals(java.lang.String className)
Parameters:
className -
Returns:

getEventName

public java.lang.String getEventName()
Returns:

getPattern

public java.lang.String getPattern()
Returns:

getProcInstr

public java.lang.String getProcInstr()
Returns:

getAction

public int getAction()
Returns:

getUserName

public java.lang.String getUserName()
Returns:

getUserID

public int getUserID()
Returns:

getGID

public int getGID()
Returns:

getPid

public int getPid()
Returns:

getPPid

public int getPPid()
Returns:

getExecTime

public java.lang.String getExecTime()
Returns:

getCPUTime

public java.lang.String getCPUTime()
Returns:

getPCPU

public double getPCPU()
Returns:

getMemUsage

public double getMemUsage()
Returns:

getVirtMemUsage

public int getVirtMemUsage()
Returns:

getNLWP

public int getNLWP()
Returns:

getNiceValue

public java.lang.String getNiceValue()
Returns:

getSchedClass

public java.lang.String getSchedClass()
Returns:

getState

public java.lang.String getState()
Returns:

getTTY

public java.lang.String getTTY()
Returns:

getPriority

public int getPriority()
Returns:

getArgs

public java.lang.String getArgs()
Returns:

getDetectorsVector

public java.util.Vector getDetectorsVector()
Returns:

putDetectorsVector

public void putDetectorsVector(java.util.Vector newVector)
Parameters:
newVector -
Returns:

test

public void test(java.lang.String e)
          throws java.rmi.RemoteException
java.rmi.RemoteException

addNewSubscription

public void addNewSubscription(ajanta.naming.URN publisherURN,
                               ajanta.naming.URN subscriberURN,
                               java.lang.String eventName,
                               java.lang.String eventHandler)
                        throws java.lang.Exception
Interface method to add a subscription to an agent Called by the proxy object

Parameters:
publisherURN -
subscriberURN -
eventName -
eventHandler -
java.lang.Exception

terminateChildAgent

public void terminateChildAgent(ajanta.naming.URN agentURN)
                         throws java.lang.Exception
Interface method to terminate agent launched by this SMS Called by proxy object

Parameters:
agentURN -
Returns:
java.lang.Exception

modifyDetectorOnAgent

public void modifyDetectorOnAgent(ajanta.naming.URN agentURN,
                                  java.lang.String eventDetector,
                                  java.lang.Object[] object)
                           throws java.lang.Exception
java.lang.Exception

removeSubscribeRelation

public void removeSubscribeRelation(ajanta.naming.URN publisherURN,
                                    ajanta.naming.URN subscriberURN,
                                    java.lang.String eventName)
                             throws java.lang.Exception
Method to remove the publish-subscribe relation

Parameters:
publisherURN -
subscriberURN -
eventName -
java.lang.Exception

removeDetectorOnAgent

public void removeDetectorOnAgent(ajanta.naming.URN agentURN,
                                  java.lang.String detectorName)
                           throws java.lang.Exception
Remote Interface method to remove a detector from an agent

java.lang.Exception

registerForEvents

public void registerForEvents(java.lang.String configHandle,
                              java.lang.String url,
                              java.util.Vector eventList)
                       throws java.lang.Exception
Overloaded method for handling events taken from the Event queue of the SMSAgent /** register for interesting events from the default subscriber

Parameters:
url -
eventList -
java.lang.Exception

unregisterForEvents

public void unregisterForEvents(java.lang.String configHandle,
                                java.lang.String url,
                                java.util.Vector v)
                         throws java.lang.Exception
register for interesting events from the default subscriber

Parameters:
url -
java.lang.Exception

registerForHostStatusEvents

public void registerForHostStatusEvents(java.lang.String clientURL,
                                        java.util.Vector configHandles)
                                 throws java.lang.Exception
java.lang.Exception

unregisterForAllHostStatusEvents

public void unregisterForAllHostStatusEvents(java.lang.String clientURL)
                                      throws java.lang.Exception
java.lang.Exception

registerGUI

public void registerGUI(java.lang.String url)

setValues

public void setValues(network.manager.DBModule dbModule,
                      ajanta.agent.Agent agentRef,
                      java.util.Hashtable seqNumbersHashtable,
                      network.manager.ConfigManager configManager,
                      network.manager.EventQueueSync reportedEventList,
                      java.util.Hashtable listOfEventSubscribers,
                      network.manager.EventIDGenerator eventIDGenerator)

execute

public void execute(java.lang.String command)
             throws java.lang.Exception
java.lang.Exception

getLastReadTime

public static void getLastReadTime(network.detectors.SyslogEventDetector eventDetector,
                                   java.lang.String agURN)
                            throws java.lang.Exception
java.lang.Exception

getSourceUserName

public java.lang.String getSourceUserName()

getSourceHost

public java.lang.String getSourceHost()

getSourcePort

public java.lang.String getSourcePort()

getTime

public java.lang.String getTime()

getTargetAgentURN

public ajanta.naming.URN getTargetAgentURN()

setSourceUserName

public void setSourceUserName(java.lang.String uName)