10#ifndef ICE_INSTRUMENTATION_I_H
11#define ICE_INSTRUMENTATION_I_H
13#include <Ice/Connection.h>
14#include <Ice/MetricsObserverI.h>
19 template <
typename T,
typename O>
29 IceMX::ObserverT<T>::attach();
39 IceMX::ObserverT<T>::detach();
47 failed(
const std::string& exceptionName)
49 IceMX::ObserverT<T>::failed(exceptionName);
68 template <
typename ObserverImpl,
typename ObserverMetricsType,
typename ObserverPtrType>
71 const IceMX::MetricsHelperT<ObserverMetricsType>& helper,
74 ICE_INTERNAL_HANDLE<ObserverImpl> obsv =
75 IceMX::ObserverT<T>::template getObserver<ObserverImpl>(mapName, helper);
78 obsv->setDelegate(del);
93 const std::string& name) :
94 IceMX::ObserverFactoryT<
T>(metrics, name)
98 template <
typename ObserverMetricsType,
typename ObserverPtrType>
101 const ObserverPtrType& del)
103 ICE_INTERNAL_HANDLE<T> obsv = IceMX::ObserverFactoryT<T>::getObserver(helper);
106 obsv->setDelegate(del);
112 template <
typename ObserverMetricsType,
typename ObserverPtrType>
115 const ObserverPtrType& del,
116 const ObserverPtrType& old)
118 ICE_INTERNAL_HANDLE<T> obsv = IceMX::ObserverFactoryT<T>::getObserver(helper, old);
121 obsv->setDelegate(del);
128 template <
typename Helper>
132 attrs.add(
"endpoint", &Helper::getEndpoint);
134 attrs.add(
"endpointType", &Helper::getEndpointInfo, &Ice::EndpointInfo::type);
135 attrs.add(
"endpointIsDatagram", &Helper::getEndpointInfo, &Ice::EndpointInfo::datagram);
136 attrs.add(
"endpointIsSecure", &Helper::getEndpointInfo, &Ice::EndpointInfo::secure);
137 attrs.add(
"endpointTimeout", &Helper::getEndpointInfo, &Ice::EndpointInfo::timeout);
138 attrs.add(
"endpointCompress", &Helper::getEndpointInfo, &Ice::EndpointInfo::compress);
140 attrs.add(
"endpointHost", &Helper::getEndpointInfo, &Ice::IPEndpointInfo::host);
141 attrs.add(
"endpointPort", &Helper::getEndpointInfo, &Ice::IPEndpointInfo::port);
144 template <
typename Helper>
148 attrs.add(
"incoming", &Helper::getConnectionInfo, &Ice::ConnectionInfo::incoming);
149 attrs.add(
"adapterName", &Helper::getConnectionInfo, &Ice::ConnectionInfo::adapterName);
150 attrs.add(
"connectionId", &Helper::getConnectionInfo, &Ice::ConnectionInfo::connectionId);
152 attrs.add(
"localHost", &Helper::getConnectionInfo, &Ice::IPConnectionInfo::localAddress);
153 attrs.add(
"localPort", &Helper::getConnectionInfo, &Ice::IPConnectionInfo::localPort);
154 attrs.add(
"remoteHost", &Helper::getConnectionInfo, &Ice::IPConnectionInfo::remoteAddress);
155 attrs.add(
"remotePort", &Helper::getConnectionInfo, &Ice::IPConnectionInfo::remotePort);
157 attrs.add(
"mcastHost", &Helper::getConnectionInfo, &Ice::UDPConnectionInfo::mcastAddress);
158 attrs.add(
"mcastPort", &Helper::getConnectionInfo, &Ice::UDPConnectionInfo::mcastPort);
165 Ice::Instrumentation::ConnectionObserver>
177 Ice::Instrumentation::ThreadState);
198 Ice::Instrumentation::CollocatedObserver>
206 Ice::Instrumentation::InvocationObserver>
213 virtual Ice::Instrumentation::RemoteObserverPtr
215 const Ice::EndpointPtr&,
219 virtual Ice::Instrumentation::CollocatedObserverPtr
232 virtual Ice::Instrumentation::ObserverPtr
235 virtual Ice::Instrumentation::ObserverPtr
238 virtual Ice::Instrumentation::ConnectionObserverPtr
240 const Ice::EndpointPtr&,
241 Ice::Instrumentation::ConnectionState,
242 const Ice::Instrumentation::ConnectionObserverPtr&);
244 virtual Ice::Instrumentation::ThreadObserverPtr
247 Ice::Instrumentation::ThreadState,
248 const Ice::Instrumentation::ThreadObserverPtr&);
250 virtual Ice::Instrumentation::InvocationObserverPtr
256 const IceInternal::MetricsAdminIPtr&
getFacet()
const;
261 IceInternal::MetricsAdminIPtr _metrics;
262 const Ice::Instrumentation::CommunicatorObserverPtr _delegate;
virtual void reply(Ice::Int)
virtual Ice::Instrumentation::ObserverPtr getEndpointLookupObserver(const Ice::EndpointPtr &)
const IceInternal::MetricsAdminIPtr & getFacet() const
virtual Ice::Instrumentation::ConnectionObserverPtr getConnectionObserver(const Ice::ConnectionInfoPtr &, const Ice::EndpointPtr &, Ice::Instrumentation::ConnectionState, const Ice::Instrumentation::ConnectionObserverPtr &)
virtual Ice::Instrumentation::InvocationObserverPtr getInvocationObserver(const Ice::ObjectPrxPtr &, const std::string &, const Ice::Context &)
virtual void setObserverUpdater(const Ice::Instrumentation::ObserverUpdaterPtr &)
virtual Ice::Instrumentation::DispatchObserverPtr getDispatchObserver(const Ice::Current &, Ice::Int)
virtual Ice::Instrumentation::ThreadObserverPtr getThreadObserver(const std::string &, const std::string &, Ice::Instrumentation::ThreadState, const Ice::Instrumentation::ThreadObserverPtr &)
virtual Ice::Instrumentation::ObserverPtr getConnectionEstablishmentObserver(const Ice::EndpointPtr &, const std::string &)
CommunicatorObserverI(const Ice::InitializationData &)
virtual void sentBytes(Ice::Int)
virtual void receivedBytes(Ice::Int)
virtual void userException()
virtual void reply(Ice::Int)
virtual void userException()
virtual Ice::Instrumentation::RemoteObserverPtr getRemoteObserver(const Ice::ConnectionInfoPtr &, const Ice::EndpointPtr &, Ice::Int, Ice::Int)
virtual Ice::Instrumentation::CollocatedObserverPtr getCollocatedObserver(const Ice::ObjectAdapterPtr &, Ice::Int, Ice::Int)
ObserverPtrType getObserverWithDelegate(const IceMX::MetricsHelperT< ObserverMetricsType > &helper, const ObserverPtrType &del, const ObserverPtrType &old)
ObserverPtrType getObserverWithDelegate(const IceMX::MetricsHelperT< ObserverMetricsType > &helper, const ObserverPtrType &del)
ObserverFactoryWithDelegateT(const IceInternal::MetricsAdminIPtr &metrics, const std::string &name)
ObserverPtrType getObserverWithDelegate(const std::string &mapName, const IceMX::MetricsHelperT< ObserverMetricsType > &helper, const ObserverPtrType &del)
virtual void failed(const std::string &exceptionName)
ObserverPtrType getDelegate() const
ICE_INTERNAL_HANDLE< O > ObserverPtrType
ObserverPtrType _delegate
void setDelegate(ObserverPtrType delegate)
virtual void reply(Ice::Int)
virtual void stateChanged(Ice::Instrumentation::ThreadState, Ice::Instrumentation::ThreadState)
This file is part of ArmarX.
ObserverWithDelegateT< IceMX::Metrics, Ice::Instrumentation::Observer > ObserverI
void addEndpointAttributes(typename Helper::Attributes &attrs)
void addConnectionAttributes(typename Helper::Attributes &attrs)
ICE_DEFINE_PTR(CommunicatorObserverIPtr, CommunicatorObserverI)
::IceInternal::Handle<::Ice::ObjectAdapter > ObjectAdapterPtr