BUG-47 : PCEP migration to generated DTOs.
[bgpcep.git] / pcep / impl / src / main / java / org / opendaylight / protocol / pcep / impl / PCEPSessionProposalFactoryImpl.java
index cc783478c7d7e020955086d028e2ea4a8ce2ae8d..79b623f59e9846e6fef22e52b4289b6c6342ed29 100644 (file)
@@ -7,27 +7,24 @@
  */
 package org.opendaylight.protocol.pcep.impl;
 
-import java.io.Closeable;
-import java.io.IOException;
 import java.net.InetSocketAddress;
-import java.util.ArrayList;
-import java.util.List;
 
-import org.opendaylight.protocol.pcep.PCEPSessionPreferences;
-import org.opendaylight.protocol.pcep.PCEPSessionProposal;
 import org.opendaylight.protocol.pcep.PCEPSessionProposalFactory;
-import org.opendaylight.protocol.pcep.PCEPTlv;
-import org.opendaylight.protocol.pcep.object.PCEPOpenObject;
-import org.opendaylight.protocol.pcep.tlv.LSPCleanupTlv;
-import org.opendaylight.protocol.pcep.tlv.PCEStatefulCapabilityTlv;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.OpenObject;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.StatefulCapabilityTlv.Flags;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.open.message.open.message.OpenBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.open.object.Tlvs;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.open.object.TlvsBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.open.object.tlvs.StatefulBuilder;
 
-public class PCEPSessionProposalFactoryImpl extends PCEPSessionProposalFactory implements Closeable {
+public class PCEPSessionProposalFactoryImpl implements PCEPSessionProposalFactory {
 
        private final int keepAlive, deadTimer, timeout;
 
        private final boolean stateful, active, versioned, instant;
 
-       public PCEPSessionProposalFactoryImpl(final int deadTimer, final int keepAlive, final boolean stateful, final boolean active, final boolean versioned, final boolean instant, final int timeout) {
+       public PCEPSessionProposalFactoryImpl(final int deadTimer, final int keepAlive, final boolean stateful, final boolean active,
+                       final boolean versioned, final boolean instant, final int timeout) {
                this.deadTimer = deadTimer;
                this.keepAlive = keepAlive;
                this.stateful = stateful;
@@ -38,23 +35,14 @@ public class PCEPSessionProposalFactoryImpl extends PCEPSessionProposalFactory i
        }
 
        @Override
-       public PCEPSessionProposal getSessionProposal(final InetSocketAddress address, final int sessionId) {
-               return new PCEPSessionProposal() {
-
-                       @Override
-                       public PCEPSessionPreferences getProposal() {
-                               List<PCEPTlv> tlvs = null;
-                               if (PCEPSessionProposalFactoryImpl.this.stateful) {
-                                       tlvs = new ArrayList<PCEPTlv>();
-                                       tlvs.add(new PCEStatefulCapabilityTlv(PCEPSessionProposalFactoryImpl.this.instant, PCEPSessionProposalFactoryImpl.this.active, PCEPSessionProposalFactoryImpl.this.versioned));
-                                       if (PCEPSessionProposalFactoryImpl.this.instant) {
-                                               tlvs.add(new LSPCleanupTlv(PCEPSessionProposalFactoryImpl.this.timeout));
-                                       }
-                               }
-                               return new PCEPSessionPreferences(new PCEPOpenObject(PCEPSessionProposalFactoryImpl.this.keepAlive, PCEPSessionProposalFactoryImpl.this.deadTimer, sessionId, tlvs));
-                       }
-
-               };
+       public OpenObject getSessionProposal(final InetSocketAddress address, final int sessionId) {
+               final Tlvs tlvs = null;
+               final TlvsBuilder builder = new TlvsBuilder();
+               if (PCEPSessionProposalFactoryImpl.this.stateful) {
+                       builder.setStateful((new StatefulBuilder().setFlags(new Flags(PCEPSessionProposalFactoryImpl.this.versioned, PCEPSessionProposalFactoryImpl.this.instant, PCEPSessionProposalFactoryImpl.this.active)).build()));
+               }
+               return new OpenBuilder().setKeepalive((short) PCEPSessionProposalFactoryImpl.this.keepAlive).setDeadTimer(
+                               (short) PCEPSessionProposalFactoryImpl.this.deadTimer).setSessionId((short) sessionId).setTlvs(tlvs).build();
        }
 
        public int getKeepAlive() {
@@ -84,9 +72,4 @@ public class PCEPSessionProposalFactoryImpl extends PCEPSessionProposalFactory i
        public int getTimeout() {
                return this.timeout;
        }
-
-       @Override
-       public void close() throws IOException {
-               // nothing to close
-       }
 }