Updated Branches:
  refs/heads/master da3cd1dcf -> 6029d2bb4

Adding partition id to to the Member spawned event of CC


Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/98ac81d7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/98ac81d7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/98ac81d7

Branch: refs/heads/master
Commit: 98ac81d771f5e612ef5da5478c5a65f2aa55d5ff
Parents: d387d64
Author: Udara Liyanage <[email protected]>
Authored: Tue Dec 3 12:22:34 2013 -0500
Committer: Udara Liyanage <[email protected]>
Committed: Tue Dec 3 12:22:34 2013 -0500

----------------------------------------------------------------------
 .../apache/stratos/autoscaler/Constants.java    |  2 ++
 .../health/HealthEventMessageDelegator.java     | 29 ++------------------
 .../processors/AutoscalerTopologyReceiver.java  | 22 ++++++++-------
 .../controller/topology/TopologyBuilder.java    |  3 ++
 .../event/topology/MemberActivatedEvent.java    | 10 +++++++
 .../topology/InstanceSpawnedEventProcessor.java |  1 +
 6 files changed, 30 insertions(+), 37 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/98ac81d7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/Constants.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/Constants.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/Constants.java
index c600f1e..32e69e5 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/Constants.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/Constants.java
@@ -11,6 +11,8 @@ public class Constants {
     public static String GRADIENT_OF_REQUESTS_IN_FLIGHT = 
"gradient_of_requests_in_flight";
     public static String AVERAGE_REQUESTS_IN_FLIGHT = 
"average_requests_in_flight";
     public static String SECOND_DERIVATIVE_OF_REQUESTS_IN_FLIGHT = 
"second_derivative_of_requests_in_flight";
+    
+    public static String MEMBER_FAULT_EVENT_NAME = "member_fault";
 
     //scheduler
     public static final int SCHEDULE_DEFAULT_INITIAL_DELAY = 30;

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/98ac81d7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/message/receiver/health/HealthEventMessageDelegator.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/message/receiver/health/HealthEventMessageDelegator.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/message/receiver/health/HealthEventMessageDelegator.java
index da18a41..55d3018 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/message/receiver/health/HealthEventMessageDelegator.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/message/receiver/health/HealthEventMessageDelegator.java
@@ -61,32 +61,7 @@ public class HealthEventMessageDelegator implements Runnable 
{
                 messageProperties = setEventValues(messageText);
                 this.clusterId = messageProperties.get("cluster_id");
                 log.info("Received event " + eventName);
-//                for (Service service :  
TopologyManager.getTopology().getServices()){
-//
-//                    if(service.clusterExists(clusterId)){
-//
-//                        
if(!AutoscalerContext.getInstance().clusterExists(clusterId)){
-//
-//                            Cluster cluster = service.getCluster(clusterId);
-//                            AutoscalePolicy autoscalePolicy = 
PolicyManager.getInstance().getAutoscalePolicy(cluster.getAutoscalePolicyName());
-//                            DeploymentPolicy deploymentPolicy = 
PolicyManager.getInstance().getDeploymentPolicy(cluster.getDeploymentPolicyName());
-//
-//                            ClusterContext clusterContext = new 
ClusterContext(clusterId, service.getServiceName(), 
deploymentPolicy.getAllPartitions());
-//
-//                            LoadThresholds loadThresholds = 
autoscalePolicy.getLoadThresholds();
-//                            float averageLimit = 
loadThresholds.getRequestsInFlight().getAverage();
-//                            float gradientLimit = 
loadThresholds.getRequestsInFlight().getGradient();
-//                            float secondDerivative  = 
loadThresholds.getRequestsInFlight().getSecondDerivative();
-//
-//                            
clusterContext.setAverageRequestsInFlight(averageLimit);
-//                            
clusterContext.setRequestsInFlightGradient(gradientLimit);
-//                            
clusterContext.setRequestsInFlightSecondDerivative(secondDerivative);
-//
-//                            
AutoscalerContext.getInstance().addClusterContext(clusterContext);
-//                        }
-//                        break;
-//                    }
-//                }
+
                 if(Constants.AVERAGE_REQUESTS_IN_FLIGHT.equals(eventName)){    
                
                        Float messageValue = 
Float.parseFloat(messageProperties.get("value"));
                     
AutoscalerContext.getInstance().getClusterContext(clusterId).setAverageRequestsInFlight(messageValue);
@@ -99,7 +74,7 @@ public class HealthEventMessageDelegator implements Runnable {
                        Float messageValue = 
Float.parseFloat(messageProperties.get("value"));
                     
AutoscalerContext.getInstance().getClusterContext(clusterId).setRequestsInFlightSecondDerivative(messageValue);
 
-                }else if ("member_fault".equals(eventName)){
+                }else if (Constants.MEMBER_FAULT_EVENT_NAME.equals(eventName)){
                        String memberId = messageProperties.get("member_id");
                        if(memberId != null && !memberId.isEmpty())
                                log.error("MemberId is not included in the 
received message");

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/98ac81d7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/topology/processors/AutoscalerTopologyReceiver.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/topology/processors/AutoscalerTopologyReceiver.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/topology/processors/AutoscalerTopologyReceiver.java
index 96fb3af..6b64514 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/topology/processors/AutoscalerTopologyReceiver.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/topology/processors/AutoscalerTopologyReceiver.java
@@ -146,16 +146,7 @@ public class AutoscalerTopologyReceiver implements 
Runnable {
         processorChain.addEventListener(new MemberStartedEventListener() {
             @Override
             protected void onEvent(Event event) {
-                       try {
-                                               
TopologyManager.acquireReadLock();
-                                               
-                                               MemberStartedEvent e = 
(MemberStartedEvent) event;
-                                               ClusterContext clusCtx = 
AutoscalerContext.getInstance().getClusterContext(e.getClusterId());
-                                               
clusCtx.addMemberpartition(e.getMemberId(), e.getPartitionId());
-                                       }
-                    finally{
-                       TopologyManager.releaseReadLock();
-                    }
+                       
             }
 
         });
@@ -196,6 +187,17 @@ public class AutoscalerTopologyReceiver implements 
Runnable {
 //                finally {
 //                    TopologyManager.releaseReadLock();
 //                }
+
+               try {
+                                       TopologyManager.acquireReadLock();
+                                       
+                                       MemberActivatedEvent e = 
(MemberActivatedEvent)event;
+                                       ClusterContext clusCtx = 
AutoscalerContext.getInstance().getClusterContext(e.getClusterId());
+                                       
clusCtx.addMemberpartition(e.getMemberId(), e.getPartitionId());
+                               }
+                finally{
+                       TopologyManager.releaseReadLock();
+                }
             }
         });
         

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/98ac81d7/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/topology/TopologyBuilder.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/topology/TopologyBuilder.java
 
b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/topology/TopologyBuilder.java
index 7b21c10..634f49b 100644
--- 
a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/topology/TopologyBuilder.java
+++ 
b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/topology/TopologyBuilder.java
@@ -278,6 +278,7 @@ public class TopologyBuilder {
         } finally {
             TopologyManager.getInstance().releaseWriteLock();
         }
+        //memberStartedEvent.
         TopologyEventSender.sendMemberStartedEvent(memberStartedEvent);
     }
 
@@ -322,6 +323,8 @@ public class TopologyBuilder {
                 member.addPort(port);
                 memberActivatedEventTopology.addPort(port);
             }
+            
+            
memberActivatedEventTopology.setPartitionId(member.getPartitionId());
             memberActivatedEventTopology.setMemberIp(member.getMemberIp());
             TopologyManager.getInstance().updateTopology(topology);
 

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/98ac81d7/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/MemberActivatedEvent.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/MemberActivatedEvent.java
 
b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/MemberActivatedEvent.java
index eda4b0b..4a73dea 100644
--- 
a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/MemberActivatedEvent.java
+++ 
b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/MemberActivatedEvent.java
@@ -37,6 +37,7 @@ public class MemberActivatedEvent extends TopologyEvent 
implements Serializable
     private String memberId;
     private Map<String, Port> portMap;
     private String memberIp;
+       private String partitionId;
 
     public MemberActivatedEvent(String serviceName, String clusterId, String 
memberId) {
         this.serviceName = serviceName;
@@ -88,4 +89,13 @@ public class MemberActivatedEvent extends TopologyEvent 
implements Serializable
        public void setMemberIp(String memberIp) {
            this.memberIp = memberIp;
     }
+
+       public void setPartitionId(String partitionId) {
+               this.partitionId = partitionId;
+               
+       }
+       
+       public String getPartitionId(){
+               return this.partitionId;
+       }
 }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/98ac81d7/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/topology/InstanceSpawnedEventProcessor.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/topology/InstanceSpawnedEventProcessor.java
 
b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/topology/InstanceSpawnedEventProcessor.java
index cae031f..0d2f0e2 100644
--- 
a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/topology/InstanceSpawnedEventProcessor.java
+++ 
b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/topology/InstanceSpawnedEventProcessor.java
@@ -88,6 +88,7 @@ public class InstanceSpawnedEventProcessor extends 
MessageProcessor {
             // Apply changes to the topology
             Member member = new Member(event.getServiceName(), 
event.getClusterId(), event.getMemberId());
             member.setStatus(MemberStatus.Created);
+            member.setPartitionId(event.getPartitionId());
             cluster.addMember(member);
 
             if (log.isInfoEnabled()) {

Reply via email to