Make com.cloud.network.vpn.RemoteAccessVpnService an extensible type
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/1f7ef652 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/1f7ef652 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/1f7ef652 Branch: refs/heads/ui-restyle Commit: 1f7ef652cf4be2d2a7ab184e08ac212c6469df81 Parents: 5e2e27d Author: Darren Shepherd <[email protected]> Authored: Thu Nov 14 00:34:58 2013 -0700 Committer: Sheng Yang <[email protected]> Committed: Thu Nov 14 15:31:33 2013 -0800 ---------------------------------------------------------------------- .../core/spring-core-registry-core-context.xml | 10 ++++++++++ ...ng-core-lifecycle-network-context-inheritable.xml | 6 ++++++ .../core/spring-server-core-managers-context.xml | 4 +++- .../network/vpn/RemoteAccessVpnManagerImpl.java | 15 +++++++++++++-- 4 files changed, 32 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/1f7ef652/core/resources/META-INF/cloudstack/core/spring-core-registry-core-context.xml ---------------------------------------------------------------------- diff --git a/core/resources/META-INF/cloudstack/core/spring-core-registry-core-context.xml b/core/resources/META-INF/cloudstack/core/spring-core-registry-core-context.xml index a8b2e29..be11a1f 100644 --- a/core/resources/META-INF/cloudstack/core/spring-core-registry-core-context.xml +++ b/core/resources/META-INF/cloudstack/core/spring-core-registry-core-context.xml @@ -213,6 +213,16 @@ </list> </property> </bean> + + <bean id="remoteAccessVPNServiceProviderRegistry" + class="org.apache.cloudstack.spring.lifecycle.registry.ExtensionRegistry"> + <property name="excludeKey" value="remote.access.vpn.service.provider.exclude" /> + <property name="preRegistered"> + <list> + <ref bean="VpcVirtualRouter" /> + </list> + </property> + </bean> <bean id="affinityProcessorsRegistry" class="org.apache.cloudstack.spring.lifecycle.registry.ExtensionRegistry"> http://git-wip-us.apache.org/repos/asf/cloudstack/blob/1f7ef652/core/resources/META-INF/cloudstack/network/spring-core-lifecycle-network-context-inheritable.xml ---------------------------------------------------------------------- diff --git a/core/resources/META-INF/cloudstack/network/spring-core-lifecycle-network-context-inheritable.xml b/core/resources/META-INF/cloudstack/network/spring-core-lifecycle-network-context-inheritable.xml index 3388ca4..a54d588 100644 --- a/core/resources/META-INF/cloudstack/network/spring-core-lifecycle-network-context-inheritable.xml +++ b/core/resources/META-INF/cloudstack/network/spring-core-lifecycle-network-context-inheritable.xml @@ -90,5 +90,11 @@ <property name="typeClass" value="com.cloud.network.element.Site2SiteVpnServiceProvider" /> </bean> + + <bean class="org.apache.cloudstack.spring.lifecycle.registry.RegistryLifecycle"> + <property name="registry" ref="remoteAccessVPNServiceProviderRegistry" /> + <property name="typeClass" + value="com.cloud.network.element.RemoteAccessVPNServiceProvider" /> + </bean> </beans> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/cloudstack/blob/1f7ef652/server/resources/META-INF/cloudstack/core/spring-server-core-managers-context.xml ---------------------------------------------------------------------- diff --git a/server/resources/META-INF/cloudstack/core/spring-server-core-managers-context.xml b/server/resources/META-INF/cloudstack/core/spring-server-core-managers-context.xml index f7a8d67..2a080f9 100644 --- a/server/resources/META-INF/cloudstack/core/spring-server-core-managers-context.xml +++ b/server/resources/META-INF/cloudstack/core/spring-server-core-managers-context.xml @@ -144,7 +144,9 @@ <bean id="regionServiceImpl" class="org.apache.cloudstack.region.RegionServiceImpl" /> - <bean id="remoteAccessVpnManagerImpl" class="com.cloud.network.vpn.RemoteAccessVpnManagerImpl" /> + <bean id="remoteAccessVpnManagerImpl" class="com.cloud.network.vpn.RemoteAccessVpnManagerImpl" > + <property name="vpnServiceProviders" value="#{remoteAccessVPNServiceProviderRegistry.registered}" /> + </bean> <bean id="resourceLimitManagerImpl" class="com.cloud.resourcelimit.ResourceLimitManagerImpl" /> http://git-wip-us.apache.org/repos/asf/cloudstack/blob/1f7ef652/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java ---------------------------------------------------------------------- diff --git a/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java b/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java index 9483465..dd18f74 100755 --- a/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java +++ b/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java @@ -109,8 +109,9 @@ public class RemoteAccessVpnManagerImpl extends ManagerBase implements RemoteAcc @Inject FirewallManager _firewallMgr; @Inject UsageEventDao _usageEventDao; @Inject ConfigurationDao _configDao; - @Inject List<RemoteAccessVPNServiceProvider> _vpnServiceProviders; - @Inject ConfigurationServer _configServer; + List<RemoteAccessVPNServiceProvider> _vpnServiceProviders; + + @Inject ConfigurationServer _configServer; @Inject VpcDao _vpcDao; int _userLimit; @@ -695,4 +696,14 @@ public class RemoteAccessVpnManagerImpl extends ManagerBase implements RemoteAcc public ConfigKey<?>[] getConfigKeys() { return new ConfigKey<?>[] {RemoteAccessVpnClientIpRange}; } + + public List<RemoteAccessVPNServiceProvider> getVpnServiceProviders() { + return _vpnServiceProviders; + } + + public void setVpnServiceProviders( + List<RemoteAccessVPNServiceProvider> vpnServiceProviders) { + this._vpnServiceProviders = vpnServiceProviders; + } + }
