You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ra...@apache.org on 2014/09/16 16:47:41 UTC
git commit: Fixing NPE when updating Kubernetes hosts
Repository: stratos
Updated Branches:
refs/heads/docker-integration 9616b4504 -> 9ae2b3737
Fixing NPE when updating Kubernetes hosts
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/9ae2b373
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/9ae2b373
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/9ae2b373
Branch: refs/heads/docker-integration
Commit: 9ae2b3737da8222e5da6b2cf6cdf2a4ebca6d65c
Parents: 9616b45
Author: Akila Perera <ra...@gmail.com>
Authored: Tue Sep 16 20:17:05 2014 +0530
Committer: Akila Perera <ra...@gmail.com>
Committed: Tue Sep 16 20:17:05 2014 +0530
----------------------------------------------------------------------
.../kubernetes/KubernetesManager.java | 37 ++++++++++++--------
1 file changed, 23 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/9ae2b373/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/kubernetes/KubernetesManager.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/kubernetes/KubernetesManager.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/kubernetes/KubernetesManager.java
index e48bc99..1c45da6 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/kubernetes/KubernetesManager.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/kubernetes/KubernetesManager.java
@@ -143,7 +143,7 @@ public class KubernetesManager {
throw new InvalidKubernetesHostException("Mandatory field Kubernetes host IP address has not been set " +
"for [hostId] " + kubernetesHost.getHostId());
}
- if (!InetAddresses.isInetAddress(kubernetesHost.getHostIpAddress())){
+ if (!InetAddresses.isInetAddress(kubernetesHost.getHostIpAddress())) {
throw new InvalidKubernetesHostException("Kubernetes host ip address is invalid: " + kubernetesHost.getHostIpAddress());
}
}
@@ -207,12 +207,17 @@ public class KubernetesManager {
validateKubernetesHost(kubernetesHost);
try {
KubernetesGroup kubernetesGroupStored = getKubernetesGroup(kubernetesGroupId);
+ ArrayList<KubernetesHost> kubernetesHostArrayList;
- if (kubernetesHostExists(kubernetesHost.getHostId())) {
- throw new InvalidKubernetesHostException("Kubernetes host already exists: [id] " + kubernetesHost.getHostId());
+ if (kubernetesGroupStored.getKubernetesHosts() == null) {
+ kubernetesHostArrayList = new ArrayList<KubernetesHost>();
+ } else {
+ if (kubernetesHostExists(kubernetesHost.getHostId())) {
+ throw new InvalidKubernetesHostException("Kubernetes host already exists: [id] " + kubernetesHost.getHostId());
+ }
+ kubernetesHostArrayList = new
+ ArrayList<KubernetesHost>(Arrays.asList(kubernetesGroupStored.getKubernetesHosts()));
}
- ArrayList<KubernetesHost> kubernetesHostArrayList = new
- ArrayList<KubernetesHost>(Arrays.asList(kubernetesGroupStored.getKubernetesHosts()));
kubernetesHostArrayList.add(kubernetesHost);
// Update information model
@@ -336,7 +341,7 @@ public class KubernetesManager {
KubernetesGroup kubernetesGroupStored = getKubernetesGroupContainingHost(kubernetesHostId);
// Kubernetes master can not be removed
- if (kubernetesGroupStored.getKubernetesMaster().getHostId().equals(kubernetesHostId)){
+ if (kubernetesGroupStored.getKubernetesMaster().getHostId().equals(kubernetesHostId)) {
throw new NonExistingKubernetesHostException("Kubernetes master is not allowed to be removed [id] " + kubernetesHostId);
}
@@ -387,12 +392,14 @@ public class KubernetesManager {
return false;
}
for (KubernetesGroup kubernetesGroup : kubernetesGroupsMap.values()) {
- for (KubernetesHost kubernetesHost : kubernetesGroup.getKubernetesHosts()) {
- if (kubernetesHost.getHostId().equals(hostId)) {
- return true;
+ if (kubernetesGroup.getKubernetesHosts() != null) {
+ for (KubernetesHost kubernetesHost : kubernetesGroup.getKubernetesHosts()) {
+ if (kubernetesHost.getHostId().equals(hostId)) {
+ return true;
+ }
}
}
- if (kubernetesGroup.getKubernetesMaster().getHostId().equals(hostId)) {
+ if (hostId.equals(kubernetesGroup.getKubernetesMaster().getHostId())) {
return true;
}
}
@@ -438,12 +445,14 @@ public class KubernetesManager {
return null;
}
for (KubernetesGroup kubernetesGroup : kubernetesGroupsMap.values()) {
- if (kubernetesGroup.getKubernetesMaster().getHostId().equals(hostId)) {
+ if (hostId.equals(kubernetesGroup.getKubernetesMaster().getHostId())) {
return kubernetesGroup;
}
- for (KubernetesHost kubernetesHost : kubernetesGroup.getKubernetesHosts()) {
- if (kubernetesHost.getHostId().equals(hostId)) {
- return kubernetesGroup;
+ if (kubernetesGroup.getKubernetesHosts() != null) {
+ for (KubernetesHost kubernetesHost : kubernetesGroup.getKubernetesHosts()) {
+ if (kubernetesHost.getHostId().equals(hostId)) {
+ return kubernetesGroup;
+ }
}
}
}