You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by is...@apache.org on 2015/11/10 10:07:00 UTC
[09/12] stratos git commit: removing PartitionValidatorCallable and
its usages
removing PartitionValidatorCallable and its usages
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/519d439f
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/519d439f
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/519d439f
Branch: refs/heads/stratos-4.1.x
Commit: 519d439f9fc16e05e29f95a2666256956112496e
Parents: a437ce9
Author: Isuru Haththotuwa <is...@apache.org>
Authored: Tue Nov 10 07:16:12 2015 +0530
Committer: Isuru Haththotuwa <is...@apache.org>
Committed: Tue Nov 10 13:35:36 2015 +0530
----------------------------------------------------------------------
.../concurrent/PartitionValidatorCallable.java | 61 --------------------
.../cloud/controller/iaases/ec2/EC2Iaas.java | 4 ++
.../impl/CloudControllerServiceImpl.java | 35 +++++------
.../impl/CloudControllerServiceUtil.java | 2 +-
4 files changed, 20 insertions(+), 82 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/519d439f/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/concurrent/PartitionValidatorCallable.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/concurrent/PartitionValidatorCallable.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/concurrent/PartitionValidatorCallable.java
deleted file mode 100644
index e1800ff..0000000
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/concurrent/PartitionValidatorCallable.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.stratos.cloud.controller.concurrent;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.stratos.cloud.controller.context.CloudControllerContext;
-import org.apache.stratos.cloud.controller.domain.Cartridge;
-import org.apache.stratos.cloud.controller.domain.IaasProvider;
-import org.apache.stratos.cloud.controller.domain.Partition;
-import org.apache.stratos.cloud.controller.services.impl.CloudControllerServiceUtil;
-
-import java.util.concurrent.Callable;
-
-public class PartitionValidatorCallable implements Callable<IaasProvider> {
-
- private static final Log log = LogFactory.getLog(PartitionValidatorCallable.class);
- private Partition partition;
- private Cartridge cartridge;
-
- public PartitionValidatorCallable(Partition partition, Cartridge cartridge) {
- this.partition = partition;
- this.cartridge = cartridge;
- }
-
- @Override
- public IaasProvider call() throws Exception {
-
- if (log.isDebugEnabled()) {
- log.debug("Partition validation started for " + partition + " of " + cartridge);
- }
- String provider = partition.getProvider();
- IaasProvider iaasProvider = CloudControllerContext.getInstance().getIaasProvider(cartridge.getType(), provider);
-
- IaasProvider updatedIaasProvider =
- CloudControllerServiceUtil.validatePartitionAndGetIaasProvider(partition, iaasProvider);
-
- if (log.isDebugEnabled()) {
- log.debug("Partition " + partition.toString() + " is validated successfully " + "against the Cartridge: "
- + cartridge.getType());
- }
-
- return updatedIaasProvider;
- }
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/519d439f/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/ec2/EC2Iaas.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/ec2/EC2Iaas.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/ec2/EC2Iaas.java
index ab1a31e..17e59a2 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/ec2/EC2Iaas.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/ec2/EC2Iaas.java
@@ -117,6 +117,10 @@ public class EC2Iaas extends JcloudsIaas {
}
}
+ log.info("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$44 " + iaasInfo.getProperty(CloudControllerConstants.AVAILABILITY_ZONE));
+ log.info("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$44 " + template.getLocation().getScope()
+ .toString() + " & " + template.getLocation().getId());
+
// if you wish to auto assign IPs, instance spawning call should be
// blocking, but if you
// wish to assign IPs manually, it can be non-blocking.
http://git-wip-us.apache.org/repos/asf/stratos/blob/519d439f/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java
index fa2590c..66af90b 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java
@@ -21,7 +21,6 @@ package org.apache.stratos.cloud.controller.services.impl;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.stratos.cloud.controller.concurrent.PartitionValidatorCallable;
import org.apache.stratos.cloud.controller.config.CloudControllerConfig;
import org.apache.stratos.cloud.controller.context.CloudControllerContext;
import org.apache.stratos.cloud.controller.domain.*;
@@ -979,7 +978,6 @@ public class CloudControllerServiceImpl implements CloudControllerService {
throw new InvalidCartridgeTypeException(msg);
}
- Map<String, Future<IaasProvider>> jobList = new HashMap<>();
for (Partition partition : networkPartition.getPartitions()) {
if (validatedPartitions != null && validatedPartitions.contains(partition.getId())) {
// partition cache hit
@@ -990,38 +988,35 @@ public class CloudControllerServiceImpl implements CloudControllerService {
continue;
}
- Callable<IaasProvider> worker = new PartitionValidatorCallable(partition, cartridge);
- Future<IaasProvider> job = CloudControllerContext.getInstance().getExecutorService().submit(worker);
- jobList.put(partition.getId(), job);
- }
-
- // Retrieve the results of the concurrently performed sanity checks.
- for (Entry<String, Future<IaasProvider>> entry : jobList.entrySet()) {
- if (entry == null) {
- continue;
+ if (log.isDebugEnabled()) {
+ log.debug("Partition validation started for " + partition + " of " + cartridge);
}
- String partitionId = entry.getKey();
- Future<IaasProvider> job = entry.getValue();
+
+ // cache miss
+ IaasProvider iaasProvider = CloudControllerContext.getInstance().getIaasProvider
+ (cartridge.getType(), partition.getProvider());
+ IaasProvider updatedIaasProvider = CloudControllerServiceUtil.validatePartitionAndGetIaasProvider(partition,
+ iaasProvider);
+
try {
- // add to a temporary Map
- IaasProvider iaasProvider = job.get();
- if (iaasProvider != null) {
- partitionToIaasProviders.put(partitionId, iaasProvider);
+ if (updatedIaasProvider != null) {
+ partitionToIaasProviders.put(partition.getId(), updatedIaasProvider);
}
// add to cache
- CloudControllerContext.getInstance().addToCartridgeTypeToPartitionIdMap(cartridgeType, partitionId);
-
+ CloudControllerContext.getInstance().addToCartridgeTypeToPartitionIdMap(cartridgeType, partition.getId());
if (log.isDebugEnabled()) {
- log.debug("Partition " + partitionId + " added to the cache against cartridge: " +
+ log.debug("Partition " + partition.getId() + " added to the cache against " + "cartridge: " +
"[cartridge-type] " + cartridgeType);
}
+
} catch (Exception e) {
String message = "Could not cache partitions against the cartridge: [cartridge-type] "
+ cartridgeType;
log.error(message, e);
throw new InvalidPartitionException(message, e);
}
+
}
// if and only if the deployment policy valid
http://git-wip-us.apache.org/repos/asf/stratos/blob/519d439f/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java
index 4edc701..8a415c4 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java
@@ -75,7 +75,7 @@ public class CloudControllerServiceUtil {
throws InvalidPartitionException {
if (iaasProvider != null) {
// if this is a IaaS based partition
- Iaas iaas = iaasProvider.buildIaas();
+ Iaas iaas = iaasProvider.getIaas();
PartitionValidator validator = iaas.getPartitionValidator();
validator.setIaasProvider(iaasProvider);
Properties partitionProperties = CloudControllerUtil.toJavaUtilProperties(partition.getProperties());