}
}
- grouping firewallpolicy-attributes {
+ grouping firewall-policy-attributes {
leaf descr {
type string;
description "Detailed description of the firewall policy.";
}
}
- grouping firewallrule-attributes {
+ grouping firewall-rule-attributes {
leaf descr {
type string;
description "Detailed description of the firewall rule.";
}
}
- grouping fwaas-attributes {
+ grouping firewalls-attributes {
container firewalls {
list firewall {
key "uuid";
uses firewall-attributes;
}
}
+ }
+ grouping policies-attributes {
container firewall-policies {
list firewall-policy {
key "uuid";
uses attrs:base-attributes;
- uses firewallpolicy-attributes;
+ uses firewall-policy-attributes;
}
}
+ }
+ grouping rules-attributes {
container firewall-rules {
list firewall-rule {
key "uuid";
uses attrs:base-attributes;
- uses firewallrule-attributes;
+ uses firewall-rule-attributes;
}
}
}
import neutron-lbaasv2 { prefix "lbaasv2"; }
import neutron-provider { prefix "provider"; }
import neutron-vpnaas { prefix "vpnaas"; }
+ import neutron-fwaas { prefix "fwaas"; }
organization "OpenDaylight Neutron Group";
container neutron {
uses networks:networks-attributes;
+ uses provider:provider-attributes;
+ uses subnets:subnets-attributes;
+ uses ports:ports-attributes;
uses l3:routers-attributes;
uses l3:floatingips-attributes;
uses metering:metering-labels-attributes;
uses metering:metering-rules-attributes;
- uses ports:ports-attributes;
uses secgroups:security-groups-attributes;
uses secgroups:security-rules-attributes;
- uses subnets:subnets-attributes;
+ uses fwaas:firewalls-attributes;
+ uses fwaas:policies-attributes;
+ uses fwaas:rules-attributes;
uses lbaasv2:lbaas-attributes;
- uses provider:provider-attributes;
uses vpnaas:vpnservices-attributes;
uses vpnaas:ikepolicies-attributes;
uses vpnaas:ipsecpolicies-attributes;
return neutronFirewallPolicyID;
}
- public void setNeutronFirewallPolicyID(String firewallPolicy) {
+ public void setFirewallPolicyID(String firewallPolicy) {
this.neutronFirewallPolicyID = firewallPolicy;
}
ans.setFirewallIsShared(firewallIsShared);
}
if (s.equals("firewall_policy_id")) {
- ans.setNeutronFirewallPolicyID(this.getFirewallPolicyID());
+ ans.setFirewallPolicyID(this.getFirewallPolicyID());
}
}
return ans;
return firewallRulePolicyID;
}
- public void setFirewallRulesPolicyID(String firewallRulePolicyID) {
+ public void setFirewallRulePolicyID(String firewallRulePolicyID) {
this.firewallRulePolicyID = firewallRulePolicyID;
}
ans.setFirewallRuleIsShared(firewallRuleIsShared);
}
if (s.equals("firewall_policy_id")) {
- ans.setFirewallRulesPolicyID(this.getFirewallRulePolicyID());
+ ans.setFirewallRulePolicyID(this.getFirewallRulePolicyID());
}
if (s.equals("protocol")) {
ans.setFirewallRuleProtocol(this.getFirewallRuleProtocol());
import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
import org.opendaylight.neutron.spi.INeutronFirewallCRUD;
-import org.opendaylight.neutron.spi.INeutronObject;
import org.opendaylight.neutron.spi.NeutronFirewall;
-import org.opendaylight.yangtools.yang.binding.DataObject;
+
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.firewalls.attributes.Firewalls;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.firewalls.attributes.firewalls.Firewall;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.firewalls.attributes.firewalls.FirewallBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.rev150325.Neutron;
+
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceRegistration;
import java.util.List;
import java.util.Map.Entry;
import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
-public class NeutronFirewallInterface extends AbstractNeutronInterface implements INeutronFirewallCRUD {
+public class NeutronFirewallInterface extends AbstractNeutronInterface<Firewall,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);
}
@Override
public boolean neutronFirewallExists(String uuid) {
- return firewallDB.containsKey(uuid);
+ Firewall firewall = readMd(createInstanceIdentifier(toMd(uuid)));
+ if (firewall == null) {
+ return false;
+ }
+ return true;
}
@Override
public NeutronFirewall getNeutronFirewall(String uuid) {
- if (!neutronFirewallExists(uuid)) {
- LOGGER.debug("No Firewall Have Been Defined");
+ Firewall firewall = readMd(createInstanceIdentifier(toMd(uuid)));
+ if (firewall == null) {
return null;
}
- return firewallDB.get(uuid);
+ return fromMd(firewall);
}
@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);
+ Firewalls firewalls = readMd(createInstanceIdentifier());
+ if (firewalls != null) {
+ for (Firewall firewall: firewalls.getFirewall()) {
+ allFirewalls.add(fromMd(firewall));
+ }
}
LOGGER.debug("Exiting getFirewalls, Found {} OpenStackFirewall", allFirewalls.size());
List<NeutronFirewall> ans = new ArrayList<NeutronFirewall>();
if (neutronFirewallExists(input.getID())) {
return false;
}
- firewallDB.putIfAbsent(input.getID(), input);
+ addMd(input);
return true;
}
if (!neutronFirewallExists(uuid)) {
return false;
}
- firewallDB.remove(uuid);
- return true;
+ return removeMd(toMd(uuid));
}
@Override
if (!neutronFirewallExists(uuid)) {
return false;
}
- NeutronFirewall target = firewallDB.get(uuid);
- return overwrite(target, delta);
+ updateMd(delta);
+ return true;
}
@Override
}
@Override
- protected InstanceIdentifier createInstanceIdentifier(DataObject item) {
- // TODO Auto-generated method stub
- return null;
+ protected InstanceIdentifier<Firewall> createInstanceIdentifier(Firewall item) {
+ return InstanceIdentifier.create(Neutron.class)
+ .child(Firewalls.class)
+ .child(Firewall.class, item.getKey());
+ }
+
+ protected InstanceIdentifier<Firewalls> createInstanceIdentifier() {
+ return InstanceIdentifier.create(Neutron.class)
+ .child(Firewalls.class);
+ }
+
+ protected NeutronFirewall fromMd(Firewall firewall) {
+ NeutronFirewall answer = new NeutronFirewall();
+ if (firewall.getUuid() != null) {
+ answer.setID(firewall.getUuid().getValue());
+ }
+ if (firewall.getName() != null) {
+ answer.setFirewallName(firewall.getName());
+ }
+ if (firewall.getTenantId() != null) {
+ answer.setFirewallTenantID(firewall.getTenantId().getValue().replace("-",""));
+ }
+ answer.setFirewallAdminStateIsUp(firewall.isAdminStateUp());
+ if (firewall.getStatus() != null) {
+ answer.setFirewallStatus(firewall.getStatus());
+ }
+ if (firewall.getDescr() != null) {
+ answer.setFirewallDescription(firewall.getDescr());
+ }
+ if (firewall.isShared() != null) {
+ answer.setFirewallIsShared(firewall.isShared());
+ }
+ if (firewall.getFirewallPolicyId() != null) {
+ answer.setFirewallPolicyID(firewall.getFirewallPolicyId().getValue());
+ }
+ return answer;
}
@Override
- protected DataObject toMd(INeutronObject neutronObject) {
- // TODO Auto-generated method stub
- return null;
+ protected Firewall toMd(NeutronFirewall firewall) {
+ FirewallBuilder firewallBuilder = new FirewallBuilder();
+ if (firewall.getID() != null) {
+ firewallBuilder.setUuid(toUuid(firewall.getID()));
+ }
+ if (firewall.getFirewallName() != null) {
+ firewallBuilder.setName(firewall.getFirewallName());
+ }
+ if (firewall.getFirewallTenantID() != null) {
+ firewallBuilder.setTenantId(toUuid(firewall.getFirewallTenantID()));
+ }
+ if (firewall.getFirewallAdminStateIsUp() != null) {
+ firewallBuilder.setAdminStateUp(firewall.getFirewallAdminStateIsUp());
+ }
+ if (firewall.getFirewallStatus() != null) {
+ firewallBuilder.setStatus(firewall.getFirewallStatus());
+ }
+ if (firewall.getFirewallDescription() != null) {
+ firewallBuilder.setDescr(firewall.getFirewallDescription());
+ }
+ if (firewall.getFirewallIsShared() != null) {
+ firewallBuilder.setShared(firewall.getFirewallIsShared());
+ }
+ if (firewall.getFirewallPolicyID() != null) {
+ firewallBuilder.setFirewallPolicyId(toUuid(firewall.getFirewallPolicyID()));
+ }
+ return firewallBuilder.build();
}
@Override
- protected DataObject toMd(String uuid) {
- // TODO Auto-generated method stub
- return null;
+ protected Firewall toMd(String uuid) {
+ FirewallBuilder firewallBuilder = new FirewallBuilder();
+ firewallBuilder.setUuid(toUuid(uuid));
+ return firewallBuilder.build();
}
public static void registerNewInterface(BundleContext context,
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.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
import org.opendaylight.neutron.spi.INeutronFirewallPolicyCRUD;
import org.opendaylight.neutron.spi.INeutronObject;
import org.opendaylight.neutron.spi.NeutronFirewallPolicy;
-import org.opendaylight.yangtools.yang.binding.DataObject;
+
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.policies.attributes.FirewallPolicies;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.policies.attributes.firewall.policies.FirewallPolicy;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.policies.attributes.firewall.policies.FirewallPolicyBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.rev150325.Neutron;
+
+
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceRegistration;
/**
*/
-public class NeutronFirewallPolicyInterface extends AbstractNeutronInterface implements INeutronFirewallPolicyCRUD {
+public class NeutronFirewallPolicyInterface extends AbstractNeutronInterface<FirewallPolicy,NeutronFirewallPolicy> implements INeutronFirewallPolicyCRUD {
private static final Logger LOGGER = LoggerFactory.getLogger(NeutronFirewallPolicyInterface.class);
- private ConcurrentMap<String, NeutronFirewallPolicy> firewallPolicyDB = new ConcurrentHashMap<String, NeutronFirewallPolicy>();
-
-
NeutronFirewallPolicyInterface(ProviderContext providerContext) {
super(providerContext);
}
@Override
public boolean neutronFirewallPolicyExists(String uuid) {
- return firewallPolicyDB.containsKey(uuid);
+ FirewallPolicy policy = readMd(createInstanceIdentifier(toMd(uuid)));
+ if (policy == null) {
+ return false;
+ }
+ return true;
}
@Override
public NeutronFirewallPolicy getNeutronFirewallPolicy(String uuid) {
- if (!neutronFirewallPolicyExists(uuid)) {
- LOGGER.debug("No Firewall Rule Have Been Defined");
+ FirewallPolicy policy = readMd(createInstanceIdentifier(toMd(uuid)));
+ if (policy == null) {
return null;
}
- return firewallPolicyDB.get(uuid);
+ return fromMd(policy);
}
@Override
public List<NeutronFirewallPolicy> getAllNeutronFirewallPolicies() {
Set<NeutronFirewallPolicy> allFirewallPolicies = new HashSet<NeutronFirewallPolicy>();
- for (Entry<String, NeutronFirewallPolicy> entry : firewallPolicyDB.entrySet()) {
- NeutronFirewallPolicy firewallPolicy = entry.getValue();
- allFirewallPolicies.add(firewallPolicy);
+ FirewallPolicies policies = readMd(createInstanceIdentifier());
+ if (policies != null) {
+ for (FirewallPolicy policy: policies.getFirewallPolicy()) {
+ allFirewallPolicies.add(fromMd(policy));
+ }
}
LOGGER.debug("Exiting getFirewallPolicies, Found {} OpenStackFirewallPolicy", allFirewallPolicies.size());
List<NeutronFirewallPolicy> ans = new ArrayList<NeutronFirewallPolicy>();
if (neutronFirewallPolicyExists(input.getID())) {
return false;
}
- firewallPolicyDB.putIfAbsent(input.getID(), input);
+ addMd(input);
return true;
}
if (!neutronFirewallPolicyExists(uuid)) {
return false;
}
- firewallPolicyDB.remove(uuid);
- return true;
+ return removeMd(toMd(uuid));
}
@Override
if (!neutronFirewallPolicyExists(uuid)) {
return false;
}
- NeutronFirewallPolicy target = firewallPolicyDB.get(uuid);
- return overwrite(target, delta);
+ updateMd(delta);
+ return true;
}
@Override
}
@Override
- protected InstanceIdentifier createInstanceIdentifier(DataObject item) {
- // TODO Auto-generated method stub
- return null;
+ protected InstanceIdentifier<FirewallPolicy> createInstanceIdentifier(FirewallPolicy item) {
+ return InstanceIdentifier.create(Neutron.class)
+ .child(FirewallPolicies.class)
+ .child(FirewallPolicy.class, item.getKey());
+ }
+
+ protected InstanceIdentifier<FirewallPolicies> createInstanceIdentifier() {
+ return InstanceIdentifier.create(Neutron.class)
+ .child(FirewallPolicies.class);
+ }
+
+ protected NeutronFirewallPolicy fromMd(FirewallPolicy policy) {
+ NeutronFirewallPolicy answer = new NeutronFirewallPolicy();
+ if (policy.getUuid() != null) {
+ answer.setID(policy.getUuid().getValue());
+ }
+ if (policy.getName() != null) {
+ answer.setFirewallPolicyName(policy.getName());
+ }
+ if (policy.getTenantId() != null) {
+ answer.setFirewallPolicyTenantID(policy.getTenantId().getValue().replace("-",""));
+ }
+ if (policy.getDescr() != null) {
+ answer.setFirewallPolicyDescription(policy.getDescr());
+ }
+ if (policy.isShared() != null) {
+ answer.setFirewallPolicyIsShared(policy.isShared());
+ }
+ if (policy.isAudited() != null) {
+ answer.setFirewallPolicyIsAudited(policy.isAudited());
+ }
+ if (policy.getFirewallRules() != null) {
+ List<String> rules = new ArrayList<String>();
+ for (Uuid rule: policy.getFirewallRules()) {
+ rules.add(rule.getValue());
+ }
+ answer.setFirewallPolicyRules(rules);
+ }
+ return answer;
}
@Override
- protected DataObject toMd(INeutronObject neutronObject) {
- // TODO Auto-generated method stub
- return null;
+ protected FirewallPolicy toMd(NeutronFirewallPolicy policy) {
+ FirewallPolicyBuilder policyBuilder = new FirewallPolicyBuilder();
+ if (policy.getID() != null) {
+ policyBuilder.setUuid(toUuid(policy.getID()));
+ }
+ if (policy.getFirewallPolicyName() != null) {
+ policyBuilder.setName(policy.getFirewallPolicyName());
+ }
+ if (policy.getFirewallPolicyTenantID() != null) {
+ policyBuilder.setTenantId(toUuid(policy.getFirewallPolicyTenantID()));
+ }
+ if (policy.getFirewallPolicyDescription() != null) {
+ policyBuilder.setDescr(policy.getFirewallPolicyDescription());
+ }
+ if (policy.getFirewallPolicyIsShared() != null) {
+ policyBuilder.setShared(policy.getFirewallPolicyIsShared());
+ }
+ if (policy.getFirewallPolicyIsAudited() != null) {
+ policyBuilder.setAudited(policy.getFirewallPolicyIsAudited());
+ }
+ if (policy.getFirewallPolicyRules() != null) {
+ List<Uuid> rules = new ArrayList<Uuid>();
+ for (String rule: policy.getFirewallPolicyRules()) {
+ rules.add(toUuid(rule));
+ }
+ policyBuilder.setFirewallRules(rules);
+ }
+ return policyBuilder.build();
}
@Override
- protected DataObject toMd(String uuid) {
- // TODO Auto-generated method stub
- return null;
+ protected FirewallPolicy toMd(String uuid) {
+ FirewallPolicyBuilder policyBuilder = new FirewallPolicyBuilder();
+ policyBuilder.setUuid(toUuid(uuid));
+ return policyBuilder.build();
}
public static void registerNewInterface(BundleContext context,
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.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
import org.opendaylight.neutron.spi.INeutronFirewallRuleCRUD;
import org.opendaylight.neutron.spi.INeutronObject;
import org.opendaylight.neutron.spi.NeutronFirewallRule;
-import org.opendaylight.yangtools.yang.binding.DataObject;
+
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.rules.attributes.FirewallRules;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.rules.attributes.firewall.rules.FirewallRule;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.fwaas.rev141002.rules.attributes.firewall.rules.FirewallRuleBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.rev150325.Neutron;
+
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;
-public class NeutronFirewallRuleInterface extends AbstractNeutronInterface implements INeutronFirewallRuleCRUD {
+public class NeutronFirewallRuleInterface extends AbstractNeutronInterface<FirewallRule,NeutronFirewallRule> implements INeutronFirewallRuleCRUD {
private static final Logger LOGGER = LoggerFactory.getLogger(NeutronFirewallRuleInterface.class);
- private ConcurrentMap<String, NeutronFirewallRule> firewallRuleDB = new ConcurrentHashMap<String, NeutronFirewallRule>();
-
-
NeutronFirewallRuleInterface(ProviderContext providerContext) {
super(providerContext);
}
@Override
public boolean neutronFirewallRuleExists(String uuid) {
- return firewallRuleDB.containsKey(uuid);
+ FirewallRule rule = readMd(createInstanceIdentifier(toMd(uuid)));
+ if (rule == null) {
+ return false;
+ }
+ return true;
}
@Override
public NeutronFirewallRule getNeutronFirewallRule(String uuid) {
- if (!neutronFirewallRuleExists(uuid)) {
- LOGGER.debug("No Firewall Rule Have Been Defined");
+ FirewallRule rule = readMd(createInstanceIdentifier(toMd(uuid)));
+ if (rule == null) {
return null;
}
- return firewallRuleDB.get(uuid);
+ return fromMd(rule);
}
@Override
public List<NeutronFirewallRule> getAllNeutronFirewallRules() {
Set<NeutronFirewallRule> allFirewallRules = new HashSet<NeutronFirewallRule>();
- for (Entry<String, NeutronFirewallRule> entry : firewallRuleDB.entrySet()) {
- NeutronFirewallRule firewallRule = entry.getValue();
- allFirewallRules.add(firewallRule);
+ FirewallRules rules = readMd(createInstanceIdentifier());
+ if (rules != null) {
+ for (FirewallRule rule: rules.getFirewallRule()) {
+ allFirewallRules.add(fromMd(rule));
+ }
}
LOGGER.debug("Exiting getFirewallRules, Found {} OpenStackFirewallRule", allFirewallRules.size());
List<NeutronFirewallRule> ans = new ArrayList<NeutronFirewallRule>();
if (neutronFirewallRuleExists(input.getID())) {
return false;
}
- firewallRuleDB.putIfAbsent(input.getID(), input);
+ addMd(input);
return true;
}
if (!neutronFirewallRuleExists(uuid)) {
return false;
}
- firewallRuleDB.remove(uuid);
- return true;
+ return removeMd(toMd(uuid));
}
@Override
if (!neutronFirewallRuleExists(uuid)) {
return false;
}
- NeutronFirewallRule target = firewallRuleDB.get(uuid);
- return overwrite(target, delta);
+ updateMd(delta);
+ return true;
}
@Override
}
@Override
- protected InstanceIdentifier createInstanceIdentifier(DataObject item) {
- // TODO Auto-generated method stub
- return null;
+ protected InstanceIdentifier<FirewallRule> createInstanceIdentifier(FirewallRule item) {
+ return InstanceIdentifier.create(Neutron.class)
+ .child(FirewallRules.class)
+ .child(FirewallRule.class, item.getKey());
+ }
+
+ protected InstanceIdentifier<FirewallRules> createInstanceIdentifier() {
+ return InstanceIdentifier.create(Neutron.class)
+ .child(FirewallRules.class);
+ }
+
+ protected NeutronFirewallRule fromMd(FirewallRule rule) {
+ NeutronFirewallRule answer = new NeutronFirewallRule();
+ if (rule.getUuid() != null) {
+ answer.setID(rule.getUuid().getValue());
+ }
+ if (rule.getName() != null) {
+ answer.setFirewallRuleName(rule.getName());
+ }
+ if (rule.getTenantId() != null) {
+ answer.setFirewallRuleTenantID(rule.getTenantId().getValue().replace("-",""));
+ }
+ if (rule.getDescr() != null) {
+ answer.setFirewallRuleDescription(rule.getDescr());
+ }
+ if (rule.getStatus() != null) {
+ answer.setFirewallRuleStatus(rule.getStatus());
+ }
+ if (rule.isShared() != null) {
+ answer.setFirewallRuleIsShared(rule.isShared());
+ }
+ if (rule.isEnabled() != null) {
+ answer.setFirewallRuleIsEnabled(rule.isEnabled());
+ }
+ if (rule.getFirewallPolicyId() != null) {
+ answer.setFirewallRulePolicyID(rule.getFirewallPolicyId().getValue());
+ }
+ if (rule.getProtocol() != null) {
+ answer.setFirewallRuleProtocol(rule.getProtocol());
+ }
+ if (rule.getIpVersion() != null) {
+ answer.setFirewallRuleIpVer(rule.getIpVersion().intValue());
+ }
+ if (rule.getSourceIpAddr() != null) {
+ answer.setFirewallRuleSrcIpAddr(String.valueOf(rule.getSourceIpAddr().getValue()));
+ }
+ if (rule.getDestinationIpAddr() != null) {
+ answer.setFirewallRuleDstIpAddr(String.valueOf(rule.getDestinationIpAddr().getValue()));
+ }
+ if (rule.getSourcePort() != null) {
+ answer.setFirewallRuleSrcPort(rule.getSourcePort().intValue());
+ }
+ if (rule.getDestinationPort() != null) {
+ answer.setFirewallRuleDstPort(rule.getDestinationPort().intValue());
+ }
+ if (rule.getPosition() != null) {
+ answer.setFirewallRulePosition(rule.getPosition().intValue());
+ }
+ if (rule.getAction() != null) {
+ answer.setFirewallRuleAction(rule.getAction());
+ }
+ return answer;
}
@Override
- protected DataObject toMd(INeutronObject neutronObject) {
- // TODO Auto-generated method stub
- return null;
+ protected FirewallRule toMd(NeutronFirewallRule rule) {
+ FirewallRuleBuilder ruleBuilder = new FirewallRuleBuilder();
+ if (rule.getID() != null) {
+ ruleBuilder.setUuid(toUuid(rule.getID()));
+ }
+ if (rule.getFirewallRuleName() != null) {
+ ruleBuilder.setName(rule.getFirewallRuleName());
+ }
+ if (rule.getFirewallRuleTenantID() != null) {
+ ruleBuilder.setTenantId(toUuid(rule.getFirewallRuleTenantID()));
+ }
+ if (rule.getFirewallRuleDescription() != null) {
+ ruleBuilder.setDescr(rule.getFirewallRuleDescription());
+ }
+ if (rule.getFirewallRuleStatus() != null) {
+ ruleBuilder.setStatus(rule.getFirewallRuleStatus());
+ }
+ if (rule.getFirewallRuleIsShared() != null) {
+ ruleBuilder.setShared(rule.getFirewallRuleIsShared());
+ }
+ if (rule.getFirewallRuleIsEnabled() != null) {
+ ruleBuilder.setEnabled(rule.getFirewallRuleIsEnabled());
+ }
+ if (rule.getFirewallRulePolicyID() != null) {
+ ruleBuilder.setFirewallPolicyId(toUuid(rule.getFirewallRulePolicyID()));
+ }
+ if (rule.getFirewallRuleProtocol() != null) {
+ ruleBuilder.setProtocol(rule.getFirewallRuleProtocol());
+ }
+ if (rule.getFirewallRuleIpVer() != null) {
+ ruleBuilder.setIpVersion(rule.getFirewallRuleIpVer().shortValue());
+ }
+ if (rule.getFirewallRuleSrcIpAddr() != null) {
+ IpAddress ipAddress = new IpAddress(rule.getFirewallRuleSrcIpAddr().toCharArray());
+ ruleBuilder.setSourceIpAddr(ipAddress);
+ }
+ if (rule.getFirewallRuleDstIpAddr() != null) {
+ IpAddress ipAddress = new IpAddress(rule.getFirewallRuleDstIpAddr().toCharArray());
+ ruleBuilder.setDestinationIpAddr(ipAddress);
+ }
+ if (rule.getFirewallRuleSrcPort() != null) {
+ ruleBuilder.setSourcePort(rule.getFirewallRuleSrcPort().shortValue());
+ }
+ if (rule.getFirewallRuleDstPort() != null) {
+ ruleBuilder.setDestinationPort(rule.getFirewallRuleDstPort().shortValue());
+ }
+ if (rule.getFirewallRulePosition() != null) {
+ ruleBuilder.setPosition(rule.getFirewallRulePosition().shortValue());
+ }
+ if (rule.getFirewallRuleAction() != null) {
+ ruleBuilder.setAction(rule.getFirewallRuleAction());
+ }
+ return ruleBuilder.build();
}
@Override
- protected DataObject toMd(String uuid) {
- // TODO Auto-generated method stub
- return null;
+ protected FirewallRule toMd(String uuid) {
+ FirewallRuleBuilder ruleBuilder = new FirewallRuleBuilder();
+ ruleBuilder.setUuid(toUuid(uuid));
+ return ruleBuilder.build();
}
public static void registerNewInterface(BundleContext context,