mirror of https://github.com/apache/cloudstack.git
In the past, the NetworkElement would cover almost all the functionality that e.g. virtual router can cover: firewall, source NAT, static NAT, password, VPN... So anyone want to implement the NetworkElement would have to implement these service's specific methods, even it wouldn't support it. Also, if we want to find a e.g. FirewallServiceProvider, we have to proceed all the current network service providers, to call a method to know if it support such service. That's neither elegant nor scaling way to do it. As the first step, this patch separates each ServiceProvider from NetworkElement (there are some interface already out of NetworkElement, so this patch slightly modifies them too), and only the class would implement the correlated interface, would have the ability to do these services. |
||
|---|---|---|
| .. | ||
| src/com/cloud | ||
| .classpath | ||
| .project | ||