Commit Graph

75 Commits

Author SHA1 Message Date
David Nalley e87558256c Patch from Chip Childers
https://reviews.apache.org/r/5704/
License header updates for the server folder
2012-07-02 09:51:21 -04:00
Alena Prokharchyk 03ccb7f313 CS-14512: fixed deployVm with ipToNetworkList when uuid is used for networkIds
Conflicts:

	server/src/com/cloud/api/ApiResponseHelper.java
2012-04-16 15:43:56 -07:00
frank 2f634c0913 Switch to Apache license 2012-04-03 04:50:05 -07:00
Vijayendra Bhamidipati 57c54e23d6 Bug 14060: Include a CloudStack error code in an Exception Response
Bug 13127: API error text refer to database ids instead of uuids

Code-Reviewers: Ewan Mellor, Kelven Yang

Description:

	1. A new class CSExceptionErrorCode has been added to utils.
	   It contains a list of error codes for each type of
	   Exception class. Use fully qualified package paths for
	   Exceptions in CSExceptionErrorCode.  We log any exception
	   name not found in the list of error codes for exceptions.

	2. Whenever we throw an exception exobj anywhere in the
	   CS code, the CSErrorCode is set in the base class
	   constructor.

	3. We add a new field csErrorCode in classes CloudException,
	   RuntimeCloudException, ExecutionException and
	   ExceptionResponse.

	4. Two places in ApiServer.java were wrongly modified when
	   putting in changes for bug 13127 to not throw an exception.
	   This has been corrected in this commit.
2012-03-05 17:39:09 -08:00
Vijayendra Bhamidipati 59631452b9 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Modify Exception handling to enable addition of multiple
	uuids in a single exception thrown by API functions. Both
	XML and JSON outputs will store all uuids and Fieldnames.
	This will make it easier to provide more information when
	an exception occurs - for example, a zone id, a cluster id,
	host id, and then a specific property id.
2012-02-27 17:55:03 -08:00
Vijayendra Bhamidipati bfe1122bc6 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Added a field name for the db id in the IdentityProxy class, and
	modified setProxyObject() to take an additional id name parameter.
	This will let us know the name of the uuid that we are returning.
	E.g.- domainId, zoneId, etc. The client can view this field in
	the json/xml output. Modified the JSON/XML serialization routines
	to append this new parameter to the serialized output for Exception
	Responses.
2012-02-27 17:55:01 -08:00
Vijayendra Bhamidipati c3fbe29cf8 Bug 13127: API error text refer to database ids instead of uuids
Description:

	1) Added a setProxyObject() method to CloudException and RuntimeCloudException
	2) Modified a bunch of throw exceptions in NetworkManagerImpl.java to call setProxyObject() before throwing an exception.
	3) Changed scope of ProxyIdentity attribute to protected.
	4) Added routines to ServerApiException to get/set IdentityProxy object, and
	   routine in RuntimeCloudException to get the Idproxy object.
	5) Modified the exception handling around the dispatcher and handlerequest()
	   to copy over the IdentityProxy information before rethrowing an exception
	   eventually back to handle().
	6) Removed duplicate IdentityProxy object in ServerApiException.
	   It was extending RuntimeCloudException which already had an
	   IdentityProxy object.
