Package org.opennebula.client.vm
Class VirtualMachinePool
- java.lang.Object
-
- org.opennebula.client.Pool
-
- org.opennebula.client.vm.VirtualMachinePool
-
- All Implemented Interfaces:
java.lang.Iterable<VirtualMachine>
public class VirtualMachinePool extends Pool implements java.lang.Iterable<VirtualMachine>
This class represents an OpenNebula VM pool. It also offers static XML-RPC call wrappers.
-
-
Field Summary
Fields Modifier and Type Field Description static int
ALL_VM
Flag for Virtual Machines in any state.static int
NOT_DONE
Flag for Virtual Machines in any state, except for DONE.-
Fields inherited from class org.opennebula.client.Pool
ALL, client, elementName, GROUP, infoMethod, MINE, MINE_GROUP, poolElements, xpath
-
-
Constructor Summary
Constructors Constructor Description VirtualMachinePool(Client client)
Creates a new Virtual Machine pool with the default filter flag value set toPool.MINE_GROUP
(Virtual Machines belonging to the connected user, and the ones in his group)VirtualMachinePool(Client client, int filter)
Creates a new Virtual Machine pool.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description OneResponse
accounting(int filter, int start_time, int end_time)
Returns the virtual machine history records.static OneResponse
accounting(Client client, int filter, int start_time, int end_time)
Returns the virtual machine history records.OneResponse
calculateshowback(int filter, int first_month, int first_year, int last_month, int last_year)
Processes all the history records, and stores the monthly cost for each VMstatic OneResponse
calculateshowback(Client client, int filter, int first_month, int first_year, int last_month, int last_year)
Processes all the history records, and stores the monthly cost for each VMPoolElement
factory(org.w3c.dom.Node node)
The factory method returns a suitable PoolElement object from an XML node.VirtualMachine
getById(int id)
Returns the Virtual Machine with the given Id from the pool.OneResponse
info()
Loads the xml representation of all or part of the Virtual Machines in the pool.OneResponse
info(int filter, int startId, int endId, int state)
Retrieves all or part of the Virtual Machines in the pool.static OneResponse
info(Client client, int filter)
Retrieves all or part of the Virtual Machines in the pool.static OneResponse
info(Client client, int filter, int startId, int endId, int state)
Retrieves all or part of the Virtual Machines in the pool.OneResponse
info_extended()
Loads the xml representation of all the Virtual Machines in the pool.static OneResponse
info_extended(Client client, int filter)
Retrieves all of the Virtual Machines in the pool.static OneResponse
info_extended(Client client, int vm_ids, boolean extended)
Retrieves all of the Virtual Machines in the vm_ids list.static OneResponse
info_search(Client client, int filter, int startId, int endId, int state, java.lang.String query)
Retrieves all or part of the Virtual Machines in the pool.OneResponse
infoAll()
Loads the xml representation of all the Virtual Machines in the pool.static OneResponse
infoAll(Client client)
Retrieves all the Virtual Machines in the pool.OneResponse
infoGroup()
Loads the xml representation of all the connected user's Virtual Machines and the ones in his group.static OneResponse
infoGroup(Client client)
Retrieves all the connected user's Virtual Machines and the ones in his group.OneResponse
infoMine()
Loads the xml representation of all the connected user's Virtual Machines.static OneResponse
infoMine(Client client)
Retrieves all the connected user's Virtual Machines.java.util.Iterator<VirtualMachine>
iterator()
OneResponse
monitoring(int filter)
Retrieves the monitoring data for all or part of the Virtual Machines in the pool.static OneResponse
monitoring(Client client, int filter)
Retrieves the monitoring data for all or part of the Virtual Machines in the pool.static OneResponse
monitoring(Client client, int filter, int num)
Retrieves the monitoring data for all or part of the Virtual Machines in the pool.OneResponse
showback(int filter, int first_month, int first_year, int last_month, int last_year)
Returns the virtual machine showback recordsstatic OneResponse
showback(Client client, int filter, int first_month, int first_year, int last_month, int last_year)
Returns the virtual machine showback records-
Methods inherited from class org.opennebula.client.Pool
getLength, info, info, info, infoAll, infoGroup, infoGroupPrimary, infoMine, item, processInfo, xmlrpcInfo
-
-
-
-
Field Detail
-
ALL_VM
public static final int ALL_VM
Flag for Virtual Machines in any state.- See Also:
- Constant Field Values
-
NOT_DONE
public static final int NOT_DONE
Flag for Virtual Machines in any state, except for DONE.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
VirtualMachinePool
public VirtualMachinePool(Client client)
Creates a new Virtual Machine pool with the default filter flag value set toPool.MINE_GROUP
(Virtual Machines belonging to the connected user, and the ones in his group)- Parameters:
client
- XML-RPC Client.- See Also:
VirtualMachinePool(Client, int)
-
VirtualMachinePool
public VirtualMachinePool(Client client, int filter)
Creates a new Virtual Machine pool.- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use by default in the methodinfo()
. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
-
-
Method Detail
-
factory
public PoolElement factory(org.w3c.dom.Node node)
Description copied from class:Pool
The factory method returns a suitable PoolElement object from an XML node. Each Pool must implement the corresponding factory method.
-
info
public static OneResponse info(Client client, int filter)
Retrieves all or part of the Virtual Machines in the pool.- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
info_extended
public static OneResponse info_extended(Client client, int filter)
Retrieves all of the Virtual Machines in the pool.- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
info_extended
public static OneResponse info_extended(Client client, int vm_ids, boolean extended)
Retrieves all of the Virtual Machines in the vm_ids list.- Parameters:
client
- XML-RPC Client.vm_ids
- Comma separated list of VM IDs.extended
- If true the extended body is retrieved.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
infoAll
public static OneResponse infoAll(Client client)
Retrieves all the Virtual Machines in the pool.- Parameters:
client
- XML-RPC Client.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
infoMine
public static OneResponse infoMine(Client client)
Retrieves all the connected user's Virtual Machines.- Parameters:
client
- XML-RPC Client.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
infoGroup
public static OneResponse infoGroup(Client client)
Retrieves all the connected user's Virtual Machines and the ones in his group.- Parameters:
client
- XML-RPC Client.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
info
public static OneResponse info(Client client, int filter, int startId, int endId, int state)
Retrieves all or part of the Virtual Machines in the pool. The Virtual Machines to retrieve can be also filtered by Id, specifying the first and last Id to include; and by state.- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
startId
- Lowest Id to retrieveendId
- Biggest Id to retrievestate
- Numeric state of the Virtual Machines wanted, or one ofALL_VM
orNOT_DONE
- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
info_search
public static OneResponse info_search(Client client, int filter, int startId, int endId, int state, java.lang.String query)
Retrieves all or part of the Virtual Machines in the pool. The Virtual Machines to retrieve can be also filtered by Id, specifying the first and last Id to include; and by state.- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
startId
- Lowest Id to retrieveendId
- Biggest Id to retrievestate
- Numeric state of the Virtual Machines wanted, or one ofALL_VM
orNOT_DONE
query
- query for FTS- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
monitoring
public static OneResponse monitoring(Client client, int filter)
Retrieves the monitoring data for all or part of the Virtual Machines in the pool.- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
monitoring
public static OneResponse monitoring(Client client, int filter, int num)
Retrieves the monitoring data for all or part of the Virtual Machines in the pool.- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
num
- : Retrieve monitor records in the last num seconds. 0 just the last record, -1 all records.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
accounting
public static OneResponse accounting(Client client, int filter, int start_time, int end_time)
Returns the virtual machine history records.- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
start_time
- : Start time for the time interval. Can be -1, in which case the time interval won't have a left boundary.end_time
- : End time for the time interval. Can be -1, in which case the time interval won't have a right boundary.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
showback
public static OneResponse showback(Client client, int filter, int first_month, int first_year, int last_month, int last_year)
Returns the virtual machine showback records- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
first_month
- First month for the time interval. January is 1. Can be -1, in which case the time interval won't have a left boundary.first_year
- First year for the time interval. Can be -1, in which case the time interval won't have a left boundary.last_month
- Last month for the time interval. January is 1. Can be -1, in which case the time interval won't have a right boundary.last_year
- Last year for the time interval. Can be -1, in which case the time interval won't have a right boundary.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
calculateshowback
public static OneResponse calculateshowback(Client client, int filter, int first_month, int first_year, int last_month, int last_year)
Processes all the history records, and stores the monthly cost for each VM- Parameters:
client
- XML-RPC Client.filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
first_month
- First month for the time interval. January is 1. Can be -1, in which case the time interval won't have a left boundary.first_year
- First year for the time interval. Can be -1, in which case the time interval won't have a left boundary.last_month
- Last month for the time interval. January is 1. Can be -1, in which case the time interval won't have a right boundary.last_year
- Last year for the time interval. Can be -1, in which case the time interval won't have a right boundary.- Returns:
- If an error occurs the error message contains the reason.
-
info
public OneResponse info()
Loads the xml representation of all or part of the Virtual Machines in the pool. The filter used is the one set in the constructor.- Overrides:
info
in classPool
- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
- See Also:
info(Client, int)
-
info_extended
public OneResponse info_extended()
Loads the xml representation of all the Virtual Machines in the pool. The filter used is the one set in the constructor.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
- See Also:
info(Client, int)
-
infoAll
public OneResponse infoAll()
Loads the xml representation of all the Virtual Machines in the pool.
-
infoMine
public OneResponse infoMine()
Loads the xml representation of all the connected user's Virtual Machines.
-
infoGroup
public OneResponse infoGroup()
Loads the xml representation of all the connected user's Virtual Machines and the ones in his group.
-
info
public OneResponse info(int filter, int startId, int endId, int state)
Retrieves all or part of the Virtual Machines in the pool. The Virtual Machines to retrieve can be also filtered by Id, specifying the first and last Id to include.- Parameters:
filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
startId
- Lowest Id to retrieveendId
- Biggest Id to retrievestate
- Numeric state of the Virtual Machines wanted- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
monitoring
public OneResponse monitoring(int filter)
Retrieves the monitoring data for all or part of the Virtual Machines in the pool.- Parameters:
filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
accounting
public OneResponse accounting(int filter, int start_time, int end_time)
Returns the virtual machine history records.- Parameters:
filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
start_time
- : Start time for the time interval. Can be -1, in which case the time interval won't have a left boundary.end_time
- : End time for the time interval. Can be -1, in which case the time interval won't have a right boundary.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
showback
public OneResponse showback(int filter, int first_month, int first_year, int last_month, int last_year)
Returns the virtual machine showback records- Parameters:
filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
first_month
- First month for the time interval. January is 1. Can be -1, in which case the time interval won't have a left boundary.first_year
- First year for the time interval. Can be -1, in which case the time interval won't have a left boundary.last_month
- Last month for the time interval. January is 1. Can be -1, in which case the time interval won't have a right boundary.last_year
- Last year for the time interval. Can be -1, in which case the time interval won't have a right boundary.- Returns:
- If successful the message contains the string with the information returned by OpenNebula.
-
calculateshowback
public OneResponse calculateshowback(int filter, int first_month, int first_year, int last_month, int last_year)
Processes all the history records, and stores the monthly cost for each VM- Parameters:
filter
- Filter flag to use. Possible values:Pool.ALL
: All Virtual MachinesPool.MINE
: Connected user's Virtual MachinesPool.MINE_GROUP
: Connected user's Virtual Machines, and the ones in his groupPool.GROUP
: User's primary group Virtual Machines- >= 0 UID User's Virtual Machines
first_month
- First month for the time interval. January is 1. Can be -1, in which case the time interval won't have a left boundary.first_year
- First year for the time interval. Can be -1, in which case the time interval won't have a left boundary.last_month
- Last month for the time interval. January is 1. Can be -1, in which case the time interval won't have a right boundary.last_year
- Last year for the time interval. Can be -1, in which case the time interval won't have a right boundary.- Returns:
- If an error occurs the error message contains the reason.
-
iterator
public java.util.Iterator<VirtualMachine> iterator()
- Specified by:
iterator
in interfacejava.lang.Iterable<VirtualMachine>
-
getById
public VirtualMachine getById(int id)
Returns the Virtual Machine with the given Id from the pool. If it is not found, then returns null. The methodinfo()
must be called before.
-
-