2026-01-27 09:06:40 -05:00
|
|
|
// SPDX-FileCopyrightText: 2012 Icinga GmbH <https://icinga.com>
|
|
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
2014-04-23 06:44:36 -04:00
|
|
|
|
|
|
|
|
#ifndef OBJECTRULE_H
|
|
|
|
|
#define OBJECTRULE_H
|
|
|
|
|
|
2014-05-25 10:23:35 -04:00
|
|
|
#include "config/i2-config.hpp"
|
2014-10-16 11:44:06 -04:00
|
|
|
#include "config/expression.hpp"
|
2014-09-09 08:49:21 -04:00
|
|
|
#include "base/debuginfo.hpp"
|
2014-11-16 10:20:39 -05:00
|
|
|
#include <set>
|
2014-04-23 06:44:36 -04:00
|
|
|
|
|
|
|
|
namespace icinga
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @ingroup config
|
|
|
|
|
*/
|
2017-12-31 01:22:16 -05:00
|
|
|
class ObjectRule
|
2014-04-23 06:44:36 -04:00
|
|
|
{
|
|
|
|
|
public:
|
2014-11-16 10:20:39 -05:00
|
|
|
typedef std::set<String> TypeSet;
|
2014-04-23 06:44:36 -04:00
|
|
|
|
2014-11-16 10:20:39 -05:00
|
|
|
static void RegisterType(const String& sourceType);
|
2014-04-23 06:44:36 -04:00
|
|
|
static bool IsValidSourceType(const String& sourceType);
|
|
|
|
|
|
|
|
|
|
private:
|
2018-01-03 22:25:35 -05:00
|
|
|
ObjectRule();
|
2014-04-23 06:44:36 -04:00
|
|
|
|
2014-11-16 10:20:39 -05:00
|
|
|
static TypeSet m_Types;
|
2014-04-23 06:44:36 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif /* OBJECTRULE_H */
|