* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-
package org.opendaylight.netconf.client;
import com.google.common.base.Strings;
import com.google.common.collect.Interners;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.channel.Channel;
-import io.netty.channel.ChannelFuture;
-import io.netty.channel.ChannelFutureListener;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundHandlerAdapter;
import io.netty.util.Timer;
}
@SuppressWarnings("checkstyle:IllegalCatch")
+ @SuppressFBWarnings(value = "BC_UNCONFIRMED_CAST",
+ justification = "SpotBugs does not understand generic cast of sessionPreferences")
@Override
- @SuppressFBWarnings("BC_UNCONFIRMED_CAST")
protected void handleMessage(final NetconfHelloMessage netconfMessage) throws NetconfDocumentedException {
if (!ifNegotiatedAlready()) {
LOG.debug("Server hello message received, starting negotiation on channel {}", channel);
try {
startNegotiation();
} catch (final Exception e) {
- LOG.warn("Unexpected negotiation failure", e);
+ LOG.warn("Unexpected negotiation failure on channel {}", channel, e);
negotiationFailed(e);
return;
}
ExiConfirmationInboundHandler.EXI_CONFIRMED_HANDLER,
new ExiConfirmationInboundHandler(session, startExiMessage));
- session.sendMessage(startExiMessage).addListener(new ChannelFutureListener() {
- @Override
- public void operationComplete(final ChannelFuture channelFuture) {
- if (!channelFuture.isSuccess()) {
- LOG.warn("Failed to send start-exi message {} on session {}", startExiMessage, this,
- channelFuture.cause());
- channel.pipeline().remove(ExiConfirmationInboundHandler.EXI_CONFIRMED_HANDLER);
- } else {
- LOG.trace("Start-exi message {} sent to socket on session {}", startExiMessage, this);
- }
+ session.sendMessage(startExiMessage).addListener(channelFuture -> {
+ if (!channelFuture.isSuccess()) {
+ LOG.warn("Failed to send start-exi message {} on session {}", startExiMessage, session,
+ channelFuture.cause());
+ channel.pipeline().remove(ExiConfirmationInboundHandler.EXI_CONFIRMED_HANDLER);
+ } else {
+ LOG.trace("Start-exi message {} sent to socket on session {}", startExiMessage, session);
}
});
}
- @SuppressFBWarnings("BC_UNCONFIRMED_CAST")
+ @SuppressFBWarnings(value = "BC_UNCONFIRMED_CAST",
+ justification = "SpotBugs does not understand generic cast of sessionPreferences")
private boolean shouldUseExi(final NetconfHelloMessage helloMsg) {
return containsExi10Capability(helloMsg.getDocument())
&& containsExi10Capability(sessionPreferences.getHelloMessage().getDocument());
@Override
protected NetconfClientSession getSession(final NetconfClientSessionListener sessionListener, final Channel channel,
- final NetconfHelloMessage message) throws NetconfDocumentedException {
+ final NetconfHelloMessage message) {
final long sessionId = extractSessionId(message.getDocument());
// Copy here is important: it disconnects the strings from the document