[ https://issues.apache.org/jira/browse/CLOUDSTACK-8832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14876358#comment-14876358 ]
ASF GitHub Bot commented on CLOUDSTACK-8832: -------------------------------------------- Github user jburwell commented on a diff in the pull request: https://github.com/apache/cloudstack/pull/801#discussion_r39899078 --- Diff: plugins/network-elements/nuage-vsp/src/com/cloud/network/element/NuageVspElement.java --- @@ -205,6 +250,75 @@ public boolean implement(Network network, NetworkOffering offering, DeployDestin return false; } + final boolean egressDefaultPolicy = offering.getEgressDefaultPolicy(); + Domain networkDomain = _domainDao.findById(network.getDomainId()); + boolean isFirewallServiceSupported = _networkModel.areServicesSupportedByNetworkOffering(offering.getId(), Service.Firewall); + List<String> dnsServers = _nuageVspManager.getDnsDetails(network); + + boolean isL2Network = false, isL3Network = false, isShared = false; + String subnetUuid = network.getUuid(); + if (offering.getGuestType() == Network.GuestType.Shared) { + isShared = true; + subnetUuid = networkDomain.getUuid(); + } else if (_ntwkOfferingSrvcDao.areServicesSupportedByNetworkOffering(offering.getId(), Service.SourceNat) + || _ntwkOfferingSrvcDao.areServicesSupportedByNetworkOffering(offering.getId(), Service.StaticNat) + || _ntwkOfferingSrvcDao.areServicesSupportedByNetworkOffering(offering.getId(), Service.Connectivity)) { + isL3Network = true; + } else { + isL2Network = true; + } + + String preConfiguredDomainTemplateName = getPreConfiguredDomainTemplateName(network, offering); + List<FirewallRuleVO> firewallIngressRulesToApply = + _firewallRulesDao.listByNetworkPurposeTrafficType(network.getId(), FirewallRule.Purpose.Firewall, FirewallRule.TrafficType.Ingress); + for (FirewallRuleVO rule : firewallIngressRulesToApply) { + // load cidrs if any + rule.setSourceCidrList(_firewallRulesCidrsDao.getSourceCidrs(rule.getId())); + } + + List<FirewallRuleVO> firewallEgressRulesToApply = + _firewallRulesDao.listByNetworkPurposeTrafficType(network.getId(), FirewallRule.Purpose.Firewall, FirewallRule.TrafficType.Egress); + for (FirewallRuleVO rule : firewallEgressRulesToApply) { + // load cidrs if any + rule.setSourceCidrList(_firewallRulesCidrsDao.getSourceCidrs(rule.getId())); + } + + List<Map<String, Object>> ingressFirewallRules = Lists.transform(firewallIngressRulesToApply, new Function<FirewallRuleVO, Map<String, Object>>() { + @Override + public Map<String, Object> apply(FirewallRuleVO firewallRuleVO) { + return getACLRuleDetails(firewallRuleVO, egressDefaultPolicy); + } + }); + + List<Map<String, Object>> egressFirewallRules = Lists.transform(firewallEgressRulesToApply, new Function<FirewallRuleVO, Map<String, Object>>() { --- End diff -- This ``Function`` is a duplicate of the one declared on line #286. Extract to ``private static final`` inner class to remove duplication and make the code more readable. > Update Nuage VSP plugin to work with Nuage VSP release 3.2 > ---------------------------------------------------------- > > Key: CLOUDSTACK-8832 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-8832 > Project: CloudStack > Issue Type: Improvement > Security Level: Public(Anyone can view this level - this is the > default.) > Components: Management Server > Affects Versions: 4.6.0 > Reporter: Nick Livens > Assignee: Nick Livens > > Nuage VSP 3.2 is being released, we want to bring the plugin up to date for > this release -- This message was sent by Atlassian JIRA (v6.3.4#6332)