remove unnecessary cast
[neutron.git] / transcriber / src / main / java / org / opendaylight / neutron / transcriber / NeutronFirewallInterface.java
index ea9d2de395de4c07230a6e0bed9b1f05e9b8fb74..389a24bcd530591717d1231f0a84afbee15ec52d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2014 Red Hat, Inc.
+ * Copyright (c) 2014, 2015 Red Hat, Inc. and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
 
 package org.opendaylight.neutron.transcriber;
 
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
+import java.util.List;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.neutron.spi.INeutronFirewallCRUD;
 import org.opendaylight.neutron.spi.NeutronFirewall;
-import org.opendaylight.yangtools.yang.binding.DataObject;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.ServiceRegistration;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map.Entry;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev150712.firewalls.attributes.Firewalls;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev150712.firewalls.attributes.firewalls.Firewall;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev150712.firewalls.attributes.firewalls.FirewallBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev150712.firewalls.attributes.firewalls.FirewallKey;
 
-public class NeutronFirewallInterface extends AbstractNeutronInterface implements INeutronFirewallCRUD {
+public final class NeutronFirewallInterface
+        extends AbstractNeutronInterface<Firewall, Firewalls, FirewallKey, NeutronFirewall>
+        implements INeutronFirewallCRUD {
 
-    private static final Logger LOGGER = LoggerFactory.getLogger(NeutronFirewallInterface.class);
-
-    private ConcurrentMap<String, NeutronFirewall> firewallDB  = new ConcurrentHashMap<String, NeutronFirewall>();
-
-
-    NeutronFirewallInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronFirewallInterface(DataBroker db) {
+        super(FirewallBuilder.class, db);
     }
 
     @Override
-    public boolean neutronFirewallExists(String uuid) {
-        return firewallDB.containsKey(uuid);
+    protected List<Firewall> getDataObjectList(Firewalls firewalls) {
+        return firewalls.getFirewall();
     }
 
     @Override
-    public NeutronFirewall getNeutronFirewall(String uuid) {
-        if (!neutronFirewallExists(uuid)) {
-            LOGGER.debug("No Firewall Have Been Defined");
-            return null;
+    protected NeutronFirewall fromMd(Firewall firewall) {
+        final NeutronFirewall answer = new NeutronFirewall();
+        fromMdBaseAttributes(firewall, answer);
+        answer.setFirewallAdminStateIsUp(firewall.isAdminStateUp());
+        if (firewall.isShared() != null) {
+            answer.setFirewallIsShared(firewall.isShared());
         }
-        return firewallDB.get(uuid);
-    }
-
-    @Override
-    public List<NeutronFirewall> getAllNeutronFirewalls() {
-        Set<NeutronFirewall> allFirewalls = new HashSet<NeutronFirewall>();
-        for (Entry<String, NeutronFirewall> entry : firewallDB.entrySet()) {
-            NeutronFirewall firewall = entry.getValue();
-            allFirewalls.add(firewall);
+        if (firewall.getFirewallPolicyId() != null) {
+            answer.setFirewallPolicyID(firewall.getFirewallPolicyId().getValue());
         }
-        LOGGER.debug("Exiting getFirewalls, Found {} OpenStackFirewall", allFirewalls.size());
-        List<NeutronFirewall> ans = new ArrayList<NeutronFirewall>();
-        ans.addAll(allFirewalls);
-        return ans;
+        return answer;
     }
 
     @Override
-    public boolean addNeutronFirewall(NeutronFirewall input) {
-        if (neutronFirewallExists(input.getFirewallUUID())) {
-            return false;
+    protected Firewall toMd(NeutronFirewall firewall) {
+        final FirewallBuilder firewallBuilder = new FirewallBuilder();
+        toMdBaseAttributes(firewall, firewallBuilder);
+        if (firewall.getFirewallAdminStateIsUp() != null) {
+            firewallBuilder.setAdminStateUp(firewall.getFirewallAdminStateIsUp());
         }
-        firewallDB.putIfAbsent(input.getFirewallUUID(), input);
-        return true;
-    }
-
-    @Override
-    public boolean removeNeutronFirewall(String uuid) {
-        if (!neutronFirewallExists(uuid)) {
-            return false;
+        if (firewall.getFirewallIsShared() != null) {
+            firewallBuilder.setShared(firewall.getFirewallIsShared());
         }
-        firewallDB.remove(uuid);
-        return true;
-    }
-
-    @Override
-    public boolean updateNeutronFirewall(String uuid, NeutronFirewall delta) {
-        if (!neutronFirewallExists(uuid)) {
-            return false;
-        }
-        NeutronFirewall target = firewallDB.get(uuid);
-        return overwrite(target, delta);
-    }
-
-    @Override
-    public boolean neutronFirewallInUse(String firewallUUID) {
-        return !neutronFirewallExists(firewallUUID);
-    }
-
-    @Override
-    protected InstanceIdentifier createInstanceIdentifier(DataObject item) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    @Override
-    protected DataObject toMd(Object neutronObject) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    @Override
-    protected DataObject toMd(String uuid) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
-                                            List<ServiceRegistration<?>> registrations) {
-        NeutronFirewallInterface neutronFirewallInterface = new NeutronFirewallInterface(providerContext);
-        ServiceRegistration<INeutronFirewallCRUD> neutronFirewallInterfaceRegistration = context.registerService(INeutronFirewallCRUD.class, neutronFirewallInterface, null);
-        if(neutronFirewallInterfaceRegistration != null) {
-            registrations.add(neutronFirewallInterfaceRegistration);
+        if (firewall.getFirewallPolicyID() != null) {
+            firewallBuilder.setFirewallPolicyId(toUuid(firewall.getFirewallPolicyID()));
         }
+        return firewallBuilder.build();
     }
 }