You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ts...@apache.org on 2013/04/09 15:21:15 UTC
[38/50] [abbrv] git commit: updated refs/heads/marvin_refactor to
2a99064
Fixes from conflicts during rebase
Signed-off-by: Prasanna Santhanam <ts...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/ed291eed
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/ed291eed
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/ed291eed
Branch: refs/heads/marvin_refactor
Commit: ed291eed4fd4f0f7e0e2472bec086dcdd1623d35
Parents: dfc703f
Author: Prasanna Santhanam <ts...@apache.org>
Authored: Sat Mar 30 19:36:58 2013 +0530
Committer: Prasanna Santhanam <ts...@apache.org>
Committed: Sun Mar 31 22:19:28 2013 +0530
----------------------------------------------------------------------
.../command/user/template/DeleteTemplateCmd.java | 9 +-
.../command/user/template/ExtractTemplateCmd.java | 9 +-
client/pom.xml | 10 +
client/tomcatconf/componentContext.xml.in | 149 ++------------
server/src/com/cloud/api/ApiDispatcher.java | 12 +-
.../src/com/cloud/api/query/QueryManagerImpl.java | 6 +-
tools/cli/cloudmonkey/cloudmonkey.py | 38 +----
7 files changed, 57 insertions(+), 176 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ed291eed/api/src/org/apache/cloudstack/api/command/user/template/DeleteTemplateCmd.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/command/user/template/DeleteTemplateCmd.java b/api/src/org/apache/cloudstack/api/command/user/template/DeleteTemplateCmd.java
index 12359bf..77f7edf 100644
--- a/api/src/org/apache/cloudstack/api/command/user/template/DeleteTemplateCmd.java
+++ b/api/src/org/apache/cloudstack/api/command/user/template/DeleteTemplateCmd.java
@@ -16,7 +16,13 @@
// under the License.
package org.apache.cloudstack.api.command.user.template;
-import org.apache.cloudstack.api.*;
+import org.apache.cloudstack.api.APICommand;
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.ApiErrorCode;
+import org.apache.cloudstack.api.BaseAsyncCmd;
+import org.apache.cloudstack.api.Parameter;
+import org.apache.cloudstack.api.ServerApiException;
+import org.apache.cloudstack.api.response.SuccessResponse;
import org.apache.cloudstack.api.response.TemplateResponse;
import org.apache.cloudstack.api.response.ZoneResponse;
import org.apache.log4j.Logger;
@@ -29,6 +35,7 @@ import com.cloud.template.VirtualMachineTemplate;
import com.cloud.user.Account;
import com.cloud.user.UserContext;
+
@APICommand(name = "deleteTemplate", responseObject=SuccessResponse.class, description="Deletes a template from the system. All virtual machines using the deleted template will not be affected.")
public class DeleteTemplateCmd extends BaseAsyncCmd {
public static final Logger s_logger = Logger.getLogger(DeleteTemplateCmd.class.getName());
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ed291eed/api/src/org/apache/cloudstack/api/command/user/template/ExtractTemplateCmd.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/command/user/template/ExtractTemplateCmd.java b/api/src/org/apache/cloudstack/api/command/user/template/ExtractTemplateCmd.java
index 8b4e809..6afb993 100644
--- a/api/src/org/apache/cloudstack/api/command/user/template/ExtractTemplateCmd.java
+++ b/api/src/org/apache/cloudstack/api/command/user/template/ExtractTemplateCmd.java
@@ -16,7 +16,13 @@
// under the License.
package org.apache.cloudstack.api.command.user.template;
-import org.apache.cloudstack.api.*;
+import org.apache.cloudstack.api.APICommand;
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.ApiErrorCode;
+import org.apache.cloudstack.api.BaseAsyncCmd;
+import org.apache.cloudstack.api.Parameter;
+import org.apache.cloudstack.api.ServerApiException;
+import org.apache.cloudstack.api.response.ExtractResponse;
import org.apache.cloudstack.api.response.TemplateResponse;
import org.apache.cloudstack.api.response.ZoneResponse;
import org.apache.log4j.Logger;
@@ -30,6 +36,7 @@ import com.cloud.template.VirtualMachineTemplate;
import com.cloud.user.Account;
import com.cloud.user.UserContext;
+
@APICommand(name = "extractTemplate", description="Extracts a template", responseObject=ExtractResponse.class)
public class ExtractTemplateCmd extends BaseAsyncCmd {
public static final Logger s_logger = Logger.getLogger(ExtractTemplateCmd.class.getName());
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ed291eed/client/pom.xml
----------------------------------------------------------------------
diff --git a/client/pom.xml b/client/pom.xml
index 7565029..9236deb 100644
--- a/client/pom.xml
+++ b/client/pom.xml
@@ -219,6 +219,16 @@
<artifactId>cloud-plugin-hypervisor-simulator</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.cloudstack</groupId>
+ <artifactId>cloud-plugin-hypervisor-ucs</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.cloudstack</groupId>
+ <artifactId>cloud-plugin-storage-volume-default</artifactId>
+ <version>${project.version}</version>
+ </dependency>
</dependencies>
<build>
<defaultGoal>install</defaultGoal>
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ed291eed/client/tomcatconf/componentContext.xml.in
----------------------------------------------------------------------
diff --git a/client/tomcatconf/componentContext.xml.in b/client/tomcatconf/componentContext.xml.in
index 43fc9aa..594c683 100644
--- a/client/tomcatconf/componentContext.xml.in
+++ b/client/tomcatconf/componentContext.xml.in
@@ -53,132 +53,29 @@
</property>
</bean>
-<!--
- <bean id="BigSwitchVnsElementService" class="com.cloud.network.element.BigSwitchVnsElement">
- <property name="name" value="BigSwitchVnsElementService"/>
- </bean>
--->
-
- <!--
- Adapters
- -->
- <bean id="FirstFitRouting" class="com.cloud.agent.manager.allocator.impl.FirstFitRoutingAllocator">
- <property name="name" value="FirstFitRouting"/>
- </bean>
-
- <bean id="hypervisorTemplateAdapter" class="com.cloud.template.HypervisorTemplateAdapter">
- <property name="name" value="HypervisorAdapter"/>
- </bean>
-
- <bean id="bareMetalTemplateAdapter" class="com.cloud.baremetal.BareMetalTemplateAdapter">
- <property name="name" value="BareMetalAdapter"/>
- </bean>
-
- <!--
- Storage pool allocators
- -->
-
- <bean id="LocalStoragePoolAllocator" class="org.apache.cloudstack.storage.allocator.LocalStoragePoolAllocator">
- <property name="name" value="LocalStorage"/>
- </bean>
- <!--
- <bean id="FirstFitStoragePoolAllocator" class="org.apache.cloudstack.storage.allocator.FirstFitStoragePoolAllocator">
- <property name="name" value="Storage"/>
- </bean>
- -->
-
- <bean id="UserConcentratedAllocator" class="com.cloud.agent.manager.allocator.impl.UserConcentratedAllocator">
- <property name="name" value="User First"/>
- </bean>
-
- <bean id="ConsoleProxyAllocator" class="com.cloud.consoleproxy.ConsoleProxyBalanceAllocator">
- <property name="name" value="Balance"/>
- </bean>
-
- <bean id="StaticRoleBasedAPIAccessChecker" class="org.apache.cloudstack.acl.StaticRoleBasedAPIAccessChecker"/>
-
- <bean id="ExteralIpAddressAllocator" class="com.cloud.network.ExteralIpAddressAllocator">
- <property name="name" value="Basic"/>
- </bean>
-
- <bean id="HypervisorTemplateAdapter" class="com.cloud.template.HypervisorTemplateAdapter">
- <property name="name" value="HypervisorAdapter"/>
- </bean>
-
- <bean id="BareMetalTemplateAdapter" class="com.cloud.baremetal.manager.BareMetalTemplateAdapter" >
- <property name="name" value="BareMetalTemplateAdapter"/>
- </bean>
-
- <!--
- Authenticators
- -->
- <bean id="MD5UserAuthenticator" class="com.cloud.server.auth.MD5UserAuthenticator">
- <property name="name" value="MD5"/>
- </bean>
-
- <bean id="LDAPUserAuthenticator" class="com.cloud.server.auth.LDAPUserAuthenticator">
- <property name="name" value="LDAP"/>
- </bean>
-
- <!--
- Investigators
- -->
- <bean id="CheckOnAgentInvestigator" class="com.cloud.ha.CheckOnAgentInvestigator">
- <property name="name" value="SimpleInvestigator"/>
- </bean>
-
- <bean id="XenServerInvestigator" class="com.cloud.ha.XenServerInvestigator">
- <property name="name" value="XenServerInvestigator"/>
- </bean>
-
- <bean id="UserVmDomRInvestigator" class="com.cloud.ha.UserVmDomRInvestigator">
- <property name="name" value="PingInvestigator"/>
- </bean>
-
- <bean id="ManagementIPSystemVMInvestigator" class="com.cloud.ha.ManagementIPSystemVMInvestigator">
- <property name="name" value="ManagementIPSysVMInvestigator"/>
- </bean>
-
- <!--
- Fencers
- -->
- <bean id="XenServerFencer" class="com.cloud.ha.XenServerFencer">
- <property name="name" value="XenServerFenceBuilder"/>
- </bean>
- <bean id="KVMFencer" class="com.cloud.ha.KVMFencer">
- <property name="name" value="KVMFenceBuilder"/>
- </bean>
- <bean id="OvmFencer" class="com.cloud.ovm.hypervisor.OvmFencer">
- <property name="name" value="OvmFenceBuilder"/>
- </bean>
-
- <bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer">
- <property name="name" value="XCP Agent"/>
- </bean>
-
- <bean id="SecondaryStorageDiscoverer" class="com.cloud.storage.secondary.SecondaryStorageDiscoverer">
- <property name="name" value="SecondaryStorage"/>
- </bean>
-
- <bean id="KvmServerDiscoverer" class="com.cloud.hypervisor.kvm.discoverer.KvmServerDiscoverer">
- <property name="name" value="KVM Agent"/>
- </bean>
-
- <bean id="SimulatorDiscoverer" class="com.cloud.resource.SimulatorDiscoverer">
- <property name="name" value="Simulator Agent"/>
- </bean>
-
-
- <bean id="BareMetalDiscoverer" class="com.cloud.baremetal.manager.BareMetalDiscoverer">
- <property name="name" value="Bare Metal Agent"/>
- </bean>
-
- <bean id="HypervServerDiscoverer" class="com.cloud.hypervisor.hyperv.HypervServerDiscoverer">
- <property name="name" value="SCVMMServer"/>
+ <bean id="managementServerImpl" class ="com.cloud.server.ManagementServerImpl">
+ <property name="UserAuthenticators">
+ <list>
+ <ref bean="MD5UserAuthenticator"/>
+ <ref bean="LDAPUserAuthenticator"/>
+ </list>
+ </property>
+ <property name="HostAllocators">
+ <list>
+ <ref bean="FirstFitRouting"/>
+ </list>
+ </property>
</bean>
- <bean id="OvmDiscoverer" class="com.cloud.ovm.hypervisor.OvmDiscoverer">
- <property name="name" value="Ovm Discover"/>
+ <bean id="storageManagerImpl" class="com.cloud.storage.StorageManagerImpl">
+ <property name="StoragePoolAllocators">
+ <list>
+ <ref bean="LocalStoragePoolAllocator"/>
+ <ref bean="clusterScopeStoragePoolAllocator"/>
+ <ref bean="zoneWideStoragePoolAllocator"/>
+ <ref bean="garbageCollectingStoragePoolAllocator"/>
+ </list>
+ </property>
</bean>
<bean id="FirstFitPlanner" class="com.cloud.deploy.FirstFitPlanner">
@@ -318,8 +215,6 @@
</property>
</bean>
- <bean id="SimulatorGuru" class="com.cloud.simulator.SimulatorGuru">
- <property name="name" value="SimulatorGuru"/>
- </bean>
+ <bean id="GlobalLoadBalancingRulesServiceImpl" class ="org.apache.cloudstack.region.gslb.GlobalLoadBalancingRulesServiceImpl" />
</beans>
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ed291eed/server/src/com/cloud/api/ApiDispatcher.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/ApiDispatcher.java b/server/src/com/cloud/api/ApiDispatcher.java
index cfcccc5..925d90a 100755
--- a/server/src/com/cloud/api/ApiDispatcher.java
+++ b/server/src/com/cloud/api/ApiDispatcher.java
@@ -153,10 +153,11 @@ public class ApiDispatcher {
queueSizeLimit = 1L;
}
- if (queueSizeLimit != null) {
+ if (queueSizeLimit != null) {
_asyncMgr.syncAsyncJobExecution(asyncCmd.getJob(), asyncCmd.getSyncObjType(), asyncCmd.getSyncObjId().longValue(), queueSizeLimit);
- } else {
- s_logger.trace("The queue size is unlimited, skipping the synchronizing");
+ } else {
+ s_logger.trace("The queue size is unlimited, skipping the synchronizing");
+ }
}
}
@@ -370,13 +371,8 @@ public class ApiDispatcher {
if (internalId == null) {
if (s_logger.isDebugEnabled())
s_logger.debug("Object entity uuid = " + uuid + " does not exist in the database.");
-<<<<<<< HEAD
throw new InvalidParameterValueException("Invalid parameter " + annotation.name() + " value=" + uuid
+ " due to incorrect long value format, or entity does not exist or due to incorrect parameter annotation for the field in api cmd class.");
-=======
- throw new InvalidParameterValueException("Invalid parameter value=" + uuid
- + " due to incorrect long value format, or entity was not found as it may have been deleted, or due to incorrect parameter annotation for the field in api cmd.");
->>>>>>> ApiDispatcher: Fix uuid->id translation and throw better debug statement
}
return internalId;
}
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ed291eed/server/src/com/cloud/api/query/QueryManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/QueryManagerImpl.java b/server/src/com/cloud/api/query/QueryManagerImpl.java
index 63c6b32..951d09e 100644
--- a/server/src/com/cloud/api/query/QueryManagerImpl.java
+++ b/server/src/com/cloud/api/query/QueryManagerImpl.java
@@ -2105,7 +2105,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService {
domainRecord = _domainDao.findById(domainRecord.getParent());
domainIds.add(domainRecord.getId());
}
- sc.addAnd("domainId", SearchCriteria.Op.IN, domainIds);
+ sc.addAnd("domainId", SearchCriteria.Op.IN, domainIds.toArray());
// include also public offering if no keyword, name and id specified
if ( keyword == null && name == null && id == null ){
@@ -2238,7 +2238,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService {
}
// domainId == null (public zones) or domainId IN [all domain id up to root domain]
SearchCriteria<DataCenterJoinVO> sdc = _dcJoinDao.createSearchCriteria();
- sdc.addOr("domainId", SearchCriteria.Op.IN, domainIds);
+ sdc.addOr("domainId", SearchCriteria.Op.IN, domainIds.toArray());
sdc.addOr("domainId", SearchCriteria.Op.NULL);
sc.addAnd("domain", SearchCriteria.Op.SC, sdc);
@@ -2268,7 +2268,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService {
// domainId == null (public zones) or domainId IN [all domain id up to root domain]
SearchCriteria<DataCenterJoinVO> sdc = _dcJoinDao.createSearchCriteria();
- sdc.addOr("domainId", SearchCriteria.Op.IN, domainIds);
+ sdc.addOr("domainId", SearchCriteria.Op.IN, domainIds.toArray());
sdc.addOr("domainId", SearchCriteria.Op.NULL);
sc.addAnd("domain", SearchCriteria.Op.SC, sdc);
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ed291eed/tools/cli/cloudmonkey/cloudmonkey.py
----------------------------------------------------------------------
diff --git a/tools/cli/cloudmonkey/cloudmonkey.py b/tools/cli/cloudmonkey/cloudmonkey.py
index d679e50..664bb03 100644
--- a/tools/cli/cloudmonkey/cloudmonkey.py
+++ b/tools/cli/cloudmonkey/cloudmonkey.py
@@ -261,42 +261,8 @@ class CloudMonkeyShell(cmd.Cmd, object):
if response is None:
return
- isAsync = isAsync and (self.asyncblock == "true")
- responsekey = filter(lambda x: 'response' in x, response.keys())[0]
- if isAsync and 'jobid' in response[responsekey]:
- jobId = response[responsekey]['jobid']
- command = "queryAsyncJobResult"
- requests = {'jobid': jobId}
- timeout = int(self.timeout)
- pollperiod = 3
- progress = 1
- while timeout > 0:
- print '\r' + '.' * progress,
- sys.stdout.flush()
- response = process_json(conn.make_request_with_auth(command,
- requests))
- responsekeys = filter(lambda x: 'response' in x,
- response.keys())
- if len(responsekeys) < 1:
- continue
- result = response[responsekeys[0]]
- jobstatus = result['jobstatus']
- if jobstatus == 2:
- jobresult = result["jobresult"]
- self.print_shell("\rAsync query failed for jobid",
- jobId, "\nError", jobresult["errorcode"],
- jobresult["errortext"])
- return
- elif jobstatus == 1:
- print '\r',
- return response
- time.sleep(pollperiod)
- timeout = timeout - pollperiod
- progress += 1
- logger.debug("job: %s to timeout in %ds" % (jobId, timeout))
- self.print_shell("Error:", "Async query timeout for jobid", jobId)
-
- return response
+ apiname = args.partition(' ')[0]
+ verb, subject = splitverbsubject(apiname)
def get_api_module(self, api_name, api_class_strs=[]):
try: