LogService
libdadi: utility tools for distributed applications
Public Member Functions | List of all members
LogCentralTool_impl Class Reference

#include <LogCentralTool_impl.hh>

Inheritance diagram for LogCentralTool_impl:
Inheritance graph
[legend]
Collaboration diagram for LogCentralTool_impl:
Collaboration graph
[legend]

Public Member Functions

 LogCentralTool_impl (ToolList *toolList, ComponentList *compList, FilterManagerInterface *filterMan, StateManager *stateMan, tag_list_t *allTags)
 
void test ()
 
CORBA::Short connectTool (char *&toolName, const char *msgReceiver)
 
CORBA::Short disconnectTool (const char *toolName)
 
tag_list_tgetDefinedTags ()
 
component_list_tgetDefinedComponents ()
 
CORBA::Short addFilter (const char *toolName, const filter_t &filter)
 
CORBA::Short removeFilter (const char *toolName, const char *filterName)
 
CORBA::Short flushAllFilters (const char *toolName)
 
- Public Member Functions inherited from POA_LogCentralTool
inline::LogCentralTool_ptr _this ()
 
- Public Member Functions inherited from _impl_LogCentralTool
virtual ::CORBA::Short addFilter (const char *toolName, const ::filter_t &filter)=0
 
virtual _CORBA_Boolean _dispatch (omniCallHandle &)
 

Detailed Description

Errorlevel constants for connectComponent (defined in the idl) const short LS_OK const short LS_TOOL_CONNECT_ALREADYEXISTS const short LS_TOOL_DISCONNECT_NOTEXISTS const short LS_TOOL_ADDFILTER_ALREADYEXISTS const short LS_TOOL_REMOVEFILTER_NOTEXISTS Implements the tool servant for the logCentral. Attaches and detaches tools and forwards their filter-configurations to the FilterManager

Member Function Documentation

CORBA::Short LogCentralTool_impl::addFilter ( const char *  toolName,
const filter_t filter 
)

Add a (posivive) filter for this tool. Messages matching this filter will be forwarded to the tool.

Parameters
toolNamethe name of the tool, which adds the filter
filterthe filterconfiguration containing the filtername, a list of tags and a list of components
Returns
if the filter could be added properly
CORBA::Short LogCentralTool_impl::connectTool ( char *&  toolName,
const char *  msgReceiver 
)
virtual

Connects a new Tool to the monitor. Registers the tool internally with its unique toolName and creates all necessary outbuffers, ... Provides a unique name for the tool if the given toolName is the empty string. (Attention: the omniidl is buggy for string INOUT. The String_INOUT_arg of the LogTool.hh must be replaced by char*&)

Parameters
toolNamethe unique name of the tool
msgReceivermessageConsumer of the tool, which processes incoming messages for the tool
Returns
if the connection was successful

Implements _impl_LogCentralTool.

CORBA::Short LogCentralTool_impl::disconnectTool ( const char *  toolName)
virtual

Disconnect a tool from the monitor. Remove the tools filters and deregister tool.

Parameters
toolNamethe unique name of the tool
Returns
if the deconnection was successful

Implements _impl_LogCentralTool.

CORBA::Short LogCentralTool_impl::flushAllFilters ( const char *  toolName)
virtual

Remove all existing filters of the tool.

Parameters
toolNamethe name of the tool whose filterlist will be cleared

Implements _impl_LogCentralTool.

component_list_t* LogCentralTool_impl::getDefinedComponents ( )
virtual

Returns a list of currently attached components. This is just a convenience function, as all the whole systemstate including all components are sent to the tool upon connection in form of messages.

Implements _impl_LogCentralTool.

tag_list_t* LogCentralTool_impl::getDefinedTags ( )
virtual

Returns a list of configured tags. This is just a convenience function. It relies on the configuration of the monitor and must not reflect the real system.

Implements _impl_LogCentralTool.

CORBA::Short LogCentralTool_impl::removeFilter ( const char *  toolName,
const char *  filterName 
)
virtual

Remove a existing filter from the list.

Parameters
toolNamethe name of the tool who added the filter
filterNamethe name of the filter
Returns
if the filter could be removed properly

Implements _impl_LogCentralTool.


The documentation for this class was generated from the following file: