package org.opendaylight.protocol.pcep.segment.routing;
import com.google.common.base.Preconditions;
-
import io.netty.buffer.ByteBuf;
-
import org.opendaylight.protocol.pcep.spi.EROSubobjectParser;
import org.opendaylight.protocol.pcep.spi.EROSubobjectSerializer;
import org.opendaylight.protocol.pcep.spi.EROSubobjectUtil;
public class SrEroSubobjectParser extends AbstractSrSubobjectParser implements EROSubobjectParser, EROSubobjectSerializer {
- public static final int TYPE = 5;
+ private static final int LEGACY_TYPE = 5;
+ private static final int PROPOSED_TYPE = 36;
+
+ private final int type;
+
+ SrEroSubobjectParser(final boolean isIanaAssignedType) {
+ this.type = (isIanaAssignedType) ? PROPOSED_TYPE : LEGACY_TYPE;
+ }
@Override
public void serializeSubobject(final Subobject subobject, final ByteBuf buffer) {
final SrSubobject srSubobject = (SrSubobject) subobject.getSubobjectType();
final ByteBuf body = serializeSubobject(srSubobject);
- EROSubobjectUtil.formatSubobject(TYPE, subobject.isLoose(), body, buffer);
+ EROSubobjectUtil.formatSubobject(type, subobject.isLoose(), body, buffer);
}
@Override
subobjectBuilder.setSubobjectType(srEroSubobjectBuilder.build());
return subobjectBuilder.build();
}
+
+ public int getCodePoint() {
+ return this.type;
+ }
}
\ No newline at end of file