use of org.opennms.features.telemetry.adapters.factory.api.AdapterFactory in project opennms by OpenNMS.
the class TelemetryAdapterRegistryImpl method getAdapter.
@Override
public Adapter getAdapter(String className, Protocol protocol, Map<String, String> properties) {
AdapterFactory adapterFactory = m_adapterFactoryByClassName.get(className);
while ((adapterFactory == null) && ManagementFactory.getRuntimeMXBean().getUptime() < GRACE_PERIOD_MS) {
try {
Thread.sleep(LOOKUP_DELAY_MS);
} catch (InterruptedException e) {
LOG.error("Interrupted while waiting for adapter factory to become available in the service registry. Aborting.");
return null;
}
adapterFactory = m_adapterFactoryByClassName.get(className);
}
Adapter adapter = null;
if (adapterFactory != null) {
adapter = adapterFactory.createAdapter(protocol, properties);
}
return adapter;
}
Aggregations