mirror of https://github.com/Icinga/icinga2.git
Updated doxygen documentation.
This commit is contained in:
parent
d4fc6fc672
commit
fee4246f55
|
@ -648,7 +648,7 @@ WARN_LOGFILE =
|
||||||
# directories like "/usr/src/myproject". Separate the files or directories
|
# directories like "/usr/src/myproject". Separate the files or directories
|
||||||
# with spaces.
|
# with spaces.
|
||||||
|
|
||||||
INPUT = @top_srcdir@/base @top_srcdir@/jsonrpc @top_srcdir@/icinga @top_srcdir@/components @top_srcdir@/icinga-app
|
INPUT = lib/base lib/config lib/icinga lib/remoting components icinga-app
|
||||||
|
|
||||||
# This tag can be used to specify the character encoding of the source files
|
# This tag can be used to specify the character encoding of the source files
|
||||||
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
|
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Interface for application extensions.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
class I2_BASE_API IComponent : public Object
|
class I2_BASE_API IComponent : public Object
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -217,9 +217,8 @@ Dictionary::Ptr Dictionary::FromJson(cJSON *json)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Converts a dictionary to a JSON object.
|
* Converts this dictionary to a JSON object.
|
||||||
*
|
*
|
||||||
* @param dictionary The dictionary.
|
|
||||||
* @returns A JSON object that is equivalent to the dictionary. Values that
|
* @returns A JSON object that is equivalent to the dictionary. Values that
|
||||||
* cannot be represented in JSON are omitted.
|
* cannot be represented in JSON are omitted.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -23,6 +23,9 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The type of an attribute for a DynamicObject.
|
||||||
|
*/
|
||||||
enum DynamicAttributeType
|
enum DynamicAttributeType
|
||||||
{
|
{
|
||||||
Attribute_Transient = 1,
|
Attribute_Transient = 1,
|
||||||
|
@ -43,6 +46,9 @@ enum DynamicAttributeType
|
||||||
Attribute_All = Attribute_Transient | Attribute_Local | Attribute_Replicated | Attribute_Config
|
Attribute_All = Attribute_Transient | Attribute_Local | Attribute_Replicated | Attribute_Config
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An attribute for a DynamicObject.
|
||||||
|
*/
|
||||||
struct DynamicAttribute
|
struct DynamicAttribute
|
||||||
{
|
{
|
||||||
Value Data;
|
Value Data;
|
||||||
|
@ -51,7 +57,8 @@ struct DynamicAttribute
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A dynamic object that can be instantiated from the configuration file.
|
* A dynamic object that can be instantiated from the configuration file
|
||||||
|
* and that supports attribute replication to remote application instances.
|
||||||
*
|
*
|
||||||
* @ingroup base
|
* @ingroup base
|
||||||
*/
|
*/
|
||||||
|
@ -147,6 +154,11 @@ private:
|
||||||
void InternalApplyUpdate(const Dictionary::Ptr& serializedUpdate, int allowedTypes, bool suppressEvents);
|
void InternalApplyUpdate(const Dictionary::Ptr& serializedUpdate, int allowedTypes, bool suppressEvents);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper class for registering DynamicObject implementation classes.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
class RegisterClassHelper
|
class RegisterClassHelper
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A thread-safe event that can be posted to the main thread's event queue.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
class I2_BASE_API Event
|
class I2_BASE_API Event
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -130,21 +130,6 @@ void FIFO::Read(void *buffer, size_t count)
|
||||||
Optimize();
|
Optimize();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns a pointer to the start of the write buffer.
|
|
||||||
*
|
|
||||||
* @param count Minimum size of the buffer; on return this parameter
|
|
||||||
* contains the actual size of the available buffer which can
|
|
||||||
* be larger than the requested size.
|
|
||||||
*/
|
|
||||||
/*void *FIFO::GetWriteBuffer(size_t *count)
|
|
||||||
{
|
|
||||||
ResizeBuffer(m_Offset + m_DataSize + *count);
|
|
||||||
*count = m_AllocSize - m_Offset - m_DataSize;
|
|
||||||
|
|
||||||
return m_Buffer + m_Offset + m_DataSize;
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Implements IOQueue::Write.
|
* Implements IOQueue::Write.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -25,6 +25,8 @@ namespace icinga
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An I/O queue.
|
* An I/O queue.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
*/
|
*/
|
||||||
class IOQueue
|
class IOQueue
|
||||||
{
|
{
|
||||||
|
@ -41,8 +43,8 @@ public:
|
||||||
* to read more data than is available in the queue is a programming error.
|
* to read more data than is available in the queue is a programming error.
|
||||||
* Use GetBytesAvailable() to check how much data is available.
|
* Use GetBytesAvailable() to check how much data is available.
|
||||||
*
|
*
|
||||||
* @buffer The buffer where data should be stored. May be NULL if you're
|
* @param buffer The buffer where data should be stored. May be NULL if
|
||||||
* not actually interested in the data.
|
* you're not actually interested in the data.
|
||||||
* @param count The number of bytes to read from the queue.
|
* @param count The number of bytes to read from the queue.
|
||||||
*/
|
*/
|
||||||
virtual void Peek(void *buffer, size_t count) = 0;
|
virtual void Peek(void *buffer, size_t count) = 0;
|
||||||
|
|
|
@ -24,10 +24,9 @@ using namespace icinga;
|
||||||
REGISTER_CLASS(Logger);
|
REGISTER_CLASS(Logger);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor for the logger class.
|
* Constructor for the Logger class.
|
||||||
*
|
*
|
||||||
* @param minSeverity The minimum severity of log messages that should be sent
|
* @param properties A serialized dictionary containing attributes.
|
||||||
* to this logger.
|
|
||||||
*/
|
*/
|
||||||
Logger::Logger(const Dictionary::Ptr& properties)
|
Logger::Logger(const Dictionary::Ptr& properties)
|
||||||
: DynamicObject(properties)
|
: DynamicObject(properties)
|
||||||
|
|
|
@ -50,6 +50,8 @@ struct LogEntry {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base class for all loggers.
|
* Base class for all loggers.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
*/
|
*/
|
||||||
class I2_BASE_API ILogger : public Object
|
class I2_BASE_API ILogger : public Object
|
||||||
{
|
{
|
||||||
|
@ -68,6 +70,11 @@ private:
|
||||||
friend class Logger;
|
friend class Logger;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A log provider. Can be instantiated from the config.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
class I2_BASE_API Logger : public DynamicObject
|
class I2_BASE_API Logger : public DynamicObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -24,9 +24,9 @@ using namespace icinga;
|
||||||
/**
|
/**
|
||||||
* Reads data from an IOQueue in netString format.
|
* Reads data from an IOQueue in netString format.
|
||||||
*
|
*
|
||||||
* @param fifo The IOQueue to read from.
|
* @param queue The IOQueue to read from.
|
||||||
* @param[out] str The String that has been read from the FIFO.
|
* @param[out] str The String that has been read from the IOQueue.
|
||||||
* @returns true if a complete String was read from the FIFO, false otherwise.
|
* @returns true if a complete String was read from the IOQueue, false otherwise.
|
||||||
* @exception invalid_argument The input stream is invalid.
|
* @exception invalid_argument The input stream is invalid.
|
||||||
* @see https://github.com/PeterScott/netString-c/blob/master/netString.c
|
* @see https://github.com/PeterScott/netString-c/blob/master/netString.c
|
||||||
*/
|
*/
|
||||||
|
@ -104,16 +104,16 @@ bool NetString::ReadStringFromIOQueue(IOQueue *queue, String *str)
|
||||||
|
|
||||||
free(buffer);
|
free(buffer);
|
||||||
|
|
||||||
/* remove the data from the fifo */
|
/* remove the data from the IOQueue */
|
||||||
queue->Read(NULL, buffer_length);
|
queue->Read(NULL, buffer_length);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Writes data into a FIFO using the netString format.
|
* Writes data into an IOQueue using the netString format.
|
||||||
*
|
*
|
||||||
* @param fifo The FIFO.
|
* @param queue The IOQueue.
|
||||||
* @param str The String that is to be written.
|
* @param str The String that is to be written.
|
||||||
*/
|
*/
|
||||||
void NetString::WriteStringToIOQueue(IOQueue *queue, const String& str)
|
void NetString::WriteStringToIOQueue(IOQueue *queue, const String& str)
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The result of a Process task.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
struct ProcessResult
|
struct ProcessResult
|
||||||
{
|
{
|
||||||
double ExecutionStart;
|
double ExecutionStart;
|
||||||
|
@ -31,6 +36,12 @@ struct ProcessResult
|
||||||
String Output;
|
String Output;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A process task. Executes an external application and returns the exit
|
||||||
|
* code and console output.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
class I2_BASE_API Process : public AsyncTask<Process, ProcessResult>
|
class I2_BASE_API Process : public AsyncTask<Process, ProcessResult>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -1,3 +1,22 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Icinga 2 *
|
||||||
|
* Copyright (C) 2012 Icinga Development Team (http://www.icinga.org/) *
|
||||||
|
* *
|
||||||
|
* This program is free software; you can redistribute it and/or *
|
||||||
|
* modify it under the terms of the GNU General Public License *
|
||||||
|
* as published by the Free Software Foundation; either version 2 *
|
||||||
|
* of the License, or (at your option) any later version. *
|
||||||
|
* *
|
||||||
|
* This program is distributed in the hope that it will be useful, *
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||||
|
* GNU General Public License for more details. *
|
||||||
|
* *
|
||||||
|
* You should have received a copy of the GNU General Public License *
|
||||||
|
* along with this program; if not, write to the Free Software Foundation *
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
#include "i2-base.h"
|
#include "i2-base.h"
|
||||||
|
|
||||||
using namespace icinga;
|
using namespace icinga;
|
||||||
|
|
|
@ -1,3 +1,22 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Icinga 2 *
|
||||||
|
* Copyright (C) 2012 Icinga Development Team (http://www.icinga.org/) *
|
||||||
|
* *
|
||||||
|
* This program is free software; you can redistribute it and/or *
|
||||||
|
* modify it under the terms of the GNU General Public License *
|
||||||
|
* as published by the Free Software Foundation; either version 2 *
|
||||||
|
* of the License, or (at your option) any later version. *
|
||||||
|
* *
|
||||||
|
* This program is distributed in the hope that it will be useful, *
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||||
|
* GNU General Public License for more details. *
|
||||||
|
* *
|
||||||
|
* You should have received a copy of the GNU General Public License *
|
||||||
|
* along with this program; if not, write to the Free Software Foundation *
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
#ifndef STRING_H
|
#ifndef STRING_H
|
||||||
#define STRING_H
|
#define STRING_H
|
||||||
|
|
||||||
|
@ -6,7 +25,7 @@ namespace icinga {
|
||||||
/**
|
/**
|
||||||
* String class.
|
* String class.
|
||||||
*
|
*
|
||||||
* Rationale: The std::string class has an ambiguous assignment
|
* Rationale for having this: The std::string class has an ambiguous assignment
|
||||||
* operator when used in conjunction with the Value class.
|
* operator when used in conjunction with the Value class.
|
||||||
*/
|
*/
|
||||||
class I2_BASE_API String
|
class I2_BASE_API String
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A ring buffer that holds a pre-defined number of integers.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
class I2_BASE_API RingBuffer
|
class I2_BASE_API RingBuffer
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -25,6 +25,11 @@ namespace icinga
|
||||||
|
|
||||||
class ScriptTask;
|
class ScriptTask;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A script function that can be used to execute a script task.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
class I2_BASE_API ScriptFunction : public Object
|
class I2_BASE_API ScriptFunction : public Object
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A script task.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
|
*/
|
||||||
class I2_BASE_API ScriptTask : public AsyncTask<ScriptTask, Value>
|
class I2_BASE_API ScriptTask : public AsyncTask<ScriptTask, Value>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -13,7 +13,6 @@ StreamLogger::StreamLogger(void)
|
||||||
* Constructor for the StreamLogger class.
|
* Constructor for the StreamLogger class.
|
||||||
*
|
*
|
||||||
* @param stream The stream.
|
* @param stream The stream.
|
||||||
* @param minSeverity Minimum severity for log messages.
|
|
||||||
*/
|
*/
|
||||||
StreamLogger::StreamLogger(ostream *stream)
|
StreamLogger::StreamLogger(ostream *stream)
|
||||||
: ILogger(), m_Stream(stream), m_OwnsStream(false)
|
: ILogger(), m_Stream(stream), m_OwnsStream(false)
|
||||||
|
|
|
@ -5,7 +5,9 @@ namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A logger that logs to stdout.
|
* A logger that logs to an iostream.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
*/
|
*/
|
||||||
class I2_BASE_API StreamLogger : public ILogger
|
class I2_BASE_API StreamLogger : public ILogger
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,3 +1,22 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Icinga 2 *
|
||||||
|
* Copyright (C) 2012 Icinga Development Team (http://www.icinga.org/) *
|
||||||
|
* *
|
||||||
|
* This program is free software; you can redistribute it and/or *
|
||||||
|
* modify it under the terms of the GNU General Public License *
|
||||||
|
* as published by the Free Software Foundation; either version 2 *
|
||||||
|
* of the License, or (at your option) any later version. *
|
||||||
|
* *
|
||||||
|
* This program is distributed in the hope that it will be useful, *
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||||
|
* GNU General Public License for more details. *
|
||||||
|
* *
|
||||||
|
* You should have received a copy of the GNU General Public License *
|
||||||
|
* along with this program; if not, write to the Free Software Foundation *
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
#include "i2-base.h"
|
#include "i2-base.h"
|
||||||
|
|
||||||
#ifndef _WIN32
|
#ifndef _WIN32
|
||||||
|
|
|
@ -1,3 +1,22 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Icinga 2 *
|
||||||
|
* Copyright (C) 2012 Icinga Development Team (http://www.icinga.org/) *
|
||||||
|
* *
|
||||||
|
* This program is free software; you can redistribute it and/or *
|
||||||
|
* modify it under the terms of the GNU General Public License *
|
||||||
|
* as published by the Free Software Foundation; either version 2 *
|
||||||
|
* of the License, or (at your option) any later version. *
|
||||||
|
* *
|
||||||
|
* This program is distributed in the hope that it will be useful, *
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||||
|
* GNU General Public License for more details. *
|
||||||
|
* *
|
||||||
|
* You should have received a copy of the GNU General Public License *
|
||||||
|
* along with this program; if not, write to the Free Software Foundation *
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
#ifndef SYSLOGLOGGER_H
|
#ifndef SYSLOGLOGGER_H
|
||||||
#define SYSLOGLOGGER_H
|
#define SYSLOGLOGGER_H
|
||||||
|
|
||||||
|
@ -7,6 +26,8 @@ namespace icinga
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A logger that logs to syslog.
|
* A logger that logs to syslog.
|
||||||
|
*
|
||||||
|
* @ingroup base
|
||||||
*/
|
*/
|
||||||
class I2_BASE_API SyslogLogger : public ILogger
|
class I2_BASE_API SyslogLogger : public ILogger
|
||||||
{
|
{
|
||||||
|
|
|
@ -39,7 +39,7 @@ public:
|
||||||
|
|
||||||
TcpServer(void);
|
TcpServer(void);
|
||||||
|
|
||||||
void SetClientFactory(const ClientFactory& function);
|
void SetClientFactory(const ClientFactory& clientFactory);
|
||||||
ClientFactory GetFactoryFunction(void) const;
|
ClientFactory GetFactoryFunction(void) const;
|
||||||
|
|
||||||
void Listen(void);
|
void Listen(void);
|
||||||
|
|
|
@ -249,7 +249,7 @@ String Utility::BaseName(const String& path)
|
||||||
/**
|
/**
|
||||||
* Null deleter. Used as a parameter for the shared_ptr constructor.
|
* Null deleter. Used as a parameter for the shared_ptr constructor.
|
||||||
*
|
*
|
||||||
* @param -- The object that should be deleted.
|
* @param - The object that should be deleted.
|
||||||
*/
|
*/
|
||||||
void Utility::NullDeleter(void *)
|
void Utility::NullDeleter(void *)
|
||||||
{
|
{
|
||||||
|
|
|
@ -44,7 +44,7 @@ public:
|
||||||
static String DirName(const String& path);
|
static String DirName(const String& path);
|
||||||
static String BaseName(const String& path);
|
static String BaseName(const String& path);
|
||||||
|
|
||||||
static void NullDeleter(void *obj);
|
static void NullDeleter(void *);
|
||||||
|
|
||||||
static double GetTime(void);
|
static double GetTime(void);
|
||||||
|
|
||||||
|
|
|
@ -133,7 +133,7 @@ cJSON *Value::ToJson(void) const
|
||||||
/**
|
/**
|
||||||
* Deserializes the string representation of a variant.
|
* Deserializes the string representation of a variant.
|
||||||
*
|
*
|
||||||
* @params jsonString A JSON string obtained from Value::Serialize
|
* @param jsonString A JSON string obtained from Value::Serialize
|
||||||
* @returns The newly deserialized variant.
|
* @returns The newly deserialized variant.
|
||||||
*/
|
*/
|
||||||
Value Value::Deserialize(const String& jsonString)
|
Value Value::Deserialize(const String& jsonString)
|
||||||
|
|
|
@ -21,10 +21,11 @@
|
||||||
#define I2CONFIG_H
|
#define I2CONFIG_H
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @defgroup config Dynamic object library
|
* @defgroup config Configuration library
|
||||||
*
|
*
|
||||||
* The dynamic object library implements serializable objects which support
|
* The configuration library implements a compiler for Icinga 2's configuration
|
||||||
* inheritance.
|
* format. It also provides functionality to create configuration objects
|
||||||
|
* at runtime.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <i2-base.h>
|
#include <i2-base.h>
|
||||||
|
|
|
@ -23,6 +23,12 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Common Information Base class. Holds some statistics (and will likely be
|
||||||
|
* removed/refactored).
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API CIB
|
class I2_ICINGA_API CIB
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An Icinga host.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API Host : public DynamicObject
|
class I2_ICINGA_API Host : public DynamicObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An Icinga host group.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API HostGroup : public DynamicObject
|
class I2_ICINGA_API HostGroup : public DynamicObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -21,10 +21,10 @@
|
||||||
#define I2ICINGA_H
|
#define I2ICINGA_H
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @defgroup icinga Icinga application
|
* @defgroup icinga Icinga library
|
||||||
*
|
*
|
||||||
* The Icinga application is in charge of boot-strapping the Icinga
|
* The Icinga library implements all Icinga-specific functionality that is
|
||||||
* environment and loading additional components.
|
* common to all components (e.g. hosts, services, etc.).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <i2-base.h>
|
#include <i2-base.h>
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resolves macros.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API MacroProcessor
|
class I2_ICINGA_API MacroProcessor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Implements Nagios(TM)-style checks.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API NagiosCheckTask
|
class I2_ICINGA_API NagiosCheckTask
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test class for additional check types. Implements the "null" check type.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API NullCheckTask
|
class I2_ICINGA_API NullCheckTask
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The state of a service.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
enum ServiceState
|
enum ServiceState
|
||||||
{
|
{
|
||||||
StateOK,
|
StateOK,
|
||||||
|
@ -32,6 +37,11 @@ enum ServiceState
|
||||||
StateUncheckable,
|
StateUncheckable,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The state type of a service.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
enum ServiceStateType
|
enum ServiceStateType
|
||||||
{
|
{
|
||||||
StateTypeSoft,
|
StateTypeSoft,
|
||||||
|
@ -41,6 +51,11 @@ enum ServiceStateType
|
||||||
class CheckResultMessage;
|
class CheckResultMessage;
|
||||||
class ServiceStatusMessage;
|
class ServiceStatusMessage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An Icinga service.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API Service : public DynamicObject
|
class I2_ICINGA_API Service : public DynamicObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An Icinga service group.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API ServiceGroup : public DynamicObject
|
class I2_ICINGA_API ServiceGroup : public DynamicObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,11 @@
|
||||||
namespace icinga
|
namespace icinga
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A state change message for a service.
|
||||||
|
*
|
||||||
|
* @ingroup icinga
|
||||||
|
*/
|
||||||
class I2_ICINGA_API ServiceStateChangeMessage : public MessagePart
|
class I2_ICINGA_API ServiceStateChangeMessage : public MessagePart
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -28,7 +28,7 @@ class EndpointManager;
|
||||||
/**
|
/**
|
||||||
* An endpoint that can be used to send and receive messages.
|
* An endpoint that can be used to send and receive messages.
|
||||||
*
|
*
|
||||||
* @ingroup icinga
|
* @ingroup remoting
|
||||||
*/
|
*/
|
||||||
class I2_REMOTING_API Endpoint : public DynamicObject
|
class I2_REMOTING_API Endpoint : public DynamicObject
|
||||||
{
|
{
|
||||||
|
|
|
@ -26,7 +26,7 @@ namespace icinga
|
||||||
/**
|
/**
|
||||||
* Forwards messages between endpoints.
|
* Forwards messages between endpoints.
|
||||||
*
|
*
|
||||||
* @ingroup icinga
|
* @ingroup remoting
|
||||||
*/
|
*/
|
||||||
class I2_REMOTING_API EndpointManager : public Object
|
class I2_REMOTING_API EndpointManager : public Object
|
||||||
{
|
{
|
||||||
|
@ -56,10 +56,6 @@ public:
|
||||||
|
|
||||||
void ProcessResponseMessage(const Endpoint::Ptr& sender, const ResponseMessage& message);
|
void ProcessResponseMessage(const Endpoint::Ptr& sender, const ResponseMessage& message);
|
||||||
|
|
||||||
// void ForEachEndpoint(function<void (const EndpointManager::Ptr&, const Endpoint::Ptr&)> callback);
|
|
||||||
// Iterator Begin(void);
|
|
||||||
// Iterator End(void);
|
|
||||||
|
|
||||||
boost::signal<void (const EndpointManager::Ptr&, const Endpoint::Ptr&)> OnNewEndpoint;
|
boost::signal<void (const EndpointManager::Ptr&, const Endpoint::Ptr&)> OnNewEndpoint;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -78,7 +74,7 @@ private:
|
||||||
/**
|
/**
|
||||||
* Information about a pending API request.
|
* Information about a pending API request.
|
||||||
*
|
*
|
||||||
* @ingroup icinga
|
* @ingroup remoting
|
||||||
*/
|
*/
|
||||||
struct I2_REMOTING_API PendingRequest
|
struct I2_REMOTING_API PendingRequest
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,10 +21,10 @@
|
||||||
#define I2REMOTING_H
|
#define I2REMOTING_H
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @defgroup remoting JSON-RPC library
|
* @defgroup remoting Remoting library
|
||||||
*
|
*
|
||||||
* The JSON-RPC library implements server and client classes for the JSON-RPC
|
* Implements server and client classes for the JSON-RPC protocol. Also
|
||||||
* protocol.
|
* supports endpoint-based communication using messages.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <i2-base.h>
|
#include <i2-base.h>
|
||||||
|
|
|
@ -63,7 +63,7 @@ Dictionary::Ptr MessagePart::GetDictionary(void) const
|
||||||
* Retrieves a property's value.
|
* Retrieves a property's value.
|
||||||
*
|
*
|
||||||
* @param key The name of the property.
|
* @param key The name of the property.
|
||||||
* @param[out] The value.
|
* @param[out] value The value.
|
||||||
* @returns true if the value was retrieved, false otherwise.
|
* @returns true if the value was retrieved, false otherwise.
|
||||||
*/
|
*/
|
||||||
bool MessagePart::Get(String key, MessagePart *value) const
|
bool MessagePart::Get(String key, MessagePart *value) const
|
||||||
|
|
|
@ -45,7 +45,7 @@ public:
|
||||||
* Retrieves a property's value.
|
* Retrieves a property's value.
|
||||||
*
|
*
|
||||||
* @param key The name of the property.
|
* @param key The name of the property.
|
||||||
* @param[out] The value.
|
* @param[out] value The value.
|
||||||
* @returns true if the value was retrieved, false otherwise.
|
* @returns true if the value was retrieved, false otherwise.
|
||||||
*/
|
*/
|
||||||
template<typename T>
|
template<typename T>
|
||||||
|
|
Loading…
Reference in New Issue