2012-02-27 17:54:56 -08:00
Alena Prokharchyk 294d3a2fda Code format fixes 2012-02-10 15:10:21 -08:00
Alena Prokharchyk 223497baa4 bug 12877: fixed pagesize=-1 behavior
status 12877: resolved fixed
2012-01-09 13:26:12 -08:00
Kelven Yang 85ad8ffca3 rename com.cloud.identity package to com.cloud.uuididentity as a previous deleted com.cloud.Identity name make git confused with com.cloud.identity under linux systems 2012-01-05 14:52:16 -08:00
Alena Prokharchyk bb2a8cf7ea NaaS: added "subdomainAccess" parameter to domain level network object. The parameter defines whether the network can be accessed from the subdomains. If the parameter is not specified, it would be defaulted to allow.subdomain.network.access Global Config param 2011-11-14 18:13:47 -08:00
Alex Huang f6fcaa49ec Merge complete except for virtualnetworkappliancemanager 2011-11-10 15:18:16 -08:00
Kelven Yang f5d56b3d5d Fix problems caused by merging 2011-11-03 10:35:25 -07:00
Kelven Yang 79e39c20fb Fixes on merged result 2011-11-03 07:34:01 -07:00
Kelven Yang 924e556c95 bug 6745: Using UUID instead of integers - for all commands 2011-11-03 07:34:00 -07:00
Kelven Yang 8d8775b533 bug 6745: Using UUID instead of integers - for Async Jobs 2011-11-03 07:33:58 -07:00
Kelven Yang fa2dd8e93a bug 6745: Using UUID instead of integers - for VM instances 2011-11-03 07:33:56 -07:00
kishan d55c827f00 bug 4844: Added length in API parameter annotation. Throw invalid param exception when value of param is greater than length. Default length is 255.
status 4844: resolved fixed
2011-10-27 12:46:01 +05:30
kishan ca4b1917dd Revert "bug 4844: Do not allow param values to be greater than length 256"
This reverts commit 7598ca07d3b3214e479886e3901df0f0db09f6f1.
2011-10-25 14:22:14 +05:30
kishan e130911371 bug 4844: Do not allow param values to be greater than length 256
status 4844: resolved fixed
2011-10-24 18:02:32 +05:30
prachi 8570b25506 NAAS: APIServer changes to introduce framework to read commands from pluggable components having separate commands.properties file
Changes:
- Added a new interface 'PluggableService'
- Any component that can be packaged separately from cloudstack, can implement this interface and provide its own property file listing the API commands the component supports
- As an example have made VirtualNetworkApplianceService pluggable and a new configureRouter command is added
- ComponentLocator reads all the pluggable service from componentLibrary or from components.xml and instantiates the services.
- As an example, DefaultComponentLibrary adds the pluggable service 'VirtualNetworkApplianceService'
- Also components.xml.in has an entry to show how a pluggable service can be added, but it is commented out.
- APIServer now reads the commands for each pluggable service and when a command for such a service is called, APIServer sets the required instance of the pluggable service in the coomand.
- To do this a new annotation '@PlugService' is added that is processed by APIServer. This eliminates the dependency on the BaseCmd to instantiate the service instances.
2011-10-11 17:34:57 -07:00
alena ccd47c1b21 Implemented Project Invitations 2011-09-26 17:47:20 -07:00
alena a1331d1cfc Intermidiate checkin to Project feature:
1) Introduce new managers - ProjectManager and DomainManager. Moved all domain related code from AccountManager to DomainManager.
2) Moved some code from ManagementServerImpl to the correct managers.
3) New resource limit for Domain - Project
2011-09-20 18:35:28 -07:00
kishan 695abd5c5a bug 7826: Check for correct date range. Make DateFormat strict (turn off lenient)
status 7826: resolved fixed
2011-08-05 19:44:44 +05:30
nit 6256c88be6 bug 9724 : ListEvents API - add granularity till the hours, minutes and seconds level. The new format that startDate and endDate expect are yyyy-MM-dd HH:mm:ss. To honour backward compatibility these parameters can also be in the old format yyyy-MM-dd. I have added this to the parameter documentation. Also changed is the log message for throwing error in case of parsing exception.
status 9724: resolved fixed
2011-05-26 21:21:28 +05:30
alena 996d0edbc9 Throw server api exception with correct error code 2011-04-18 16:59:55 -07:00
alena ec76406942 bug 8737: set entityOwnerId for all api commands including non-Async ones
status 8737: resolved fixed
2011-02-28 09:21:05 -08:00
alena 6f55c4dd7e bug 8270: Synchronize on 1) ipAddress object when create/delete ipForwarding/portForwardingRule and vpn service 2) on networkId when assignTo/removeFrom/deleteLoadBalancer
status 8270: resolved fixed
2011-02-03 18:45:49 -08:00
kishan 94ec7bf27a bug 7842: events refactoring. Still wrok in progress 2011-01-20 21:49:50 +05:30
kishan 03a66d4b90 bug 7842: events refactoring 2011-01-14 18:55:54 +05:30
abhishek 7c2fffe67a bug 7989: fixing this regression
status 7989: resolved fixed
2011-01-13 17:07:03 -08:00
kishan 388e689755 bug 7842: Move events to service layer from http api 2011-01-14 03:58:56 +05:30
alena 133f286b06 Fixed description for ServerApiException 2010-12-29 09:55:21 -08:00
Alex Huang 544fa7ff1b remote access vpn, user ip address changes 2010-12-29 09:32:54 -08:00
alena 7b3b9076b0 bug 6168: throw a runtime exception when unable to schedule Async job instead of returning jobId=0L
status 6168: resolved fixed
2010-12-27 17:00:29 -08:00
kishan bb0e6a0ae3 bug 7504: Events refactoring 2010-12-24 12:58:32 +05:30
alena 7e9579dab2 Fixed create/list LoadBalancerRules 2010-12-09 21:06:48 -08:00
Alex Huang 98eb58bf84 callCreate to create 2010-12-04 17:58:16 -08:00
alena 9f11f52611 listNetworks - don't return Networks created from systemOnly network offerings 2010-12-03 12:31:30 -08:00
alena f8a687ab23 1) Implemented create/list/deleteNetworkOffering create/delete/listNetwork APIs.
2) Added networkIds parameter to deployVMCmd - accepts list of networks ids separated by coma.
3) Changed domainRouter/systemVm/userVm response to return list of Nics associated with the vm.
2010-12-02 19:30:17 -08:00
alena 680812f675 bug 7223: page and pagesize parameters must be specified together "list" api commands
status 7223: resolved fixed
2010-11-30 11:31:34 -08:00
alena a646745516 bug 7227: applying Alex's fix - different way of desirializing List objects.
status 7227: resolved fixed
2010-11-22 14:08:43 -08:00
alena cdea2d210d Better logging for api exceptions. 2010-11-22 11:27:15 -08:00
alena cec8ebd5cd bug 7236: don't catch AsyncCommandQueued exception in ApiDispatcher
status 7236: resolved fixed
2010-11-19 18:40:32 -08:00
alena a5dfaaf31b API exception handling - print api command name to the log. 2010-11-19 15:48:58 -08:00
alena 8362d0feba Reverting back commit e5c137e303 as it wasn't meant to be in 2.2 RC1. 2010-11-19 14:23:39 -08:00
alena e5c137e303 bug 7223: pagesize and page should be specified together in "list" api commands
status 7223: resolved fixed
2010-11-19 14:03:44 -08:00
alena c5d78a726e Modified exception handing in API. Following exceptions are supported now (location - BaseCmd.java):
* MALFORMED_PARAMETER_ERROR - when type of the request parameter is invalid (String instead of Long for id for example)
* PARAM_ERROR - when invalid parameter value is specified in api request. For example, id of non existing vm for StartVmCmd
* ACCOUNT_RESOURCE_LIMIT_ERROR - when user tries to exceed his resource limits by executing the api command.
* INSUFFICIENT_CAPACITY_ERROR - when resource fails to create/start due to insufficient capacity.
* RESOURCE_UNAVAILABLE_ERROR - when user tries to create a vm when storage is not available.
* RESOURCE_IN_USE_ERROR - when user tries to delete/modify resource while it's in use. For example, when we try to delete a network group when it contains ingress rules.
* NETWORK_RULE_CONFLICT_ERROR - when LB/PF rule to add conflicts with existing rule
* ACCOUNT_ERROR - when user is not authorized to execute operation on the resource.
* INTERNAL_ERROR
2010-11-16 11:56:34 -08:00
alena d43a8e983c Fixed authorizeNetworkGroupIngress api command (it stopped working after API refactor) 2010-11-15 17:44:51 -08:00
alena 5fafef9970 More api refactor - build api response is execute() method instead of getResponse method. 2010-11-09 09:58:05 -08:00