Rohit Yadav
580bf857ff
server: ApiServer inits with processing cmd classes to fill apiname:class mapping
...
- Add maven dependency reflections (wtfl license, apl compliant)
- Use reflections to recurse and get apiname:class mapping
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-02 18:43:59 -08:00
Min Chen
ebfb90e217
Create DB view for Account to speed up ListAccountsCmd, and add missing async job information for some response objects.
...
Signed-off-by: Min Chen <min.chen@citrix.com>
2013-01-02 17:38:58 -08:00
Min Chen
21c1623a03
Create DB view for Volume to speed up ListVolumesCmd.
...
Signed-off-by: Min Chen <min.chen@citrix.com>
2012-12-25 17:08:50 -08:00
Rohit Yadav
296b49c2f8
Merge branch 'master' into test-merge-api
...
Conflicts:
api/src/com/cloud/agent/api/BackupSnapshotCommand.java
api/src/com/cloud/agent/api/storage/PrimaryStorageDownloadCommand.java
api/src/com/cloud/agent/api/to/PortForwardingRuleTO.java
api/src/com/cloud/network/NetworkService.java
api/src/com/cloud/resource/ResourceService.java
api/src/org/apache/cloudstack/api/ApiConstants.java
api/src/org/apache/cloudstack/api/ResponseGenerator.java
api/src/org/apache/cloudstack/api/response/SSHKeyPairResponse.java
client/tomcatconf/commands.properties.in
core/src/com/cloud/storage/SnapshotVO.java
pom.xml
server/src/com/cloud/api/ApiDispatcher.java
server/src/com/cloud/api/ApiResponseHelper.java
server/src/com/cloud/api/ApiServer.java
server/src/com/cloud/configuration/ConfigurationManagerImpl.java
server/src/com/cloud/network/NetworkManagerImpl.java
server/src/com/cloud/network/rules/RulesManagerImpl.java
server/src/com/cloud/offerings/NetworkOfferingVO.java
server/src/com/cloud/resource/ResourceManagerImpl.java
server/src/com/cloud/upgrade/dao/Upgrade40to41.java
server/src/com/cloud/vm/UserVmManagerImpl.java
server/test/com/cloud/vpc/MockNetworkManagerImpl.java
setup/db/create-schema.sql
setup/db/db/schema-40to410.sql
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-23 13:54:46 -08:00
Min Chen
e7fa1a86fb
Create DB views to improve ListHostsCmd performance.
...
Signed-off-by: Min Chen <min.chen@citrix.com>
2012-12-22 21:47:05 -08:00
Min Chen
b14b39a69f
Remove IdentityProxy from BaseResponse, ExtractResponse. Now
...
IdentityProxy is only referenced in CreateCmdResponse, which involves
some async job logic change. Since it is not impacting list performance,
will leave it there for now.
Signed-off-by: Min Chen <min.chen@citrix.com>
2012-12-20 16:52:52 -08:00
Min Chen
a88ce6bb7f
Remove IdentityProxy from CloudException and ExceptionResponse.
2012-12-19 23:49:44 -08:00
Rohit Yadav
d54d8cbcd7
api: Fix ApiServer's handle() which runs on integration.api.port
...
- Fix URI parsing using apache hc
- Remove bloated c-like parsing code
- Fix param processing
- TODO: To use Guava's multimap
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-17 20:51:51 -08:00
Chip Childers
44da7b1841
CLOUDSTACK-505: Reworked approach to cleaning request / response strings
...
As noted in the bug, several of the API command in question
are async calls. I've added a simple regex-based string cleaning
function, and have the request and response strings running through
it prior to being appended to the audit log.
Unit tests added for the new cleaning function as well.
The call to skip logging the createSSHKeyPair response remains intact
for now, although it should probably be scrubbed similarly to the
password fields.
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-12-17 14:11:09 -05:00
Rohit Yadav
59fc89abe3
api: Fix ApiServer role base acl logic and response type value
...
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-16 18:13:29 -08:00
Chip Childers
82a17a413b
CLOUDSTACK-505: Removed logging of deployVirtualMachine and resetPasswordForVirtualMachine commands.
...
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-12-13 16:00:30 -05:00
Rohit Yadav
7dbdf786cc
api: FIXME for api access checker adapter
...
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-12 14:21:38 -08:00
Rohit Yadav
c455cf9271
api: refactor common code to get classname for an api in ApiServer
...
- Refactor common code to get classname from apiname
- Fix search mechanism within api access checker adapter to:
* check permissions
* get class name for an apiname
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-11 14:17:47 -08:00
Rohit Yadav
79b54e6ac1
api: Fix obj injections in ApiServer
...
- Inject classes using Inject annotation
- Don't misuse component locator
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-11 14:16:25 -08:00
Rohit Yadav
8c4096dc59
api: Have apiserver injected by component locator
...
- Instantiate apiserver by injection, so all its entities are also created and injected
- Make the constructor protected
Thanks to Alex for helping out on this one.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-10 17:38:44 -08:00
Rohit Yadav
151a7643ce
api: Don't silently fail apiserver instance initialization
...
- ApiServer instance assumes cloudstartup servlet will initialize it
- Check and log if initialization fails
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-10 16:27:33 -08:00
Min Chen
bba96254f5
Refactoring ListVMGroupsCmd and InstanceGroupResponse.
2012-12-10 13:59:20 -08:00
Rohit Yadav
e398b1e47a
api: Refactor command and response classes to org.apache.cloudstack.api.*
...
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 19:23:24 -08:00
Rohit Yadav
af28c06998
api: move and group all under command, org.apache.cloudstack.command.*
...
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 18:30:54 -08:00
Min Chen
30941c2d31
api: Refactoring ListEventsCmd and EventResponse, and create Event db view.
...
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 16:54:45 -08:00
Min Chen
8a313d7f84
api: SecurityGroupResponse and SecurityGroupRuleResponse refactoring
...
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-06 16:04:48 -08:00
Min Chen
b0ce8fd4ff
api: Optimize and improve api, db call perfomance
...
This is part 1 of list API refactoring. Commands covered:
listVmsCmd, listRoutersCmd Response covered:
UserVmResponse, DomainRouterResponse. DB views created:
user_vm_view, domain_router_view.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-05 20:06:20 -08:00
Rohit Yadav
6fc3bc3760
api_refactor: refactor vpn and vm apis
...
- Refactor VPN and VM APIs to admin and user pkgs
- Names space, org.apache.cloudstack
- Fix refactored apis in commands*.in
- Fix comments etc.
- Expand tabs, remove trailing whitespace
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 21:27:02 -08:00
Rohit Yadav
5edfc2760a
refactor: remove redundant imports, fix trailing chars
2012-12-03 13:54:37 -08:00
Prachi Damle
a2306f4917
some more poc work
2012-11-29 16:10:09 -08:00
Prachi Damle
073863249a
Some ACL POC work
...
Conflicts:
server/src/com/cloud/api/ApiDispatcher.java
2012-11-29 16:09:47 -08:00
Chip Childers
e4a5173199
CLOUDSTACK-505: Do not log the command response object for the createSSHKeyPair command.
...
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-11-29 12:24:42 -05:00
Kelven Yang
d79f1f6fdc
Replace Adapters and PluggableServices, use Spring to load them
2012-11-07 15:03:24 -08:00
Kishan Kavala
f0f33bf4da
Added Mock ApiServer, Regions API calls with api keys
2012-10-17 14:16:36 +05:30
Alena Prokharchyk
339aa41442
CLOUDSTACK-304: Synchronization support for createSnapshot command - don't sent more than "concurrent.snapshots.threshold.perhost" createSnapshots commands to the backend host.
...
Conflicts:
core/src/com/cloud/async/AsyncJobVO.java
core/src/com/cloud/async/SyncQueueVO.java
server/src/com/cloud/api/ApiDispatcher.java
server/src/com/cloud/api/ApiServer.java
server/src/com/cloud/async/AsyncJobManagerImpl.java
server/src/com/cloud/async/SyncQueueManager.java
server/src/com/cloud/async/SyncQueueManagerImpl.java
server/src/com/cloud/async/dao/SyncQueueDao.java
server/src/com/cloud/storage/snapshot/SnapshotSchedulerImpl.java
server/test/com/cloud/async/TestSyncQueueManager.java
setup/db/create-schema.sql
2012-10-10 13:40:00 -07:00
Alena Prokharchyk
048c5e50cf
Merge branch 'master' into vpc
...
Conflicts:
utils/test/com/cloud/utils/component/MockComponentLocator.java
2012-08-08 11:50:39 -07:00
Alex Huang
c1c952b42b
should have used non url safe
2012-08-07 16:58:16 -07:00
Alex Huang
a6a864a1a8
Removed Base64 file and use the apache version
2012-08-07 15:41:54 -07:00
Alena Prokharchyk
31f9d718fb
Merge branch 'master' into vpc
...
Conflicts:
server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
2012-07-03 17:32:50 -07:00
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
Chip Childers
8f71a2927f
License header updates for the server folder.
2012-07-02 08:58:10 -04:00
Alena Prokharchyk
634cd78baa
Merge branch 'master' into vpc
...
Conflicts:
api/src/com/cloud/api/ApiConstants.java
api/src/com/cloud/api/BaseCmd.java
api/src/com/cloud/api/ResponseGenerator.java
api/src/com/cloud/api/commands/ListNetworksCmd.java
api/src/com/cloud/api/response/NetworkResponse.java
api/src/com/cloud/event/EventTypes.java
api/src/com/cloud/network/NetworkService.java
client/tomcatconf/commands.properties.in
scripts/network/domr/getDomRVersion.sh
scripts/network/domr/ipassoc.sh
scripts/network/domr/l2tp_vpn.sh
scripts/network/domr/networkUsage.sh
scripts/network/domr/router_proxy.sh
server/src/com/cloud/api/ApiDBUtils.java
server/src/com/cloud/api/ApiResponseHelper.java
server/src/com/cloud/configuration/DefaultComponentLibrary.java
server/src/com/cloud/network/NetworkManagerImpl.java
server/src/com/cloud/network/dao/IPAddressDao.java
server/src/com/cloud/network/dao/IPAddressDaoImpl.java
setup/apidoc/gen_toc.py
setup/db/create-schema.sql
wscript
2012-06-28 17:41:40 -07:00
saksham
f6d16d0ab5
CS-15018: Event USER.LOGIN should contain the client IP address. Changes made in accordance with the coding convention.
...
Reviewed-by: Alena Prokharchyk
2012-06-18 10:18:30 -07:00
Alena Prokharchyk
60b52f90dd
Initial checkin for VPC feature:
...
1) Added API frameworks for the feature. New commands:
* CreateVPCCmd
* ListVPCsCmd
* DeleteVPCCmd
* UpdateVPCCmd
* CreateVPCOfferingCmd
* UpdateVPCOfferingCmd
* DeleteVPCOfferingCmd
* ListVPCOfferingsCmd
2) New db tables:
* `cloud`.`vpc`
* `cloud`.`vpc_offerings`
* `cloud`.`vpc_offering_service_map`
and corresponding VO/Dao objects.
Added vpc_id field to `cloud.`networks` table - not null when network belongs to VPC
3) New Manager and Service interfaces- VpcManager/VpcService
4) Automatically create new VpcOffering (if doesn't exist) on system start
5) New Action events:
* VPC.CREATE
* VPC.UPDATE
* VPC.DELETE
* VPC.OFFERING.CREATE
* VPC.OFFERING.UPDATE
* VPC.OFFERING.DELETE
Conflicts:
api/src/com/cloud/api/ApiConstants.java
client/tomcatconf/commands.properties.in
server/src/com/cloud/api/ApiDBUtils.java
server/src/com/cloud/network/NetworkManagerImpl.java
setup/db/create-schema.sql
2012-06-15 13:53:59 -07:00
frank
2f634c0913
Switch to Apache license
2012-04-03 04:50:05 -07:00
prachi
e43914ab58
Bug 14336 - Login API does not return UUID's
...
Changes done:
- Provide UUID for userid and domainid only while constructing the login response. Session will hold the DB id's as before, to ensure other parts keep working.
- This reverts commit de28aa3ddde5b601f2f234f2eccef871fbaf1a06.
2012-03-20 16:59:04 -07:00
prachi
a5d7cd3d51
Bug 14336 - Login API does not return UUID's
...
Changes:
- login API now returns back UUID for user and domain
2012-03-20 16:59:02 -07:00
prachi
280d533a6f
Bug 14047 - login API fails when UUID is used for domain_id
...
Changes:
- API should accept UUID for domain and convert to id when needed
2012-03-20 16:59:00 -07:00
Alena Prokharchyk
e53cfeceb6
bug 14379: don't enable 8096 port by default (set global config variable to null by default, and don't create a listener on this port unless its set to valid integer)
2012-03-19 16:19:38 -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
e5b4cf5cf1
Bug 13127: API error text refer to database ids instead of uuids
...
Description:
1) Put in an IdentityProxy object in the ExceptionResponse class.
This allows us to copy over the IdentityProxy object contained
in the exception caught by handlerequest() when thrown by the
command's execute() method, into the Response object that is
prepared to return an exception response to the calling API
invocation.
2) Modified the GSON serialization method to conver the entire
exception object into JSON format and not just the error text.
3) Modify the updateDomain API to populate the exception it throws
upon detecting a duplicate domain to include the tablename and
domain db id in the exception's IdentityProxy object.
NOTE:
1) We can modify the base exception classes and the ExceptionResponse
class to contain a list of IdentityProxy objects rather than a
single one.
2) We will need to modify all commands such that wherever applicable
(wherever a db id is involved), they populate the IdentityProxy
object(s) before throwing an exception.
2012-02-27 17:54:58 -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
1490e45a1c
Fixed format style in a bunch of files (replaced tabs with spaces as a part of it)
2012-02-03 13:49:11 -08:00
Alena Prokharchyk
c581506103
bug 12306: list* command revamp
2012-01-09 10:07:42 -08:00
Alena Prokharchyk
0731dac370
bug 12399: introduced periodic thread that expires Project invitations
...
status 12399: resolved fixed
2011-12-09 12:21:41 -08:00
prachi
0769a3b3f3
API Server changes needed to read a properties file present within a jar provided in classpath.
2011-11-29 18:02:19 -08:00
Alex Huang
f6fcaa49ec
Merge complete except for virtualnetworkappliancemanager
2011-11-10 15:18:16 -08:00
Alena
0785b64306
bug 11923: don't expose command name in the exception response when command is not available
...
status 11923: resolved fixed
reviewed-by: Will Chan
2011-11-07 18:00:33 -08:00
Kelven Yang
9489d6ffeb
1) Fix a serialization problem in command inherits AsyncCreateCommand.
...
2) Deal with special IDs (i.e. -1) in UUID translation
2011-11-07 18:00:14 -08:00
Kelven Yang
7e9b210d5c
bug 6745: Fix problems in Async create commands
2011-11-03 07:34:02 -07:00
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
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
alena
b883b25a12
bug 11348: make content type for "json" files configurable
...
status 11348: resolved fixed
2011-09-07 14:22:01 -07:00
kishan
066537a565
bug 4282: Removed caching of signatures. Added detailed error message expires parameter parsing
2011-09-07 17:51:09 +05:30
alena
39b78ee17c
bug 11298: give detailed error message when failed to authenticate a user
...
status 11298: resolved fixed
2011-08-30 16:51:45 -07:00
kishan
83991a8494
bug 4282: Storing signatures cache using ehcache. ToDo- Relicate cache for clustered mgmt server setup
2011-08-12 20:27:20 +05:30
kishan
219336e07c
bug 4282: Initial Checkin. Added new parameters expires, signatureversion. Checking expires time and storing used signatures in-memory locally implemented.
2011-08-10 19:52:43 +05:30
frank
6aaf3d5ae0
Merge branch 'cvm'
...
Conflicts:
api/src/com/cloud/api/BaseCmd.java
api/src/com/cloud/storage/Storage.java
cloud.spec
core/src/com/cloud/storage/template/DownloadManagerImpl.java
server/src/com/cloud/agent/manager/AgentManagerImpl.java
server/src/com/cloud/configuration/DefaultComponentLibrary.java
server/src/com/cloud/deploy/FirstFitPlanner.java
server/src/com/cloud/host/dao/HostDao.java
server/src/com/cloud/storage/StorageManagerImpl.java
server/src/com/cloud/vm/UserVmManagerImpl.java
server/src/com/cloud/vm/VirtualMachineManagerImpl.java
utils/src/com/cloud/utils/SerialVersionUID.java
2011-08-08 14:14:09 -07:00
alena
daad9e4b81
Keep "encode.api.response" parameter in ApiServer class; initialize it as a part of init() method
2011-06-21 11:05:57 -07:00
Frank
379cbc1d55
Store all parameters of url call to BaseCmd.fullUrlParams so there will be no
...
changes in future API because all parameters can be retrieve from API command itself
2011-06-08 10:25:15 -07:00
alena
3d3bfcddaa
bug 9858: added missing security checks to listAsyncJobs command
...
status 9858: resolved fixed
Conflicts:
server/src/com/cloud/api/ApiServer.java
2011-05-21 15:00:50 -07:00
Chiradeep Vittal
303e2a7481
Start of zonesfeature / mycloud/cloudkit
2011-05-03 10:40:17 -07:00
alena
b7e4ec1749
bug 9564: 1) For all list commands set pageSize() to default.page.size if not specified 2) When pageSize is specified in the request, and it's more than default.page.size - throw an exception
...
status 9564: resolved fixed
2011-04-29 16:57:38 -07:00
will
633d024b7c
- Merge all CloudZones Registration feature into master
2011-04-28 16:05:36 -07:00
alena
c7e120a72e
Transform InvalidParameterValueException and PermissionDeniedException to proper API exceptions
2011-04-19 17:07:05 -07:00
Frank
92155522f2
Add license header to files
2011-04-14 11:23:14 -07:00
Alex Huang
075fba5899
stackmaid is now taskmanager
2011-04-05 10:17:22 -07:00
alena
af4459f24f
Fixed list* api commands.
2011-04-04 11:36:49 -07:00
alena
2aeacd5a4c
bug 3179: added "count" parameter to the response to all List* api commands
2011-04-01 19:29:08 -07:00
alena
2af8b32d31
bug 9245: save ownerAccountId (instead of callerAccountId) to account_id field in async_job table. We already save caller info to user_id field
...
status 9245: resolved fixed
2011-03-31 15:27:35 -07:00
nit
ded1184548
bug 8710: Introducing a new user role in cloudstack called RESOURCE_DOMAIN_ADMIN. The role would have all the domain_admin rights and the rights to list zone,pods,clusters and so on. More info in the bug
2011-03-25 18:04:09 -07:00
alena
7dce8412e4
Fixed API xml doc generation
2011-03-23 12:12:29 -07:00
alena
d3f04b2b38
bug 8945: introduced "default.page.limit" config param (default value is 500). Used for pagination in API list* commands.
...
status 8945: resolved fixed
2011-03-15 15:06:52 -07:00
alena
e4765fb32b
bug 6969: return jobId/jobStatus for IpAddress and SecurityGroup as ids for these objects were introduced in 2.2.x
2011-02-22 09:09:55 -08:00
alena
a05400604b
bug 8565: throw unsupported error code when non existing api command is sent
...
status 8565: resolved fixed
2011-02-15 16:01:09 -08:00
abhishek
f0f643dffe
adding exceptions so that we can use login and logout commands via 8080
2011-02-08 14:06:33 -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
alena
026e6905c9
bug 8343: in api commands extending BaseAsyncCreate set owner account information only after all request parameters were read as account/domainId information can be specified in the request
...
status 8343: resolved fixed
2011-02-03 09:53:18 -08:00
will
953c862713
Removed hypervisor.type from the login response since this capability does make sense anymore in 2.2
2011-01-20 17:49:13 -08:00
will
1634c29e81
- Cleaned up more capabilities related to security groups and to make use of listCapabilities.
2011-01-20 16:35:40 -08:00
kishan
94ec7bf27a
bug 7842: events refactoring. Still wrok in progress
2011-01-20 21:49:50 +05:30
will
d497a71619
Cleaned up uselocal storage config param as I don't see what it is beng used anymore as. Also, removed the filter for not allowing the user to set "offerHA" if hypervisor.type == KVM.
2011-01-19 16:06:47 -08:00
kishan
03a66d4b90
bug 7842: events refactoring
2011-01-14 18:55:54 +05:30
kishan
a2752c6207
bug 7842: Move events to service layer from http api
2011-01-14 03:58:57 +05:30
alena
c74fd529be
bug 7611: get directPodBased default network when deploy vm with no networkId specified
...
status 7611: resolved fixed
2011-01-04 18:43:03 -08:00
alena
5743db87e1
bug 5482: build Error api response based on responseType(xml, json) specified in the request instead of using default HttpServlet error response format
...
status 5482: resolved fixed
2011-01-04 15:08:12 -08:00
alena
dfecc1f448
Changed account state to be in lower case.
2010-12-30 09:57:59 -08:00
Alex Huang
544fa7ff1b
remote access vpn, user ip address changes
2010-12-29 09:32:54 -08:00
abhishek
5d3173eabf
bug 7721: generically fixing the url decoder issue for all commands, wherein we block any input which contains % eg. name, displayText. We throw the apt error back to the UI for the user to act upon
...
status 7721: resolved fixed
2010-12-28 14:23:21 -08:00
alena
2d316eabb7
bug 6056: Changed format for API error response.
...
status 6056: resolved fixed
Example of error response:
Json:
{ "updatedomainresponse" : {"errorcode" : "431, "errortext" : "Unable to find domain 4"} }
Xml:
<updatedomainresponse cloud-stack-version="1.9.1.2010-12-28T18:14:57Z">
<errorcode>431</errorcode>
<errortext>Unable to find domain 4</errortext>
</updatedomainresponse>
2010-12-28 10:36:04 -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
abhishek
5154ba1539
bug 6361: this is a good point to commit; 1st round of refactor is done, code is clean compiling and ms is deploying
2010-12-16 15:37:19 -08:00
alena
52e6e4d06e
bug 6930: return async job info in listHost/listStoragePools commands
...
status 6930: resolved fixed
2010-12-15 18:58:56 -08:00
abhishek
61cf2308a1
bug 7264: removing the unused param direct.attach.untagged.vlan.enabled; also changing the use of this param to Data_center.networktype.basic usage as this maps to the removed param in the case of direct untagged network. This is used in a check in recreatehostallocator
2010-12-08 16:11:16 -08:00
abhishek
8fa364e4d5
first part of checkin, wherein network.type param is being removed
2010-12-08 09:58:12 -08:00
Alex Huang
96ac136b8c
changed getAccountId to getEntityOwnerId
2010-12-03 11:59:45 -08:00
Alex Huang
b859e103d8
ip nat rule forwarding done
2010-12-03 08:48:03 -08:00
will
cd5afb3d7e
bug 6969: Fixed snapshots, templates, isos, routers, volumes, and system vms async commands to make use of the new job id/job status when listing objects with pending jobs.
2010-12-01 16:50:56 -08:00
will
c67d26cec4
bug 6969: First step of now displaying pending async jobs for listXXXCommands. There is a lot more cleanup and fixing to do but all commands acting against VirtualMachines now work.
2010-11-30 19:12:09 -08:00
Kelven Yang
54f177cacc
1) Make generic dao be able to persist UTF-8 string for internationalization support
...
2) Undo gson Unicode escape in API response object to avoid double escaping which can break Javascript from getting correct text content
3) Correct API layer in dealing with character encoding
4) Remove double escape in cloud.core.js
2010-11-30 09:40:54 -08:00
alena
aa8aa6027a
Modified UserContext - got rid of accountName, domainId fields as we can get this information from Account field.
2010-11-24 14:29:08 -08:00
Alex Huang
1e44925564
api refactoring
2010-11-21 12:00:21 -08:00
Alex Huang
a73e3dc9ac
new networking can be set by use.new.networking
2010-11-17 17:51:17 -08:00
alena
050eed742f
1) Removed account/domainId info from deleteSnapshot and deleteSnapshotPolicy commands as we get account info from the snapshot/policy object.
...
2) Introduced responseObject field in @Implementation for all apis. This field contains information about the response object class, so we can used it for generating API documentation.
2010-11-12 17:36:17 -08:00
abhishek
fc461abed1
bug 6755: adding checks for commands before they hit the ms; to ensure they are valid. Also returning the right error msg if the command is not valid
...
status 6755: resolved fixed
2010-11-12 13:55:06 -08:00
Alex Huang
c6033baa78
system vm start and stop added
2010-11-11 12:53:19 -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
alena
1c24deda34
1) Refactored current Apis not to use reflection for method invocation. In new version following has to be done:
...
* Implement callCreate() and execute() methods in apis extending BaseAsyncCreateCmd (example - CreateVolumeCmd)
* Implement execute() method in apis extending BaseCmd and BaseAsyncCmd (example - deleteVolumeCmd and deleteUserCmd)
We no longer need createMethod(), method(), manager() fields in @Implementation annotation, cleanup has to be done.
2) Moved Account/User related methods to AccountManagerImpl. Methods are exposed via AccountService interface.
3) Enhanced exception handing for Api calls.
4) Created ConfigurationService interface, all Api config methods are exposed via it.
2010-11-08 11:27:36 -08:00
will
05ab3bf673
bug 7063: AsyncJobResult should now return the correct success and error tags upon the completion of a async job. It should now follow either the format ... jobresult.success or jobresult.errorcode and jobresult.errortext
...
- Fixed a lot of other Async related packaging issues. It's not all done but will continue to refactor this later.
2010-11-05 17:30:03 -07:00
Alex Huang
d5d8f27cad
Added more changes to the api
2010-10-21 15:11:49 -07:00
Kris McQueen
f4f00cbe2d
bug 6655: when verifying request signature for API requests that use keys, pass the userId of the requester as a Long to avoid NPEs when converting it to a string. Also set up the UserContext for both normal users and admins.
...
status 6655: resolved fixed
2010-10-19 11:41:09 -07:00
Kris McQueen
2740ba6c40
final merge of master->2.1.refactor preparing for merge back into master
2010-10-12 14:46:24 -07:00
Kris McQueen
9c593352d0
Fixing events for async jobs so that there's a scheduled event recorded with appropriate type/description whenever the API framework schedules the async command to run. A few miscellaneous fixes as well uncovered during regression testing (router response was not parsed correctly by UI, etc.)
2010-10-05 20:26:18 -07:00
nit
f7f2b5666a
bug 5871: removing the NDC since there is no nested context involved in the audit trail and since its leaking into the management server logs.
2010-10-05 19:51:12 +05:30
nit
38fd80e522
bug 5871: Introducing audit trail for all the interactions with the cloud stack - User 'X' initiated an action 'Y' on resource 'Z'. The audit will contain http api request along with the contextual parameters (userId, accountId, sessionId). For the response part only log success/failure for all sync api's with the exception of queryAsyncJob where reason code and reason will also be logged. For async api's I will also log the async job id.
2010-10-04 14:27:40 +05:30
Kris McQueen
41a16a478a
Fixes required for regressions found running automated tests. (1) method signatures that weren't properly refactored to new API framework (2) API request parameter types should always be specified lest they default to String which may or may not be desired (3) better exception handling with regard to Queued commands and generic exceptions (4) fix eventing to pass the proper accountId where neccessary
2010-10-01 14:11:18 -07:00
Kris McQueen
0105aec338
Always set the response type on the command object so that the correct output is generated. Add both Strings and Longs to the login response (domainId and userId will be the Longs). Use the correct method name for ListSystemVMsCmd.
2010-09-29 17:32:19 -07:00
Kris McQueen
da660f2575
Change session parameters to be their actual type (domainId and userId are saved to the session as Longs and not Strings)
2010-09-29 15:18:43 -07:00
Kris McQueen
95a7f20a0a
Adding in XML response serializing. Now the new API framework supports both XML and JSON responses the way the old framework did.
2010-09-28 17:36:27 -07:00
Kris McQueen
848ce60097
Merging master into 2.1.refactor, resolve the merge conflicts as best I can. New commands related to extracting template/iso/volume and related to instance groups were refactored to the new API framework.
2010-09-28 15:47:14 -07:00
Kris McQueen
62257d4021
Fix serializing async job responses by writing a custom adapter for ResponseObjects. Improve exception handling when calling async commands (the job still needs to complete, but with FAILED status).
2010-09-24 13:52:35 -07:00
Kris McQueen
2a4ddac41a
Change getResponse() to return a ResponseObject so that the caller can choose how to serialize. This in in preparation for serializing the async commands to the database with class information and deserializing them into the ResponseObject itself when queryAsyncJobResult is called. Once the ResponseObject is deserialized, the proper string can be returned to the caller.
...
The previous behavior had the JSON response from the command embedded into the queryAsyncJobResult response as a string rather than a JSON object which prevented the client from being able to read the response. With this new behavior an actual JSON object should be returned which can then be parsed on the client side.
2010-09-23 17:34:28 -07:00
Kris McQueen
e31f89e6a9
Set up accountId in the AsyncJob since it's needed for proper validation when querying the job status.
2010-09-21 18:26:34 -07:00
Kris McQueen
3f6a438d92
Refactoring the AsyncJobManager to queue jobs appropriately if there is a need to synchronize execution on an object, e.g. a router. API developers can now call command.synchronizeCommand(String, Long) to force the command to be synchronized on a particular object type [the string arg] with a particular id [the long arg]. When synchronizeCommand() is invoked, an exception maybe thrown by the framework (AsyncCommandQueued exception) to force the business logic to abort. The command will then be queued and invoked at the appropriate time. The synchronizeCommand() is re-entrant and will be a no-op if the command has already been queued and is now ready for execution.
2010-09-16 19:05:06 -07:00
Kris McQueen
dbb2897626
Unexposed parameters can now be assigned to commands. This are for internal use of the command, and will be serialized/deserialized during execution/response phases, but will not be accepted as part of the API request. Also create a DB utility file for the API to use which delegates requests to the DAOs. Mostly this utility class will look up objects by ID, and it allows the removal of similar methods from ManagementServer, thereby reducing some of the clutter in ManagementServer.
2010-09-14 14:54:04 -07:00
Kris McQueen
f4caf145c3
Refactoring dispatching API commands from the scheduled async job. Instead of calling an executor, the dispatcher invokes the method on the manager directly. After the command is executed the response is serialized to the async job table so it can be queried later. Also serialize a response for async create commands that includes the id of the object being created.
2010-09-13 18:28:19 -07:00
Kris McQueen
a8112f65de
When using session based authentication, we now store the parameters in the session as part of the login processing, instead of returning those parameters so that the caller has to update the session. Authentication now throws an exception on failure and the caught exception is where the session is invalidated.
2010-09-13 17:04:11 -07:00
Kris McQueen
449d1f3acf
working through some compilation errors that have arisen due to all the API refactoring...
2010-09-13 14:46:23 -07:00
Alex Huang
b250b985ec
changes
2010-08-18 12:19:22 -07:00
Manuel Amador (Rudd-O)
ac730ec496
Branch 2.1.refactor committed
2010-08-11 09:13:42 -07:00
Manuel Amador (Rudd-O)
05c020e1f6
Source code committed
2010-08-11 09:13:29 -07:00