You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by im...@apache.org on 2015/03/22 17:09:47 UTC
stratos git commit: Adding logic to publish complete application,
complete application signup and complete tenant events once stratos
manager becomes active
Repository: stratos
Updated Branches:
refs/heads/master f13f66313 -> 765651af0
Adding logic to publish complete application, complete application signup and complete tenant events once stratos manager becomes active
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/765651af
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/765651af
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/765651af
Branch: refs/heads/master
Commit: 765651af063197bde7ee37c2f2ab97894c636c40
Parents: f13f663
Author: Imesh Gunaratne <im...@apache.org>
Authored: Sun Mar 22 21:39:28 2015 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Sun Mar 22 21:39:28 2015 +0530
----------------------------------------------------------------------
.../internal/AutoscalerServiceComponent.java | 18 +++++++++++++++---
.../internal/StratosManagerServiceComponent.java | 18 +++++++++++++++++-
.../ApplicationSignUpSynchronizerTask.java | 4 ++++
.../application/CompleteApplicationsEvent.java | 1 +
.../ApplicationsEventMessageListener.java | 2 +-
5 files changed, 38 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/765651af/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServiceComponent.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServiceComponent.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServiceComponent.java
index 9fd9b68..3c03807 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServiceComponent.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServiceComponent.java
@@ -23,6 +23,7 @@ import org.apache.commons.configuration.XMLConfiguration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.algorithms.networkpartition.NetworkPartitionAlgorithmContext;
+import org.apache.stratos.autoscaler.applications.ApplicationSynchronizeTask;
import org.apache.stratos.autoscaler.applications.ApplicationSynchronizerTaskScheduler;
import org.apache.stratos.autoscaler.context.AutoscalerContext;
import org.apache.stratos.autoscaler.event.receiver.health.AutoscalerHealthStatEventReceiver;
@@ -39,6 +40,7 @@ import org.apache.stratos.autoscaler.util.AutoscalerConstants;
import org.apache.stratos.autoscaler.util.ConfUtil;
import org.apache.stratos.autoscaler.util.ServiceReferenceHolder;
import org.apache.stratos.common.Component;
+import org.apache.stratos.common.services.ComponentActivationEventListener;
import org.apache.stratos.common.services.ComponentStartUpSynchronizer;
import org.apache.stratos.common.services.DistributedObjectProvider;
import org.apache.stratos.common.threading.StratosThreadPool;
@@ -194,9 +196,19 @@ public class AutoscalerServiceComponent {
log.info("Scheduling tasks to publish applications");
}
- ApplicationSynchronizerTaskScheduler
- .schedule(ServiceReferenceHolder.getInstance()
- .getTaskService());
+ ApplicationSynchronizerTaskScheduler.schedule(ServiceReferenceHolder.getInstance().getTaskService());
+
+ ComponentStartUpSynchronizer componentStartUpSynchronizer =
+ ServiceReferenceHolder.getInstance().getComponentStartUpSynchronizer();
+ componentStartUpSynchronizer.addEventListener(new ComponentActivationEventListener() {
+ @Override
+ public void activated(Component component) {
+ if(component == Component.StratosManager) {
+ ApplicationSynchronizeTask applicationSynchronizeTask = new ApplicationSynchronizeTask();
+ applicationSynchronizeTask.execute();
+ }
+ }
+ });
}
protected void deactivate(ComponentContext context) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/765651af/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/internal/StratosManagerServiceComponent.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/internal/StratosManagerServiceComponent.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/internal/StratosManagerServiceComponent.java
index cd3215c..4c1dbf4 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/internal/StratosManagerServiceComponent.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/internal/StratosManagerServiceComponent.java
@@ -22,6 +22,7 @@ import com.hazelcast.core.HazelcastInstance;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.common.Component;
+import org.apache.stratos.common.services.ComponentActivationEventListener;
import org.apache.stratos.common.services.ComponentStartUpSynchronizer;
import org.apache.stratos.common.services.DistributedObjectProvider;
import org.apache.stratos.common.threading.StratosThreadPool;
@@ -244,13 +245,28 @@ public class StratosManagerServiceComponent {
if(log.isDebugEnabled()) {
log.debug("Initializing tenant event publisher...");
}
- TenantEventPublisher tenantEventPublisher = new TenantEventPublisher();
+ final TenantEventPublisher tenantEventPublisher = new TenantEventPublisher();
componentContext.getBundleContext().registerService(
org.apache.stratos.common.listeners.TenantMgtListener.class.getName(),
tenantEventPublisher, null);
if(log.isInfoEnabled()) {
log.info("Tenant event publisher initialized");
}
+
+ ComponentStartUpSynchronizer componentStartUpSynchronizer =
+ ServiceReferenceHolder.getInstance().getComponentStartUpSynchronizer();
+ componentStartUpSynchronizer.addEventListener(new ComponentActivationEventListener() {
+ @Override
+ public void activated(Component component) {
+ if(component == Component.StratosManager) {
+ TenantSynzhronizerTask tenantSynzhronizerTask = new TenantSynzhronizerTask();
+ tenantSynzhronizerTask.execute();
+
+ ApplicationSignUpSynchronizerTask applicationSignUpSynchronizerTask = new ApplicationSignUpSynchronizerTask();
+ applicationSignUpSynchronizerTask.execute();
+ }
+ }
+ });
}
protected void setConfigurationContextService(ConfigurationContextService contextService) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/765651af/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/messaging/publisher/synchronizer/ApplicationSignUpSynchronizerTask.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/messaging/publisher/synchronizer/ApplicationSignUpSynchronizerTask.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/messaging/publisher/synchronizer/ApplicationSignUpSynchronizerTask.java
index f33f97a..adf6756 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/messaging/publisher/synchronizer/ApplicationSignUpSynchronizerTask.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/messaging/publisher/synchronizer/ApplicationSignUpSynchronizerTask.java
@@ -38,6 +38,10 @@ public class ApplicationSignUpSynchronizerTask implements Task {
private ApplicationSignUpHandler applicationSignUpHandler;
+ public ApplicationSignUpSynchronizerTask() {
+ init();
+ }
+
@Override
public void setProperties(Map<String, String> map) {
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/765651af/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/application/CompleteApplicationsEvent.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/application/CompleteApplicationsEvent.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/application/CompleteApplicationsEvent.java
index cd24a5e..bf92a96 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/application/CompleteApplicationsEvent.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/application/CompleteApplicationsEvent.java
@@ -30,6 +30,7 @@ import java.io.Serializable;
* before receiving other topology events.
*/
public class CompleteApplicationsEvent extends TopologyEvent implements Serializable {
+
private static final long serialVersionUID = 8580862188444892004L;
private final Applications applications;
http://git-wip-us.apache.org/repos/asf/stratos/blob/765651af/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/receiver/application/ApplicationsEventMessageListener.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/receiver/application/ApplicationsEventMessageListener.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/receiver/application/ApplicationsEventMessageListener.java
index 1e5598e..cbd2ea6 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/receiver/application/ApplicationsEventMessageListener.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/receiver/application/ApplicationsEventMessageListener.java
@@ -36,7 +36,7 @@ public class ApplicationsEventMessageListener implements MessageListener {
public void messageReceived(Message message) {
try {
if (log.isDebugEnabled()) {
- log.debug(String.format("Tenant message received: %s", message.getText()));
+ log.debug(String.format("Application event message received: %s", message.getText()));
}
// Add received message to the queue
messageQueue.add(message);