Class: OpenNebula::ImagePool

Inherits:
Pool show all
Defined in:
lib/OpenNebula/ImagePool.rb

Constant Summary

IMAGE_POOL_METHODS =
{
    :info => "imagepool.info"
}

Constants inherited from Pool

Pool::INFO_ALL, Pool::INFO_GROUP, Pool::INFO_MINE

Instance Method Summary (collapse)

Methods inherited from Pool

#each, #to_str

Methods inherited from XMLPool

#each_element

Methods inherited from XMLElement

#[], #attr, build_xml, #each, #each_xpath, #has_elements?, #initialize_xml, #name, #retrieve_elements, #template_like_str, #template_str, #text, #to_hash, #to_xml

Constructor Details

- (ImagePool) initialize(client, user_id = -1))

+client+ a Client object that represents a XML-RPC connection +user_id+ is to refer to a Pool with Images from that user



37
38
39
40
41
# File 'lib/OpenNebula/ImagePool.rb', line 37

def initialize(client, user_id=-1)
    super('IMAGE_POOL','IMAGE',client)

    @user_id  = user_id
end

Instance Method Details

- (Object) factory(element_xml)

Default Factory Method for the Pools



44
45
46
# File 'lib/OpenNebula/ImagePool.rb', line 44

def factory(element_xml)
    OpenNebula::Image.new(element_xml,@client)
end

- (Object) info(*args)

Retrieves all or part of the VirtualMachines in the pool.



53
54
55
56
57
58
59
60
# File 'lib/OpenNebula/ImagePool.rb', line 53

def info(*args)
    case args.size
        when 0
            info_filter(IMAGE_POOL_METHODS[:info],@user_id,-1,-1)
        when 3
            info_filter(IMAGE_POOL_METHODS[:info],args[0],args[1],args[2])
    end
end

- (Object) info_all



62
63
64
# File 'lib/OpenNebula/ImagePool.rb', line 62

def info_all()
    return super(IMAGE_POOL_METHODS[:info])
end

- (Object) info_group



70
71
72
# File 'lib/OpenNebula/ImagePool.rb', line 70

def info_group()
    return super(IMAGE_POOL_METHODS[:info])
end

- (Object) info_mine



66
67
68
# File 'lib/OpenNebula/ImagePool.rb', line 66

def info_mine()
    return super(IMAGE_POOL_METHODS[:info])
end