Repository: stratos Updated Branches: refs/heads/master 100870cff -> 25d764b5a
Adding method comments and serialVersionUIDs in load balancer extension api component Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/25d764b5 Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/25d764b5 Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/25d764b5 Branch: refs/heads/master Commit: 25d764b5a81841177ec01021ad74667a87cdbb8e Parents: 100870c Author: Imesh Gunaratne <[email protected]> Authored: Sun Apr 26 11:09:04 2015 +0530 Committer: Imesh Gunaratne <[email protected]> Committed: Sun Apr 26 11:11:06 2015 +0530 ---------------------------------------------------------------------- .../balancer/extension/api/LoadBalancer.java | 13 +++-- .../extension/api/LoadBalancerExtension.java | 54 ++++++++++++++++---- .../LoadBalancerExtensionException.java | 2 + ...oadBalancerExtensionAPIServiceComponent.java | 12 +++++ 4 files changed, 64 insertions(+), 17 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/25d764b5/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancer.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancer.java b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancer.java index dd49e7f..266fb48 100644 --- a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancer.java +++ b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancer.java @@ -23,34 +23,33 @@ import org.apache.stratos.load.balancer.common.domain.Topology; import org.apache.stratos.load.balancer.extension.api.exception.LoadBalancerExtensionException; /** - * A generic load balancer life-cycle definition. + * Load balancer interface for managing its lifecycle. */ public interface LoadBalancer { /** * Start a new load balancer instance. - * Throw an exception if the start operation fails. + * @throws LoadBalancerExtensionException if the start operation fails */ void start() throws LoadBalancerExtensionException; /** * Stop running load balancer instance. - * Throw an exception if the stop operation fails. + * @throws LoadBalancerExtensionException if the stop operation fails. */ void stop() throws LoadBalancerExtensionException; /** * Configure the load balancer using the given topology. - * Throw an exception is the configure operation fails. - * - * @param topology + * @param topology latest topology to be configured * @return Returns true if configured correctly + * @throws LoadBalancerExtensionException if the configuration operation fails. */ boolean configure(Topology topology) throws LoadBalancerExtensionException; /** * Reload load balancer configuration using the configuration written in configure() method. - * Throw an exception if the reload operation fails. + * @throws LoadBalancerExtensionException if the reload operation fails. */ void reload() throws LoadBalancerExtensionException; } http://git-wip-us.apache.org/repos/asf/stratos/blob/25d764b5/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerExtension.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerExtension.java b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerExtension.java index 5d99191..585aace 100644 --- a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerExtension.java +++ b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerExtension.java @@ -44,6 +44,7 @@ import java.util.concurrent.ExecutorService; * received from the message broker. */ public class LoadBalancerExtension { + private static final Log log = LogFactory.getLog(LoadBalancerExtension.class); private LoadBalancer loadBalancer; @@ -72,6 +73,9 @@ public class LoadBalancerExtension { } + /** + * Set executor service and invoke execute() method to start the load balancer extension. + */ public void execute() { try { if (log.isInfoEnabled()) { @@ -101,6 +105,11 @@ public class LoadBalancerExtension { } } + /** + * Start topology event receiver thread. + * @param executorService executor service instance + * @param topologyProvider topology provider instance + */ private void startTopologyEventReceiver(ExecutorService executorService, TopologyProvider topologyProvider) { topologyEventReceiver = new LoadBalancerCommonTopologyEventReceiver(topologyProvider); @@ -129,6 +138,11 @@ public class LoadBalancerExtension { } } + /** + * Start domain mapping event receiver thread. + * @param executorService executor service instance + * @param topologyProvider topology receiver instance + */ private void startDomainMappingEventReceiver(ExecutorService executorService, TopologyProvider topologyProvider) { domainMappingEventReceiver = new LoadBalancerCommonDomainMappingEventReceiver(topologyProvider); domainMappingEventReceiver.setExecutorService(executorService); @@ -138,6 +152,11 @@ public class LoadBalancerExtension { } } + /** + * Start application signup event receiver thread. + * @param executorService executor service instance + * @param topologyProvider topology provider instance + */ private void startApplicationSignUpEventReceiver(ExecutorService executorService, TopologyProvider topologyProvider) { applicationSignUpEventReceiver = new LoadBalancerCommonApplicationSignUpEventReceiver(topologyProvider); applicationSignUpEventReceiver.setExecutorService(executorService); @@ -147,6 +166,10 @@ public class LoadBalancerExtension { } } + /** + * Add topology event listeners to the topology event receiver. + * @param topologyEventReceiver topology event receiver instance + */ private void addTopologyEventListeners(final LoadBalancerCommonTopologyEventReceiver topologyEventReceiver) { topologyEventReceiver.addEventListener(new CompleteTopologyEventListener() { @@ -194,12 +217,17 @@ public class LoadBalancerExtension { reloadConfiguration(); } }); + topologyEventReceiver.addEventListener(new MemberMaintenanceListener() { + @Override + protected void onEvent(Event event) { + reloadConfiguration(); + } + }); } /** - * Configure and start load balancer - * - * @throws LoadBalancerExtensionException + * Configure and start the load balancer + * @throws LoadBalancerExtensionException if configuration or start process fails */ private void configureAndStart() throws LoadBalancerExtensionException { // Initialize topology @@ -217,9 +245,8 @@ public class LoadBalancerExtension { } /** - * Configure and reload - * - * @throws LoadBalancerExtensionException + * Configure and reload the load balancer + * @throws LoadBalancerExtensionException if the configuration or reload process fails */ private void configureAndReload() throws LoadBalancerExtensionException { // Configure load balancer @@ -230,10 +257,9 @@ public class LoadBalancerExtension { } /** - * Returns true if topology has populated - * - * @param topology - * @return + * Returns true if topology has populated with at least one member. + * @param topology topology to be validated + * @return true if at least one member was found else false */ private boolean topologyPopulated(Topology topology) { for (Service service : topology.getServices()) { @@ -288,10 +314,18 @@ public class LoadBalancerExtension { } } + /** + * Get executor service of the load balancer extension. + * @return executor service + */ public ExecutorService getExecutorService() { return executorService; } + /** + * Set executor service for the load balancer extension. + * @param executorService executor service instance + */ public void setExecutorService(ExecutorService executorService) { this.executorService = executorService; } http://git-wip-us.apache.org/repos/asf/stratos/blob/25d764b5/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/exception/LoadBalancerExtensionException.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/exception/LoadBalancerExtensionException.java b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/exception/LoadBalancerExtensionException.java index e9e5aa4..d2fc4ff 100644 --- a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/exception/LoadBalancerExtensionException.java +++ b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/exception/LoadBalancerExtensionException.java @@ -24,6 +24,8 @@ package org.apache.stratos.load.balancer.extension.api.exception; */ public class LoadBalancerExtensionException extends Exception { + private static final long serialVersionUID = -9143761765422725709L; + public LoadBalancerExtensionException() { } http://git-wip-us.apache.org/repos/asf/stratos/blob/25d764b5/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/internal/LoadBalancerExtensionAPIServiceComponent.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/internal/LoadBalancerExtensionAPIServiceComponent.java b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/internal/LoadBalancerExtensionAPIServiceComponent.java index 57633bc..a856bce 100644 --- a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/internal/LoadBalancerExtensionAPIServiceComponent.java +++ b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/internal/LoadBalancerExtensionAPIServiceComponent.java @@ -34,6 +34,10 @@ public class LoadBalancerExtensionAPIServiceComponent { private static final Log log = LogFactory.getLog(LoadBalancerExtensionAPIServiceComponent.class); + /** + * Service component activate method. + * @param context component context + */ protected void activate(ComponentContext context) { try { if (log.isDebugEnabled()) { @@ -44,9 +48,17 @@ public class LoadBalancerExtensionAPIServiceComponent { } } + /** + * Set configuration context service. + * @param contextService + */ protected void setConfigurationContextService(ConfigurationContextService contextService) { } + /** + * Unset configuration context service. + * @param contextService + */ protected void unsetConfigurationContextService(ConfigurationContextService contextService) { } }
