X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=pcep%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fprotocol%2Fpcep%2Fimpl%2Fsubobject%2FXROSRLGSubobjectParser.java;h=f7e156b03764ce9e3aac9b2841e1eab22dd41e2c;hb=a397aa4828919cc643647c96f5c916ee211f597f;hp=01623b7eef5baf753c191bf77b62b133aa7e0cde;hpb=35bce020a9c4fecb31e9962e5629b3d5a1bd0c47;p=bgpcep.git diff --git a/pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/subobject/XROSRLGSubobjectParser.java b/pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/subobject/XROSRLGSubobjectParser.java index 01623b7eef..f7e156b037 100644 --- a/pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/subobject/XROSRLGSubobjectParser.java +++ b/pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/subobject/XROSRLGSubobjectParser.java @@ -7,6 +7,9 @@ */ package org.opendaylight.protocol.pcep.impl.subobject; +import com.google.common.base.Preconditions; +import com.google.common.primitives.UnsignedBytes; + import io.netty.buffer.ByteBuf; import org.opendaylight.protocol.pcep.impl.object.XROSubobjectUtil; @@ -23,55 +26,50 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.rsvp.rev import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.rsvp.rev130820.basic.explicit.route.subobjects.subobject.type.SrlgCaseBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.rsvp.rev130820.basic.explicit.route.subobjects.subobject.type.srlg._case.SrlgBuilder; -import com.google.common.base.Preconditions; -import com.google.common.primitives.UnsignedBytes; - /** * Parser for {@link SrlgCase} */ public class XROSRLGSubobjectParser implements XROSubobjectParser, XROSubobjectSerializer { - public static final int TYPE = 34; + public static final int TYPE = 34; - private static final int SRLG_ID_NUMBER_LENGTH = 4; - private static final int ATTRIBUTE_LENGTH = 1; + private static final int SRLG_ID_NUMBER_LENGTH = 4; + private static final int ATTRIBUTE_LENGTH = 1; - private static final int SRLG_ID_NUMBER_OFFSET = 0; - private static final int ATTRIBUTE_OFFSET = SRLG_ID_NUMBER_OFFSET + SRLG_ID_NUMBER_LENGTH; + private static final int SRLG_ID_NUMBER_OFFSET = 0; + private static final int ATTRIBUTE_OFFSET = SRLG_ID_NUMBER_OFFSET + SRLG_ID_NUMBER_LENGTH; - private static final int CONTENT_LENGTH = SRLG_ID_NUMBER_LENGTH + ATTRIBUTE_LENGTH; + private static final int CONTENT_LENGTH = SRLG_ID_NUMBER_LENGTH + ATTRIBUTE_LENGTH; - @Override - public Subobject parseSubobject(final ByteBuf buffer, final boolean mandatory) throws PCEPDeserializerException { - Preconditions.checkArgument(buffer != null && buffer.isReadable(), "Array of bytes is mandatory. Can't be null or empty."); - if (buffer.readableBytes() != CONTENT_LENGTH) { - throw new PCEPDeserializerException("Wrong length of array of bytes. Passed: " + buffer.readableBytes() + "; Expected: " - + CONTENT_LENGTH + "."); - } + @Override + public Subobject parseSubobject(final ByteBuf buffer, final boolean mandatory) throws PCEPDeserializerException { + Preconditions.checkArgument(buffer != null && buffer.isReadable(), "Array of bytes is mandatory. Can't be null or empty."); + if (buffer.readableBytes() != CONTENT_LENGTH) { + throw new PCEPDeserializerException("Wrong length of array of bytes. Passed: " + buffer.readableBytes() + "; Expected: " + + CONTENT_LENGTH + "."); + } - final SubobjectBuilder builder = new SubobjectBuilder(); - builder.setMandatory(mandatory); - builder.setAttribute(Attribute.Srlg); - builder.setSubobjectType(new SrlgCaseBuilder().setSrlg( - new SrlgBuilder().setSrlgId( - new SrlgId(buffer.readUnsignedInt())).build()).build()); - return builder.build(); - } + final SubobjectBuilder builder = new SubobjectBuilder(); + builder.setMandatory(mandatory); + builder.setAttribute(Attribute.Srlg); + builder.setSubobjectType(new SrlgCaseBuilder().setSrlg(new SrlgBuilder().setSrlgId(new SrlgId(buffer.readUnsignedInt())).build()).build()); + return builder.build(); + } - @Override - public byte[] serializeSubobject(final Subobject subobject) { - if (!(subobject.getSubobjectType() instanceof SrlgCase)) { - throw new IllegalArgumentException("Unknown PCEPXROSubobject instance. Passed " + subobject.getSubobjectType().getClass() - + ". Needed SrlgCase."); - } + @Override + public byte[] serializeSubobject(final Subobject subobject) { + if (!(subobject.getSubobjectType() instanceof SrlgCase)) { + throw new IllegalArgumentException("Unknown PCEPXROSubobject instance. Passed " + subobject.getSubobjectType().getClass() + + ". Needed SrlgCase."); + } - byte[] retBytes; - retBytes = new byte[CONTENT_LENGTH]; - final SrlgSubobject specObj = ((SrlgCase) subobject.getSubobjectType()).getSrlg(); + byte[] retBytes; + retBytes = new byte[CONTENT_LENGTH]; + final SrlgSubobject specObj = ((SrlgCase) subobject.getSubobjectType()).getSrlg(); - ByteArray.copyWhole(ByteArray.longToBytes(specObj.getSrlgId().getValue(), SRLG_ID_NUMBER_LENGTH), retBytes, SRLG_ID_NUMBER_OFFSET); - retBytes[ATTRIBUTE_OFFSET] = UnsignedBytes.checkedCast(subobject.getAttribute().getIntValue()); + ByteArray.copyWhole(ByteArray.longToBytes(specObj.getSrlgId().getValue(), SRLG_ID_NUMBER_LENGTH), retBytes, SRLG_ID_NUMBER_OFFSET); + retBytes[ATTRIBUTE_OFFSET] = UnsignedBytes.checkedCast(subobject.getAttribute().getIntValue()); - return XROSubobjectUtil.formatSubobject(TYPE, subobject.isMandatory(), retBytes); - } + return XROSubobjectUtil.formatSubobject(TYPE, subobject.isMandatory(), retBytes); + } }