Jian Li
Committed by Thomas Vachuska

[ONOS-4718] Initial implementation of LISP control message objects

Change-Id: I22cdb1a4b5d7bb7f0681c9fa9a45223b60bdb282
......@@ -17,6 +17,8 @@ package org.onosproject.lisp.msg.protocols;
import io.netty.buffer.ByteBuf;
import java.util.List;
/**
* Default LISP map notify message class.
*/
......@@ -36,4 +38,67 @@ public class DefaultLispMapNotify implements LispMapNotify {
public Builder createBuilder() {
return null;
}
@Override
public long getNonce() {
return 0;
}
@Override
public byte getRecordCount() {
return 0;
}
@Override
public short getKeyId() {
return 0;
}
@Override
public byte[] getAuthenticationData() {
return new byte[0];
}
@Override
public List<LispRecord> getLispRecords() {
return null;
}
public static final class DefaultNotifyBuilder implements NotifyBuilder {
@Override
public LispMessage build() {
return null;
}
@Override
public LispType getType() {
return null;
}
@Override
public NotifyBuilder withNonce(long nonce) {
return null;
}
@Override
public NotifyBuilder withRecordCount(byte recordCount) {
return null;
}
@Override
public NotifyBuilder withKeyId(short keyId) {
return null;
}
@Override
public NotifyBuilder withAuthenticationData(byte[] authenticationData) {
return null;
}
@Override
public NotifyBuilder addRecord(LispRecord record) {
return null;
}
}
}
......
......@@ -17,6 +17,8 @@ package org.onosproject.lisp.msg.protocols;
import io.netty.buffer.ByteBuf;
import java.util.List;
/**
* Default LISP map register message class.
*/
......@@ -35,4 +37,87 @@ public class DefaultLispMapRegister implements LispMapRegister {
public Builder createBuilder() {
return null;
}
@Override
public boolean isProxyMapReply() {
return false;
}
@Override
public boolean isWantMapNotify() {
return false;
}
@Override
public byte getRecordCount() {
return 0;
}
@Override
public long getNonce() {
return 0;
}
@Override
public short getKeyId() {
return 0;
}
@Override
public byte[] getAuthenticationData() {
return new byte[0];
}
@Override
public List<LispRecord> getLispRecords() {
return null;
}
public static final class DefaultRegisterBuilder implements RegisterBuilder {
@Override
public LispMessage build() {
return null;
}
@Override
public LispType getType() {
return null;
}
@Override
public RegisterBuilder withIsProxyMapReply(boolean isProxyMapReply) {
return null;
}
@Override
public RegisterBuilder withIsWantMapNotify(boolean isWantMapNotify) {
return null;
}
@Override
public RegisterBuilder withRecordCount(byte recordCount) {
return null;
}
@Override
public RegisterBuilder withNonce(long nonce) {
return null;
}
@Override
public RegisterBuilder withKeyId(short keyId) {
return null;
}
@Override
public RegisterBuilder withAuthenticationData(byte[] authenticationData) {
return null;
}
@Override
public RegisterBuilder addRecord(LispRecord record) {
return null;
}
}
}
......
......@@ -35,4 +35,67 @@ public class DefaultLispMapReply implements LispMapReply {
public Builder createBuilder() {
return null;
}
@Override
public boolean isProbe() {
return false;
}
@Override
public boolean isEtr() {
return false;
}
@Override
public boolean isSecurity() {
return false;
}
@Override
public byte getRecordCount() {
return 0;
}
@Override
public long getNonce() {
return 0;
}
public static final class DefaultReplyBuilder implements ReplyBuilder {
@Override
public LispMessage build() {
return null;
}
@Override
public LispType getType() {
return null;
}
@Override
public ReplyBuilder withIsProbe(boolean isProbe) {
return null;
}
@Override
public ReplyBuilder withIsEtr(boolean isEtr) {
return null;
}
@Override
public ReplyBuilder withIsSecurity(boolean isSecurity) {
return null;
}
@Override
public ReplyBuilder withRecordCount(byte recordCount) {
return null;
}
@Override
public ReplyBuilder withNonce(long nonce) {
return null;
}
}
}
......
......@@ -16,6 +16,9 @@
package org.onosproject.lisp.msg.protocols;
import io.netty.buffer.ByteBuf;
import org.onosproject.lisp.msg.types.LispAfiAddress;
import java.util.List;
/**
* Default LISP map request message class.
......@@ -35,4 +38,112 @@ public class DefaultLispMapRequest implements LispMapRequest {
public Builder createBuilder() {
return null;
}
@Override
public boolean isAuthoritative() {
return false;
}
@Override
public boolean isProbe() {
return false;
}
@Override
public boolean isSmr() {
return false;
}
@Override
public boolean isPitr() {
return false;
}
@Override
public boolean isSmrInvoked() {
return false;
}
@Override
public byte getRecordCount() {
return 0;
}
@Override
public long getNonce() {
return 0;
}
@Override
public LispAfiAddress getSourceEid() {
return null;
}
@Override
public List<LispAfiAddress> getItrRlocs() {
return null;
}
@Override
public List<EidRecord> getEids() {
return null;
}
public static final class DefaultRequestBuilder implements RequestBuilder {
@Override
public LispMessage build() {
return null;
}
@Override
public LispType getType() {
return null;
}
@Override
public RequestBuilder withIsAuthoritative(boolean isAuthoritative) {
return null;
}
@Override
public RequestBuilder withIsProbe(boolean isProbe) {
return null;
}
@Override
public RequestBuilder withIsSmr(boolean isSmr) {
return null;
}
@Override
public RequestBuilder withIsPitr(boolean isPitr) {
return null;
}
@Override
public RequestBuilder withIsSmrInvoked(boolean isSmrInvoked) {
return null;
}
@Override
public RequestBuilder withRecordCount(byte recordCount) {
return null;
}
@Override
public RequestBuilder withNonce(long nonce) {
return null;
}
@Override
public RequestBuilder withItrRloc(LispAfiAddress itrRloc) {
return null;
}
@Override
public RequestBuilder addEidRecord(EidRecord record) {
return null;
}
}
}
......
/*
* Copyright 2016-present Open Networking Laboratory
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.onosproject.lisp.msg.protocols;
/**
* LISP EID record section which is part of LISP map request message.
*/
public class EidRecord {
}
......@@ -15,8 +15,123 @@
*/
package org.onosproject.lisp.msg.protocols;
import java.util.List;
/**
* LISP map notify message interface.
*
* LISP map notify message format is defined in RFC6830.
* https://tools.ietf.org/html/rfc6830#page-39
*
* 0 1 2 3
* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* |Type=4 | Reserved | Record Count |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | Nonce . . . |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | . . . Nonce |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | Key ID | Authentication Data Length |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* ~ Authentication Data ~
* +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | | Record TTL |
* | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* R | Locator Count | EID mask-len | ACT |A| Reserved |
* e +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* c | Rsvd | Map-Version Number | EID-Prefix-AFI |
* o +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* r | EID-Prefix |
* d +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | /| Priority | Weight | M Priority | M Weight |
* | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | o | Unused Flags |L|p|R| Loc-AFI |
* | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | \| Locator |
* +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*
*/
public interface LispMapNotify extends LispMessage {
/**
* Obtains nonce value.
*
* @return nonce value
*/
long getNonce();
/**
* Obtains record count value.
*
* @return record count value
*/
byte getRecordCount();
/**
* Obtains key identifier.
*
* @return key identifier
*/
short getKeyId();
/**
* Obtains authentication data.
*
* @return authentication data
*/
byte[] getAuthenticationData();
/**
* Obtains a collection of records.
*
* @return a collection of records
*/
List<LispRecord> getLispRecords();
/**
* A builder of LISP map notify message.
*/
interface NotifyBuilder extends Builder {
/**
* Sets nonce value.
*
* @param nonce nonce value
* @return NotifyBuilder object
*/
NotifyBuilder withNonce(long nonce);
/**
* Sets record count.
*
* @param recordCount record count
* @return NotifyBuilder object
*/
NotifyBuilder withRecordCount(byte recordCount);
/**
* Sets key identitifer.
*
* @param keyId key identifier
* @return NotifyBuilder object
*/
NotifyBuilder withKeyId(short keyId);
/**
* Sets authentication data.
*
* @param authenticationData authentication data
* @return NotifyBuilder object
*/
NotifyBuilder withAuthenticationData(byte[] authenticationData);
/**
* Adds a new record to record list.
*
* @param record record
* @return NotifyBuilder object
*/
NotifyBuilder addRecord(LispRecord record);
}
}
......
......@@ -15,8 +15,152 @@
*/
package org.onosproject.lisp.msg.protocols;
import java.util.List;
/**
* LISP map register message interface.
*
* LISP map register message format is defined in RFC6830.
* https://tools.ietf.org/html/rfc6830#page-37
*
* 0 1 2 3
* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* |Type=3 |P| Reserved |M| Record Count |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | Nonce . . . |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | . . . Nonce |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | Key ID | Authentication Data Length |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* ~ Authentication Data ~
* +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | | Record TTL |
* | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* R | Locator Count | EID mask-len | ACT |A| Reserved |
* e +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* c | Rsvd | Map-Version Number | EID-Prefix-AFI |
* o +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* r | EID-Prefix |
* d +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | /| Priority | Weight | M Priority | M Weight |
* | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | o | Unused Flags |L|p|R| Loc-AFI |
* | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | \| Locator |
* +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*/
public interface LispMapRegister extends LispMessage {
/**
* Obtains proxy map reply flag.
*
* @return proxy map reply flag
*/
boolean isProxyMapReply();
/**
* Obtains want map notify flag.
*
* @return want map notify flag
*/
boolean isWantMapNotify();
/**
* Obtains record count value.
*
* @return record count value
*/
byte getRecordCount();
/**
* Obtains nonce value.
*
* @return nonce value
*/
long getNonce();
/**
* Obtains key identifier.
*
* @return key identifier
*/
short getKeyId();
/**
* Obtains authentication data.
*
* @return authentication data
*/
byte[] getAuthenticationData();
/**
* Obtains a collection of records.
*
* @return a collection of records
*/
List<LispRecord> getLispRecords();
/**
* A builder of LISP map register message.
*/
interface RegisterBuilder extends Builder {
/**
* Sets isProxyMapReply flag.
*
* @param isProxyMapReply isProxyMapReply
* @return RegisterBuilder object
*/
RegisterBuilder withIsProxyMapReply(boolean isProxyMapReply);
/**
* Sets isWantMapNotify flag.
*
* @param isWantMapNotify isWantMapNotify
* @return RegisterBuilder object
*/
RegisterBuilder withIsWantMapNotify(boolean isWantMapNotify);
/**
* Sets record count.
*
* @param recordCount record count
* @return RegisterBuilder object
*/
RegisterBuilder withRecordCount(byte recordCount);
/**
* Sets nonce value.
*
* @param nonce nonce value
* @return RegisterBuilder object
*/
RegisterBuilder withNonce(long nonce);
/**
* Sets key identifier.
*
* @param keyId key identifier
* @return RegisterBuilder object
*/
RegisterBuilder withKeyId(short keyId);
/**
* Sets authentication data.
*
* @param authenticationData authentication data
* @return RegisterBuilder object
*/
RegisterBuilder withAuthenticationData(byte[] authenticationData);
/**
* Adds a new record to record list.
*
* @param record record
* @return RegisterBuilder object
*/
RegisterBuilder addRecord(LispRecord record);
}
}
......
......@@ -17,6 +17,114 @@ package org.onosproject.lisp.msg.protocols;
/**
* LISP map reply message interface.
*
* LISP map reply message format is defined in RFC6830.
* https://tools.ietf.org/html/rfc6830#page-31
*
* 0 1 2 3
* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* |Type=2 |P|E|S| Reserved | Record Count |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | Nonce . . . |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | . . . Nonce |
* +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | | Record TTL |
* | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* R | Locator Count | EID mask-len | ACT |A| Reserved |
* e +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* c | Rsvd | Map-Version Number | EID-Prefix-AFI |
* o +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* r | EID-Prefix |
* d +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | /| Priority | Weight | M Priority | M Weight |
* | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | o | Unused Flags |L|p|R| Loc-AFI |
* | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | \| Locator |
* +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*/
public interface LispMapReply extends LispMessage {
/**
* Obtains probe flag.
*
* @return probe flag
*/
boolean isProbe();
/**
* Obtains ETR flag.
*
* @return ETR flag
*/
boolean isEtr();
/**
* Obtains security flag.
*
* @return security flag
*/
boolean isSecurity();
/**
* Obtains record count value.
*
* @return record count value
*/
byte getRecordCount();
/**
* Obtains nonce value.
*
* @return nonce value
*/
long getNonce();
/**
* A builder of LISP map reply message.
*/
interface ReplyBuilder extends Builder {
/**
* Sets isProbe flag.
*
* @param isProbe isProbe flag
* @return ReplyBuilder object
*/
ReplyBuilder withIsProbe(boolean isProbe);
/**
* Sets isEtr flag.
*
* @param isEtr isEtr flag
* @return ReplyBuilder object
*/
ReplyBuilder withIsEtr(boolean isEtr);
/**
* Sets isSecurity flag.
*
* @param isSecurity isSecurity flag
* @return ReplyBuilder object
*/
ReplyBuilder withIsSecurity(boolean isSecurity);
/**
* Sets record count.
*
* @param recordCount record count
* @return ReplyBuilder object
*/
ReplyBuilder withRecordCount(byte recordCount);
/**
* Sets nonce value.
*
* @param nonce nonce value
* @return ReplyBuilder object
*/
ReplyBuilder withNonce(long nonce);
}
}
......
......@@ -15,8 +15,187 @@
*/
package org.onosproject.lisp.msg.protocols;
import org.onosproject.lisp.msg.types.LispAfiAddress;
import java.util.List;
/**
* LISP map request message interface.
*
* LISP map request message format is defined in RFC6830.
* https://tools.ietf.org/html/rfc6830#page-27
*
* 0 1 2 3
* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* |Type=1 |A|M|P|S|p|s| Reserved | IRC | Record Count |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | Nonce . . . |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | . . . Nonce |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | Source-EID-AFI | Source EID Address ... |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | ITR-RLOC-AFI 1 | ITR-RLOC Address 1 ... |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | ... |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | ITR-RLOC-AFI n | ITR-RLOC Address n ... |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* / | Reserved | EID mask-len | EID-Prefix-AFI |
* Rec +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* \ | EID-Prefix ... |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | Map-Reply Record ... |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*/
public interface LispMapRequest extends LispMessage {
/**
* Obtains authoritative flag.
*
* @return authoritative flag
*/
boolean isAuthoritative();
/**
* Obtains probe flag.
*
* @return probe flag
*/
boolean isProbe();
/**
* Obtains SMR flag.
*
* @return SMR flag
*/
boolean isSmr();
/**
* Obtains PITR flag.
*
* @return PITR flag
*/
boolean isPitr();
/**
* Obtains SMR Invoked flag.
*
* @return SMR invoked flag
*/
boolean isSmrInvoked();
/**
* Obtains record count value.
*
* @return record count value
*/
byte getRecordCount();
/**
* Obtains nonce value.
*
* @return nonce value
*/
long getNonce();
/**
* Obtains source EID.
*
* @return source EID
*/
LispAfiAddress getSourceEid();
/**
* Obtains a collection of ITR RLOCs.
*
* @return a collection of ITR RLOCs
*/
List<LispAfiAddress> getItrRlocs();
/**
* Obtains a collection of EID records.
*
* @return a collection of EID records
*/
List<EidRecord> getEids();
/**
* A builder of LISP map request message.
*/
interface RequestBuilder extends Builder {
/**
* Sets isAuthoritative flag.
*
* @param isAuthoritative isAuthoritative flag
* @return RequestBuilder object
*/
RequestBuilder withIsAuthoritative(boolean isAuthoritative);
/**
* Sets isProbe flag.
*
* @param isProbe isProbe flag
* @return RequestBuilder object
*/
RequestBuilder withIsProbe(boolean isProbe);
/**
* Sets isSmr flag.
*
* @param isSmr isSmr flag
* @return RequestBuilder object
*/
RequestBuilder withIsSmr(boolean isSmr);
/**
* Sets isPitr flag.
*
* @param isPitr isPitr flag
* @return RequestBuilder object
*/
RequestBuilder withIsPitr(boolean isPitr);
/**
* Sets isSmrInvoked flag.
*
* @param isSmrInvoked isSmrInvoked flag
* @return RequestBuilder object
*/
RequestBuilder withIsSmrInvoked(boolean isSmrInvoked);
/**
* Sets record count.
*
* @param recordCount record count
* @return RequestBuilder object
*/
RequestBuilder withRecordCount(byte recordCount);
/**
* Sets nonce value.
*
* @param nonce nonce value
* @return RequestBuilder object
*/
RequestBuilder withNonce(long nonce);
/**
* Adds ITR RLOC into RLOC collection.
*
* @param itrRloc ITR RLOC
* @return RequestBuilder object
*/
RequestBuilder withItrRloc(LispAfiAddress itrRloc);
/**
* Adds EID record into record collection.
*
* @param record EID record
* @return RequestBuilder object
*/
RequestBuilder addEidRecord(EidRecord record);
}
}
......
......@@ -46,7 +46,7 @@ public interface LispMessage {
/**
* LISP message builder interface.
*/
interface Builder {
interface Builder {
/**
* Builds LISP message.
......
/*
* Copyright 2016-present Open Networking Laboratory
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.onosproject.lisp.msg.protocols;
/**
* LISP record section which is part of LISP map register message.
*/
public class LispRecord {
}