import static com.google.common.base.Verify.verify;
import java.util.Arrays;
+import org.opendaylight.yangtools.yang.common.Uint8;
public enum TerminationReason {
UNKNOWN(1),
final TerminationReason[] reasons = TerminationReason.values();
verify(reasons.length > 0);
- final short highest = Arrays.stream(reasons).map(TerminationReason::getShortValue).max(Short::compareTo).get();
+ final short highest = Arrays.stream(reasons).map(TerminationReason::getUintValue).max(Uint8::compareTo).get()
+ .toJava();
final TerminationReason[] init = new TerminationReason[highest + 1];
for (TerminationReason reason : reasons) {
- init[reason.getShortValue()] = reason;
+ init[reason.getUintValue().toJava()] = reason;
}
REASONS = init;
}
- private short value;
+ private final Uint8 value;
TerminationReason(final int value) {
- this.value = (short) value;
+ this.value = Uint8.valueOf(value);
}
/**
*
* @return short value
*/
- public short getShortValue() {
+ public Uint8 getUintValue() {
return value;
}
* @param valueArg corresponding to Termination reason
* @return corresponding TerminationReason item
*/
- public static TerminationReason forValue(final short valueArg) {
- return valueArg < 0 || valueArg >= REASONS.length ? null : REASONS[valueArg];
+ public static TerminationReason forValue(final Uint8 valueArg) {
+ final short value = valueArg.toJava();
+ return value >= REASONS.length ? null : REASONS[value];
}
}
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev181109.keepalive.message.KeepaliveMessageBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev181109.open.object.Open;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev181109.open.object.open.Tlvs;
-import org.opendaylight.yangtools.yang.common.Uint8;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
LOG.info("Closing PCEP session with reason {}: {}", reason, this);
sendMessage(new CloseBuilder().setCCloseMessage(
new CCloseMessageBuilder().setCClose(new CCloseBuilder()
- .setReason(Uint8.valueOf(reason.getShortValue())).build()).build()).build());
+ .setReason(reason.getUintValue()).build()).build()).build());
} else {
LOG.info("Closing PCEP session: {}", this);
}
*/
close();
this.listener.onSessionTerminated(this, new PCEPCloseTermination(TerminationReason
- .forValue(((CloseMessage) msg).getCCloseMessage().getCClose().getReason().toJava())));
+ .forValue(((CloseMessage) msg).getCCloseMessage().getCClose().getReason())));
} else {
// This message needs to be handled by the user
if (msg instanceof PcerrMessage) {
Assert.assertTrue(this.msgsSend.get(1) instanceof CloseMessage);
final CloseMessage closeMsg = (CloseMessage) this.msgsSend.get(1);
Assert.assertEquals(TerminationReason.TOO_MANY_UNKNOWN_MSGS,
- TerminationReason.forValue(closeMsg.getCCloseMessage().getCClose().getReason().toJava()));
+ TerminationReason.forValue(closeMsg.getCCloseMessage().getCClose().getReason()));
Mockito.verify(this.channel, Mockito.times(1)).close();
}
Assert.assertTrue(this.msgsSend.get(0) instanceof CloseMessage);
final CloseMessage closeMsg = (CloseMessage) this.msgsSend.get(0);
Assert.assertEquals(TerminationReason.UNKNOWN,
- TerminationReason.forValue(closeMsg.getCCloseMessage().getCClose().getReason().toJava()));
+ TerminationReason.forValue(closeMsg.getCCloseMessage().getCClose().getReason()));
Mockito.verify(this.channel, Mockito.times(1)).close();
}