diff options
Diffstat (limited to 'vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv4Translator.java')
-rw-r--r-- | vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv4Translator.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv4Translator.java b/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv4Translator.java index 88085db78..f6fc3c78f 100644 --- a/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv4Translator.java +++ b/vpp-common/vpp-translate-utils/src/main/java/io/fd/hc2vpp/common/translate/util/Ipv4Translator.java @@ -56,6 +56,20 @@ public interface Ipv4Translator extends ByteDataTranslator { } /** + * Creates {@link io.fd.jvpp.nat.types.Ip4Address} address from address part of {@link Ipv4Prefix} + * + * @return {@link io.fd.jvpp.nat.types.Ip4Address} + */ + default io.fd.jvpp.nat.types.Ip4Address ipv4AddressPrefixToNatIp4Address(@Nonnull final Ipv4Prefix ipv4Prefix) { + checkNotNull(ipv4Prefix, "Cannot convert null prefix"); + + io.fd.jvpp.nat.types.Ip4Address address = new io.fd.jvpp.nat.types.Ip4Address(); + address.ip4Address = ipv4AddressPrefixToArray(ipv4Prefix); + + return address; + } + + /** * Extracts {@link Ipv4Prefix} prefix */ default byte extractPrefix(Ipv4Prefix data) { @@ -89,6 +103,17 @@ public interface Ipv4Translator extends ByteDataTranslator { } /** + * Transform Ipv4 address to a {@link io.fd.jvpp.nat.types.Ip4Address} acceptable by VPP. + * + * @return {@link io.fd.jvpp.nat.types.Ip4Address} + */ + default io.fd.jvpp.nat.types.Ip4Address ipv4AddressNoZoneToNatIp4Address(final Ipv4AddressNoZone ipv4Addr) { + io.fd.jvpp.nat.types.Ip4Address ip4Address = new io.fd.jvpp.nat.types.Ip4Address(); + ip4Address.ip4Address = ipv4AddressNoZoneToArray(ipv4Addr.getValue()); + return ip4Address; + } + + /** * Transform Ipv4 address to a Ip4Address acceptable by VPP. * * @return byte array with address bytes |