From 33ecedc83c01e4d33e8304d9759100dcd95cb244 Mon Sep 17 00:00:00 2001 From: Marek Gradzki Date: Tue, 1 Aug 2017 13:43:14 +0200 Subject: HC2VPP-197: translation layert for post routing NAT Change-Id: Icef6682fbc7a18a1e52953270ad26f6b3b7676eb Signed-off-by: Marek Gradzki --- .../nat/read/ifc/SubIfcNatReaderFactory.java | 40 ++++------------------ 1 file changed, 6 insertions(+), 34 deletions(-) (limited to 'nat/nat2vpp/src/main/java/io/fd/hc2vpp/nat/read/ifc/SubIfcNatReaderFactory.java') diff --git a/nat/nat2vpp/src/main/java/io/fd/hc2vpp/nat/read/ifc/SubIfcNatReaderFactory.java b/nat/nat2vpp/src/main/java/io/fd/hc2vpp/nat/read/ifc/SubIfcNatReaderFactory.java index f9fb1d43c..851a3ef1b 100644 --- a/nat/nat2vpp/src/main/java/io/fd/hc2vpp/nat/read/ifc/SubIfcNatReaderFactory.java +++ b/nat/nat2vpp/src/main/java/io/fd/hc2vpp/nat/read/ifc/SubIfcNatReaderFactory.java @@ -19,16 +19,10 @@ package io.fd.hc2vpp.nat.read.ifc; import com.google.inject.Inject; import com.google.inject.name.Named; -import io.fd.hc2vpp.common.translate.util.JvppReplyConsumer; import io.fd.hc2vpp.common.translate.util.NamingContext; import io.fd.honeycomb.translate.impl.read.GenericInitReader; -import io.fd.honeycomb.translate.read.ReadFailedException; import io.fd.honeycomb.translate.read.ReaderFactory; import io.fd.honeycomb.translate.read.registry.ModifiableReaderRegistryBuilder; -import io.fd.honeycomb.translate.util.read.cache.DumpCacheManager; -import io.fd.honeycomb.translate.util.read.cache.EntityDumpExecutor; -import io.fd.vpp.jvpp.snat.dto.SnatInterfaceDetailsReplyDump; -import io.fd.vpp.jvpp.snat.dto.SnatInterfaceDump; import io.fd.vpp.jvpp.snat.future.FutureJVppSnatFacade; import javax.annotation.Nonnull; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.InterfacesState; @@ -51,21 +45,18 @@ public final class SubIfcNatReaderFactory implements ReaderFactory { private static final InstanceIdentifier SUB_IFC_ID = InstanceIdentifier.create(InterfacesState.class).child(Interface.class).augmentation( - SubinterfaceStateAugmentation.class).child(SubInterfaces.class).child(SubInterface.class); + SubinterfaceStateAugmentation.class).child(SubInterfaces.class).child(SubInterface.class); private static final InstanceIdentifier NAT_SUB_AUG_ID = - SUB_IFC_ID.augmentation(NatSubinterfaceStateAugmentation.class); + SUB_IFC_ID.augmentation(NatSubinterfaceStateAugmentation.class); private static final InstanceIdentifier NAT_AUG_CONTAINER_ID = NAT_SUB_AUG_ID.child(Nat.class); - private final DumpCacheManager snatIfcDumpMgr; private final NamingContext ifcContext; + private final FutureJVppSnatFacade jvppSnat; @Inject public SubIfcNatReaderFactory(final FutureJVppSnatFacade jvppSnat, @Named("interface-context") final NamingContext ifcContext) { - this.snatIfcDumpMgr = new DumpCacheManager.DumpCacheManagerBuilder() - .withExecutor(new SnatInterfaceExecutor(jvppSnat)) - .acceptOnly(SnatInterfaceDetailsReplyDump.class) - .build(); + this.jvppSnat = jvppSnat; this.ifcContext = ifcContext; } @@ -75,27 +66,8 @@ public final class SubIfcNatReaderFactory implements ReaderFactory { registry.addStructuralReader(NAT_AUG_CONTAINER_ID, NatBuilder.class); registry.addAfter(new GenericInitReader<>(NAT_AUG_CONTAINER_ID.child(Inbound.class), - new SubInterfaceInboundNatCustomizer(snatIfcDumpMgr, ifcContext)), SUB_IFC_ID); + new SubInterfaceInboundNatCustomizer(jvppSnat, ifcContext)), SUB_IFC_ID); registry.addAfter(new GenericInitReader<>(NAT_AUG_CONTAINER_ID.child(Outbound.class), - new SubInterfaceOutboundNatCustomizer(snatIfcDumpMgr, ifcContext)), SUB_IFC_ID); - } - - private static final class SnatInterfaceExecutor implements - EntityDumpExecutor, - JvppReplyConsumer { - - private final FutureJVppSnatFacade jvppSnat; - - SnatInterfaceExecutor(final FutureJVppSnatFacade jvppSnat) { - this.jvppSnat = jvppSnat; - } - - @Nonnull - @Override - public SnatInterfaceDetailsReplyDump executeDump(final InstanceIdentifier identifier, final Void params) - throws ReadFailedException { - return getReplyForRead( - jvppSnat.snatInterfaceDump(new SnatInterfaceDump()).toCompletableFuture(), identifier); - } + new SubInterfaceOutboundNatCustomizer(jvppSnat, ifcContext)), SUB_IFC_ID); } } -- cgit 1.2.3-korg