public final class PathIdUtil extends Object
Modifier and Type | Field and Description |
---|---|
static long |
NON_PATH_ID |
Modifier and Type | Method and Description |
---|---|
static PathId |
buildPathId(org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode<? extends org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument> routesCont,
org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier pathIdNii)
Build Path Id
|
static org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument |
createNidKey(long pathId,
org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument routeId,
org.opendaylight.yangtools.yang.common.QName routeQname,
org.opendaylight.yangtools.yang.common.QName pathidQname,
org.opendaylight.yangtools.yang.common.QName routeKeyQname)
Create a Add Path PathArgument Key(prefix+pathId)
|
static org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates |
createNidKey(org.opendaylight.yangtools.yang.common.QName routeQname,
org.opendaylight.yangtools.yang.common.QName routeKeyQname,
org.opendaylight.yangtools.yang.common.QName pathIdQname,
Object routeKeyValue,
com.google.common.base.Optional<org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<? extends org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,?>> maybePathIdLeaf)
Build Route Key for supporting mp
Key is composed by 2 elements (route-key + path Id)
|
static org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates |
createNodeIdentifierWithPredicates(org.opendaylight.yangtools.yang.common.QName routeQname,
org.opendaylight.yangtools.yang.common.QName pathidQname,
Object pathId,
org.opendaylight.yangtools.yang.common.QName routeKeyQname,
Object keyObject) |
static Long |
extractPathId(org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?> data,
org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier pathNii)
Extract PathId from route change received
|
static Object |
getObjectKey(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument routeId,
org.opendaylight.yangtools.yang.common.QName routeKeyQname)
Get route key object ( prefgit stat ix / key-value/ ..
|
static PathId |
readPathId(io.netty.buffer.ByteBuf buffer)
Reads Path Identifier (4 bytes) from buffer.
|
static void |
writePathId(PathId pathId,
io.netty.buffer.ByteBuf buffer)
Writes path-id value into the buffer when
the path-id is not null or does not equal to zero.
|
public static final long NON_PATH_ID
public static void writePathId(PathId pathId, io.netty.buffer.ByteBuf buffer)
pathId
- The NLRI Path Identifier.buffer
- The ByteBuf where path-id value can be written.public static PathId readPathId(io.netty.buffer.ByteBuf buffer)
buffer
- Input buffer.public static Long extractPathId(org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?> data, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier pathNii)
data
- Data containing the path IdpathNii
- Path Id NodeIdentifier specific per each Rib supportpublic static org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument createNidKey(long pathId, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument routeId, org.opendaylight.yangtools.yang.common.QName routeQname, org.opendaylight.yangtools.yang.common.QName pathidQname, org.opendaylight.yangtools.yang.common.QName routeKeyQname)
pathId
- Path Id valuerouteId
- Route Id valuerouteQname
- route QName provided per each RibSupportpathidQname
- Path Id QName provided per each RibSupportrouteKeyQname
- Prefix QName provided per each RibSupportpublic static Object getObjectKey(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument routeId, org.opendaylight.yangtools.yang.common.QName routeKeyQname)
routeId
- PathArgument containing the keyrouteKeyQname
- routeKey Qnamepublic static org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates createNodeIdentifierWithPredicates(org.opendaylight.yangtools.yang.common.QName routeQname, org.opendaylight.yangtools.yang.common.QName pathidQname, Object pathId, org.opendaylight.yangtools.yang.common.QName routeKeyQname, Object keyObject)
public static PathId buildPathId(org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode<? extends org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument> routesCont, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier pathIdNii)
routesCont
- route containerpathIdNii
- path Id node Identifierpublic static org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates createNidKey(org.opendaylight.yangtools.yang.common.QName routeQname, org.opendaylight.yangtools.yang.common.QName routeKeyQname, org.opendaylight.yangtools.yang.common.QName pathIdQname, Object routeKeyValue, com.google.common.base.Optional<org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<? extends org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,?>> maybePathIdLeaf)
routeQname
- route QnamerouteKeyQname
- route key QnamepathIdQname
- path Id QnamerouteKeyValue
- route key valuemaybePathIdLeaf
- path id container, it might me supported or not, in that case default 0 value will be assignedCopyright © 2018 OpenDaylight. All rights reserved.