You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by re...@apache.org on 2013/10/23 08:22:45 UTC

git commit: adding nodeId to the events and adding * in the tenant range

Updated Branches:
  refs/heads/master 5ac7fa09f -> dcf9ad42e


adding nodeId to the events and adding * in the tenant range


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

Branch: refs/heads/master
Commit: dcf9ad42e8c26a66bb2ef2e88015a89a3f14a1d3
Parents: 5ac7fa0
Author: rekathiru <rt...@gmail.com>
Authored: Wed Oct 23 11:52:26 2013 +0530
Committer: rekathiru <rt...@gmail.com>
Committed: Wed Oct 23 11:52:26 2013 +0530

----------------------------------------------------------------------
 .../messaging/domain/topology/Cluster.java      | 19 ++++++++++++
 .../messaging/domain/topology/Member.java       |  9 ++++++
 .../event/topology/InstanceSpawnedEvent.java    | 12 +++++++-
 .../org/apache/stratos/messaging/util/Util.java | 31 ++++++++++++--------
 4 files changed, 57 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/dcf9ad42/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Cluster.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Cluster.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Cluster.java
index 5cf7a7f..79823d1 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Cluster.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Cluster.java
@@ -44,12 +44,14 @@ public class Cluster implements Serializable {
     // Key: Member.memberId
     private Map<String, Member> memberMap;
     private Properties properties;
+    private Map<String, Member> membertoNodeIdMap;
 
     public Cluster(String serviceName, String clusterId, String autoscalePolicyName) {
         this.serviceName = serviceName;
         this.clusterId = clusterId;
         this.autoscalePolicyName = autoscalePolicyName;
         this.memberMap = new HashMap<String, Member>();
+        this.membertoNodeIdMap = new HashMap<String, Member>();
     }
 
     public String getServiceName() {
@@ -160,5 +162,22 @@ public class Cluster implements Serializable {
     public void setRequestsInFlightGradient(float requestsInFlightGradient) {
         this.requestsInFlightGradient = requestsInFlightGradient;
     }
+
+    public void addMemberToIaasNodeId(Member member) {
+           membertoNodeIdMap.put(member.getIaasNodeId(), member);
+       }
+
+       public void removeMemberFromIaasNodeId(Member member) {
+           membertoNodeIdMap.remove(member.getIaasNodeId());
+       }
+
+       public Member getMemberFromIaasNodeId(String iaasNodeId) {
+           return membertoNodeIdMap.get(iaasNodeId);
+       }
+
+       public boolean memberExistsFromIaasNodeId(String iaasNodeId) {
+           return this.membertoNodeIdMap.containsKey(iaasNodeId);
+       }
+
 }
 

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/dcf9ad42/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Member.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Member.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Member.java
index cd49103..3e85da0 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Member.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/Member.java
@@ -40,6 +40,7 @@ public class Member implements Serializable {
     private String memberIp;
     private Map<String, Port> portMap;
     private Properties properties;
+    private String iaasNodeId;
 
     public Member(String serviceName, String clusterId, String memberId) {
         this.serviceName = serviceName;
@@ -133,5 +134,13 @@ public class Member implements Serializable {
     public void setMemoryConsumption(float memoryConsumption) {
         this.memoryConsumption = memoryConsumption;
     }
+
+     public String getIaasNodeId() {
+        return iaasNodeId;
+    }
+
+    public void setIaasNodeId(String iaasNodeId) {
+        this.iaasNodeId = iaasNodeId;
+    }
 }
 

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/dcf9ad42/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/InstanceSpawnedEvent.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/InstanceSpawnedEvent.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/InstanceSpawnedEvent.java
index 19c0da8..d6765f5 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/InstanceSpawnedEvent.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/event/topology/InstanceSpawnedEvent.java
@@ -35,11 +35,13 @@ public class InstanceSpawnedEvent extends TopologyEvent implements Serializable
     private String serviceName;
     private String clusterId;
     private String memberId;
+    private String iaasNodeId;
 
-    public InstanceSpawnedEvent(String serviceName, String clusterId, String memberId) {
+    public InstanceSpawnedEvent(String serviceName, String clusterId, String memberId, String iaasNodeId) {
         this.serviceName = serviceName;
         this.clusterId = clusterId;
         this.memberId = memberId;
+        this.iaasNodeId = iaasNodeId;
     }
 
     public Cloud getCloud() {
@@ -77,4 +79,12 @@ public class InstanceSpawnedEvent extends TopologyEvent implements Serializable
     public String getMemberId() {
         return memberId;
     }
+
+    public String getIaasNodeId() {
+        return iaasNodeId;
+    }
+
+    public void setIaasNodeId(String iaasNodeId) {
+        this.iaasNodeId = iaasNodeId;
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/dcf9ad42/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/util/Util.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/util/Util.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/util/Util.java
index b2dda5d..fa2b27b 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/util/Util.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/util/Util.java
@@ -18,16 +18,16 @@
  */
 package org.apache.stratos.messaging.util;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.stratos.messaging.message.JsonMessage;
+
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.Properties;
 
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.stratos.messaging.message.JsonMessage;
-
 public class Util {
 	private static final Log log = LogFactory.getLog(Util.class);
 
@@ -61,17 +61,22 @@ public class Util {
     public static void validateTenantRange(String tenantRange) {
         boolean valid = false;
         if(tenantRange != null) {
-            String[] array = tenantRange.split(Constants.TENANT_RANGE_DELIMITER);
-            if(array.length == 2) {
-                // Integer-Integer
-                if(isNumber(array[0]) && (isNumber(array[1]))){
-                    valid = true;
-                }
-                // Integer-*
-                else if(isNumber(array[0]) && "*".equals(array[1])) {
-                    valid = true;
+            if(tenantRange.equals("*")) {
+                valid = true;
+            } else {
+               String[] array = tenantRange.split(Constants.TENANT_RANGE_DELIMITER);
+                if(array.length == 2) {
+                    // Integer-Integer
+                    if(isNumber(array[0]) && (isNumber(array[1]))){
+                        valid = true;
+                    }
+                    // Integer-*
+                    else if(isNumber(array[0]) && "*".equals(array[1])) {
+                        valid = true;
+                    }
                 }
             }
+
         }
         if(!valid)
             throw new RuntimeException(String.format("Tenant range %s is not valid", tenantRange));