Why not adopt me?
NAME
VMware::vCloudDirector::Object - Module to contain an object!
VERSION
version 0.006
Attributes
api
A weak link to the API object to be used.
content
The object content. This is in a separate container so that partial objects passed can be inflated at a later stage without having to replace the object itself.
hash
A reference to the hash returned from the vCloud XML. Forces object inflation.
links
An array references to the links contained in this object. Forces object inflation.
id
The id attribute from the returned vCloud XML. Forces object inflation.
Methods
inflate
If this object is a partial object (ie taken from a link or partial chunk within a containing object), then this forces a refetch of the content from vCloud creating a fully populated object.
refetch
Forces a refetch of this object's content unconditionally.
find_links
Returns any links found that match the search criteria. The possible criteria are:-
- name
-
The name of the link
- type
-
The type of the link (short type, not full MIME type)
- rel
-
The rel of the link
The return value is a list of link objects.
fetch_links
As per "find_links" except that each link found is fetched and expanded up as an object.
build_sub_objects
Given a type (specifically a key used within the current object hash), grabs the descendants of that key and instantiates them as partial objects (they can then be inflated into full objects).
Due to the structure of the XML there will always be two layers, the inner named singular thing, and the outer named as the plural of thing. Hence this does magic with the language inflection module.
DELETE
Make a delete request to the URL of this object. Returns Objects. Failure will generate an exception. See "DELETE" in VMware::vCloudDirector::API.
GET
Make a get request to the URL of this object. Returns Objects. Failure will generate an exception. See "GET" in VMware::vCloudDirector::API.
POST
Make a post request with the specified payload to the URL of this object. Returns Objects. Failure will generate an exception. See "POST" in VMware::vCloudDirector::API.
PUT
Make a put request with the specified payload to the URL of this object. Returns Objects. Failure will generate an exception. See "PUT" in VMware::vCloudDirector::API.
AUTHOR
Nigel Metheringham <nigelm@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by Nigel Metheringham.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.