icinga2/icinga/subscriptioncomponent.h

29 lines
764 B
C++

#ifndef I2_SUBSCRIPTIONCOMPONENT_H
#define I2_SUBSCRIPTIONCOMPONENT_H
namespace icinga
{
class SubscriptionComponent : public IcingaComponent
{
private:
VirtualEndpoint::Ptr m_SubscriptionEndpoint;
int NewEndpointHandler(const NewEndpointEventArgs& neea);
int SubscribeMessageHandler(const NewRequestEventArgs& nrea);
int ProvideMessageHandler(const NewRequestEventArgs& nrea);
int IdentityMessageHandler(const NewRequestEventArgs& nrea);
int SyncSubscription(Endpoint::Ptr target, string type, const NewMethodEventArgs& nmea);
int SyncSubscriptions(Endpoint::Ptr target, const NewEndpointEventArgs& neea);
public:
virtual string GetName(void) const;
virtual void Start(void);
virtual void Stop(void);
};
}
#endif /* I2_SUBSCRIPTIONCOMPONENT_H */