OpenNMS API 1.2.3

org.opennms.netmgt.capsd
Class AbstractTcpPlugin

java.lang.Object
  extended byorg.opennms.netmgt.capsd.AbstractPlugin
      extended byorg.opennms.netmgt.capsd.AbstractTcpPlugin
All Implemented Interfaces:
Plugin
Direct Known Subclasses:
CitrixPlugin, DominoIIOPPlugin, FtpPlugin, HttpPlugin, ImapPlugin

public abstract class AbstractTcpPlugin
extends AbstractPlugin

Implements the basic functionality of a Tcp based servicethat can be discovered by OpenNMS. It extends the AbstractPlugin class and provides methods for creating the sockets and dealing with timeouts and reteries.

Author:
Matt Brozowski

Field Summary
(package private)  int m_defaultPort
           
(package private)  int m_defaultRetry
           
(package private)  int m_defaultTimeout
           
(package private)  java.lang.String m_pluginName
           
(package private)  java.lang.String m_protocolName
           
 
Constructor Summary
protected AbstractTcpPlugin(java.lang.String protocol, int defaultTimeout, int defaultRetry)
           
protected AbstractTcpPlugin(java.lang.String protocol, int defaultPort, int defaultTimeout, int defaultRetry)
           
 
Method Summary
protected  boolean checkConnection(ConnectionConfig config)
           Test to see if the passed host-port pair is the endpoint for an Citrix server.
protected abstract  boolean checkProtocol(java.net.Socket socket, ConnectionConfig config)
           
protected  void closeSocket(java.net.Socket socket, ConnectionConfig config)
           
protected  ConnectionConfig createConnectionConfig(java.net.InetAddress address, int port)
           
protected  java.util.List getConnectionConfigList(java.util.Map qualifiers, java.net.InetAddress address)
           
protected  int getKeyedInteger(java.util.Map qualifiers, java.lang.String key, int defaultVal)
           
protected  int[] getKeyedIntegerArray(java.util.Map qualifiers, java.lang.String key, int[] defaultVal)
           
 java.lang.String getPluginName()
           
 java.lang.String getProtocolName()
          Returns the name of the protocol that this plugin checks on the target system for support.
 boolean isProtocolSupported(java.net.InetAddress address)
          Returns true if the protocol defined by this plugin is supported.
 boolean isProtocolSupported(java.net.InetAddress address, java.util.Map qualifiers)
          Returns true if the protocol defined by this plugin is supported.
protected  void populateConnectionConfig(ConnectionConfig config, java.util.Map qualifiers)
           
protected  boolean preconnectCheck(ConnectionConfig config)
           
protected  void saveConfig(java.util.Map qualifiers, ConnectionConfig config)
           
protected  void saveKeyedInteger(java.util.Map qualifiers, java.lang.String key, int value)
           
 void setPluginName(java.lang.String pluginName)
           
protected  java.net.Socket wrapSocket(java.net.Socket socket, ConnectionConfig config)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_defaultPort

int m_defaultPort

m_defaultRetry

int m_defaultRetry

m_defaultTimeout

int m_defaultTimeout

m_pluginName

java.lang.String m_pluginName

m_protocolName

java.lang.String m_protocolName
Constructor Detail

AbstractTcpPlugin

protected AbstractTcpPlugin(java.lang.String protocol,
                            int defaultTimeout,
                            int defaultRetry)

AbstractTcpPlugin

protected AbstractTcpPlugin(java.lang.String protocol,
                            int defaultPort,
                            int defaultTimeout,
                            int defaultRetry)
Method Detail

checkConnection

protected final boolean checkConnection(ConnectionConfig config)

Test to see if the passed host-port pair is the endpoint for an Citrix server. If there is an Citrix server at that destination then a value of true is returned from the method. Otherwise a false value is returned to the caller.

Parameters:
config -
Returns:
True if server supports Citrix on the specified port, false otherwise

closeSocket

protected void closeSocket(java.net.Socket socket,
                           ConnectionConfig config)

checkProtocol

protected abstract boolean checkProtocol(java.net.Socket socket,
                                         ConnectionConfig config)
                                  throws java.lang.Exception
Throws:
java.lang.Exception

createConnectionConfig

protected ConnectionConfig createConnectionConfig(java.net.InetAddress address,
                                                  int port)

getConnectionConfigList

protected java.util.List getConnectionConfigList(java.util.Map qualifiers,
                                                 java.net.InetAddress address)

getKeyedInteger

protected final int getKeyedInteger(java.util.Map qualifiers,
                                    java.lang.String key,
                                    int defaultVal)

getKeyedIntegerArray

protected final int[] getKeyedIntegerArray(java.util.Map qualifiers,
                                           java.lang.String key,
                                           int[] defaultVal)

getPluginName

public final java.lang.String getPluginName()
Returns:
Returns the pluginName.

getProtocolName

public final java.lang.String getProtocolName()
Returns the name of the protocol that this plugin checks on the target system for support.

Specified by:
getProtocolName in interface Plugin
Specified by:
getProtocolName in class AbstractPlugin
Returns:
The protocol name for this plugin.

isProtocolSupported

public final boolean isProtocolSupported(java.net.InetAddress address)
Returns true if the protocol defined by this plugin is supported. If the protocol is not supported then a false value is returned to the caller.

Specified by:
isProtocolSupported in interface Plugin
Specified by:
isProtocolSupported in class AbstractPlugin
Parameters:
address - The address to check for support.
Returns:
True if the protocol is supported by the address.

isProtocolSupported

public final boolean isProtocolSupported(java.net.InetAddress address,
                                         java.util.Map qualifiers)
Returns true if the protocol defined by this plugin is supported. If the protocol is not supported then a false value is returned to the caller. The qualifier map passed to the method is used by the plugin to return additional information by key-name. These key-value pairs can be added to service events if needed.

Specified by:
isProtocolSupported in interface Plugin
Specified by:
isProtocolSupported in class AbstractPlugin
Parameters:
address - The address to check for support.
qualifiers - The map where qualification are set by the plugin.
Returns:
True if the protocol is supported by the address.

populateConnectionConfig

protected void populateConnectionConfig(ConnectionConfig config,
                                        java.util.Map qualifiers)

preconnectCheck

protected boolean preconnectCheck(ConnectionConfig config)

saveConfig

protected void saveConfig(java.util.Map qualifiers,
                          ConnectionConfig config)

saveKeyedInteger

protected final void saveKeyedInteger(java.util.Map qualifiers,
                                      java.lang.String key,
                                      int value)

setPluginName

public final void setPluginName(java.lang.String pluginName)
Parameters:
pluginName - The pluginName to set.

wrapSocket

protected java.net.Socket wrapSocket(java.net.Socket socket,
                                     ConnectionConfig config)
                              throws java.lang.Exception
Throws:
java.lang.Exception

OpenNMS API 1.2.3

Generated by eevans on May 29 2005 2015.