Allow enabling gRPC message logging for existing channels
Change-Id: Ic7586266e6a264ceeb9b55d7dae0db5e9a34c0c1
diff --git a/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/GrpcChannelControllerImpl.java b/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/GrpcChannelControllerImpl.java
index 87c9426..96a1671 100644
--- a/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/GrpcChannelControllerImpl.java
+++ b/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/GrpcChannelControllerImpl.java
@@ -92,9 +92,7 @@
enableMessageLog.set(Tools.isPropertyEnabled(
properties, ENABLE_MESSAGE_LOG, ENABLE_MESSAGE_LOG_DEFAULT));
log.info("Configured. Logging of gRPC messages is {}",
- enableMessageLog.get()
- ? "ENABLED for new channels"
- : "DISABLED for new and existing channels");
+ enableMessageLog.get() ? "ENABLED" : "DISABLED");
}
}
@@ -125,28 +123,23 @@
"A channel with ID '%s' already exists", channelId));
}
- GrpcLoggingInterceptor interceptor = null;
- if (enableMessageLog.get()) {
- interceptor = new GrpcLoggingInterceptor(channelId, enableMessageLog);
- channelBuilder.intercept(interceptor);
- }
+ final GrpcLoggingInterceptor interceptor = new GrpcLoggingInterceptor(
+ channelId, enableMessageLog);
+ channelBuilder.intercept(interceptor);
+
ManagedChannel channel = channelBuilder.build();
// Forced connection API is still experimental. Use workaround...
// channel.getState(true);
try {
doDummyMessage(channel);
} catch (StatusRuntimeException e) {
- if (interceptor != null) {
- interceptor.close();
- }
+ interceptor.close();
shutdownNowAndWait(channel, channelId);
throw e;
}
// If here, channel is open.
channels.put(channelId, channel);
- if (interceptor != null) {
- interceptors.put(channelId, interceptor);
- }
+ interceptors.put(channelId, interceptor);
return channel;
} finally {
lock.unlock();