*/
private long lastMessageReceivedAt;
- private final Queue<Long> unknownMessagesTimes = new LinkedList<Long>();
+ private final Queue<Long> unknownMessagesTimes = new LinkedList<>();
private final PCEPSessionListener listener;
if (getDeadTimerValue() != 0) {
- channel.eventLoop().schedule(new Runnable() {
- @Override
- public void run() {
- handleDeadTimer();
- }
- }, getDeadTimerValue(), TimeUnit.SECONDS);
+ channel.eventLoop().schedule(this::handleDeadTimer, getDeadTimerValue(), TimeUnit.SECONDS);
}
if (getKeepAliveTimerValue() != 0) {
- channel.eventLoop().schedule(new Runnable() {
- @Override
- public void run() {
- handleKeepaliveTimer();
- }
- }, getKeepAliveTimerValue(), TimeUnit.SECONDS);
+ channel.eventLoop().schedule(this::handleKeepaliveTimer, getKeepAliveTimerValue(), TimeUnit.SECONDS);
}
LOG.info("Session {}[{}] <-> {}[{}] started", channel.localAddress(), localOpen.getSessionId(), channel.remoteAddress(),
LOG.debug("DeadTimer expired. {}", new Date());
this.terminate(TerminationReason.EXP_DEADTIMER);
} else {
- this.channel.eventLoop().schedule(new Runnable() {
- @Override
- public void run() {
- handleDeadTimer();
- }
- }, nextDead - ct, TimeUnit.NANOSECONDS);
+ this.channel.eventLoop().schedule(this::handleDeadTimer, nextDead - ct, TimeUnit.NANOSECONDS);
}
}
}
nextKeepalive = this.lastMessageSentAt + TimeUnit.SECONDS.toNanos(getKeepAliveTimerValue());
}
- this.channel.eventLoop().schedule(new Runnable() {
- @Override
- public void run() {
- handleKeepaliveTimer();
- }
- }, nextKeepalive - ct, TimeUnit.NANOSECONDS);
+ this.channel.eventLoop().schedule(this::handleKeepaliveTimer, nextKeepalive - ct, TimeUnit.NANOSECONDS);
}
}
this.sessionState.setLastSentError(msg);
}
- f.addListener(new ChannelFutureListener() {
- @Override
- public void operationComplete(final ChannelFuture arg) {
- if (arg.isSuccess()) {
- LOG.trace("Message sent to socket: {}", msg);
- } else {
- LOG.debug("Message not sent: {}", msg, arg.cause());
- }
+ f.addListener((ChannelFutureListener) arg -> {
+ if (arg.isSuccess()) {
+ LOG.trace("Message sent to socket: {}", msg);
+ } else {
+ LOG.debug("Message not sent: {}", msg, arg.cause());
}
});
return f;
}
+ @VisibleForTesting
+ ChannelFuture closeChannel() {
+ LOG.info("Closing PCEP session: {}", this);
+ return this.channel.close();
+ }
+
/**
* Closes PCEP session without sending a Close message, as the channel is no longer active.
*/
@Override
public void close() {
LOG.info("Closing PCEP session: {}", this);
- this.channel.close();
+ closeChannel();
}
/**
package org.opendaylight.protocol.pcep.impl;
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Matchers.any;
import static org.opendaylight.protocol.util.CheckUtil.waitFutureSuccess;
import com.google.common.base.Preconditions;
RETRY_TIMER, CONNECT_TIMEOUT, SimpleSessionListener::new).get();
Assert.assertTrue(futureChannel.channel().isActive());
- Assert.assertEquals(clientAddr1.getAddress().getHostAddress(), session1.getPeerPref().getIpAddress());
- Assert.assertEquals(DEAD_TIMER, session1.getDeadTimerValue().shortValue());
- Assert.assertEquals(KEEP_ALIVE, session1.getKeepAliveTimerValue().shortValue());
+ assertEquals(clientAddr1.getAddress().getHostAddress(), session1.getPeerPref().getIpAddress());
+ assertEquals(DEAD_TIMER, session1.getDeadTimerValue().shortValue());
+ assertEquals(KEEP_ALIVE, session1.getKeepAliveTimerValue().shortValue());
- Assert.assertEquals(clientAddr2.getAddress().getHostAddress(), session2.getPeerPref().getIpAddress());
- Assert.assertEquals(DEAD_TIMER, session2.getDeadTimerValue().shortValue());
- Assert.assertEquals(KEEP_ALIVE, session2.getKeepAliveTimerValue().shortValue());
+ assertEquals(clientAddr2.getAddress().getHostAddress(), session2.getPeerPref().getIpAddress());
+ assertEquals(DEAD_TIMER, session2.getDeadTimerValue().shortValue());
+ assertEquals(KEEP_ALIVE, session2.getKeepAliveTimerValue().shortValue());
session1.close();
session2.close();
final PCEPSessionImpl session1 = (PCEPSessionImpl) this.pccMock.createClient(clientAddr,
RETRY_TIMER, CONNECT_TIMEOUT, SimpleSessionListener::new).get();
- Assert.assertEquals(clientAddr.getAddress(), session1.getRemoteAddress());
- Assert.assertEquals(DEAD_TIMER, session1.getDeadTimerValue().shortValue());
- Assert.assertEquals(KEEP_ALIVE, session1.getKeepAliveTimerValue().shortValue());
- session1.close();
+ assertEquals(clientAddr.getAddress(), session1.getRemoteAddress());
+ assertEquals(DEAD_TIMER, session1.getDeadTimerValue().shortValue());
+ assertEquals(KEEP_ALIVE, session1.getKeepAliveTimerValue().shortValue());
+ waitFutureSuccess(session1.closeChannel());
final PCEPSessionImpl session2 = (PCEPSessionImpl) this.pccMock.createClient(clientAddr,
RETRY_TIMER, CONNECT_TIMEOUT, SimpleSessionListener::new).get();
- Assert.assertEquals(clientAddr.getAddress(), session1.getRemoteAddress());
- Assert.assertEquals(DEAD_TIMER, session2.getDeadTimerValue().shortValue());
- Assert.assertEquals(KEEP_ALIVE, session2.getKeepAliveTimerValue().shortValue());
+ assertEquals(clientAddr.getAddress(), session1.getRemoteAddress());
+ assertEquals(DEAD_TIMER, session2.getDeadTimerValue().shortValue());
+ assertEquals(KEEP_ALIVE, session2.getKeepAliveTimerValue().shortValue());
session2.close();
}
final ChannelFuture futureChannel = this.disp2Spy.createServer(new InetSocketAddress("0.0.0.0", port),
SimpleSessionListener::new, null);
waitFutureSuccess(futureChannel);
- Mockito.verify(this.disp2Spy).createServerBootstrap(Mockito.any(PCEPDispatcherImpl.ChannelPipelineInitializer.class));
+ Mockito.verify(this.disp2Spy).createServerBootstrap(any(PCEPDispatcherImpl.ChannelPipelineInitializer.class));
}
@After