summaryrefslogtreecommitdiffstats
path: root/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv6Translator.java
diff options
context:
space:
mode:
Diffstat (limited to 'vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv6Translator.java')
-rw-r--r--vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv6Translator.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv6Translator.java b/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv6Translator.java
index 153143910..c1ccd2d88 100644
--- a/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv6Translator.java
+++ b/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv6Translator.java
@@ -78,6 +78,19 @@ public interface Ipv6Translator extends ByteDataTranslator {
}
/**
+ * Creates {@link io.fd.jvpp.nat.types.Ip6Address} from address part of {@link Ipv6Prefix}
+ *
+ * @return {@link io.fd.jvpp.nat.types.Ip6Address}
+ */
+ default io.fd.jvpp.nat.types.Ip6Address ipv6AddressPrefixToNatIp6Address(@Nonnull final Ipv6Prefix ipv6Prefix) {
+ checkNotNull(ipv6Prefix, "Cannot convert null prefix");
+
+ io.fd.jvpp.nat.types.Ip6Address ip6Address = new io.fd.jvpp.nat.types.Ip6Address();
+ ip6Address.ip6Address = ipv6AddressPrefixToArray(ipv6Prefix);
+ return ip6Address;
+ }
+
+ /**
* Transforms {@link Prefix} from {@link Ipv6Prefix}
* @param ipv6Prefix prefix to be translated
* @return Vpp {@link Prefix} from {@link Ipv6Prefix}
@@ -95,6 +108,21 @@ public interface Ipv6Translator extends ByteDataTranslator {
}
/**
+ * Creates {@link io.fd.jvpp.nat.types.Ip6Prefix} from {@link Ipv6Prefix}
+ *
+ * @param ipv6Prefix prefix to be translated
+ * @return Vpp {@link io.fd.jvpp.nat.types.Ip6Prefix} from {@link Ipv6Prefix}
+ */
+ default io.fd.jvpp.nat.types.Ip6Prefix ipv6AddressPrefixToNatIp6Prefix(@Nonnull final Ipv6Prefix ipv6Prefix) {
+ checkNotNull(ipv6Prefix, "Cannot convert null prefix");
+ io.fd.jvpp.nat.types.Ip6Prefix prefix = new io.fd.jvpp.nat.types.Ip6Prefix();
+ prefix.prefix = new io.fd.jvpp.nat.types.Ip6Address();
+ prefix.prefix.ip6Address = ipv6AddressPrefixToArray(ipv6Prefix);
+ prefix.len = extractPrefix(ipv6Prefix);
+ return prefix;
+ }
+
+ /**
* Extracts {@link Ipv6Prefix} prefix
*/
default byte extractPrefix(Ipv6Prefix data) {