OpenNebula
Cloud API

org.opennebula.client.vnet
Class VirtualNetwork

java.lang.Object
  extended by org.opennebula.client.PoolElement
      extended by org.opennebula.client.vnet.VirtualNetwork

public class VirtualNetwork
extends PoolElement

This class represents an OpenNebula virtual network. It also offers static XML-RPC call wrappers.


Field Summary
 
Fields inherited from class org.opennebula.client.PoolElement
client, id, xml, xpath
 
Constructor Summary
  VirtualNetwork(int id, Client client)
          Creates a new virtual network representation.
protected VirtualNetwork(org.w3c.dom.Node xmlElement, Client client)
           
 
Method Summary
static OneResponse addAr(Client client, int id, java.lang.String template)
          Adds an Address Range to the VirtualNetwork
 OneResponse addAr(java.lang.String template)
          Adds an Address Range to the VirtualNetwork
static OneResponse allocate(Client client, java.lang.String description)
          Allocates a new virtual network in OpenNebula.
static OneResponse allocate(Client client, java.lang.String description, int clusterId)
          Allocates a new virtual network in OpenNebula.
 OneResponse chgrp(int gid)
          Changes the group
static OneResponse chmod(Client client, int id, int octet)
          Changes the permissions
static OneResponse chmod(Client client, int id, int owner_u, int owner_m, int owner_a, int group_u, int group_m, int group_a, int other_u, int other_m, int other_a)
          Changes the VirtualNetwork permissions
static OneResponse chmod(Client client, int id, java.lang.String octet)
          Changes the permissions
 OneResponse chmod(int octet)
          Changes the permissions
 OneResponse chmod(int owner_u, int owner_m, int owner_a, int group_u, int group_m, int group_a, int other_u, int other_m, int other_a)
          Changes the VirtualNetwork permissions
 OneResponse chmod(java.lang.String octet)
          Changes the permissions
static OneResponse chown(Client client, int id, int uid, int gid)
          Changes the owner/group
 OneResponse chown(int uid)
          Changes the owner
 OneResponse chown(int uid, int gid)
          Changes the owner/group
 OneResponse delete()
          Deletes the network from OpenNebula.
static OneResponse delete(Client client, int id)
          Deletes a network from OpenNebula.
static OneResponse free(Client client, int id, int arId)
          Removes an Address Range from the VirtualNetwork
 OneResponse free(int arId)
          Removes an Address Range from the VirtualNetwork
static OneResponse hold(Client client, int id, java.lang.String template)
          Holds a VirtualNetwork lease, marking it as used
 OneResponse hold(java.lang.String ip)
          Holds a VirtualNetwork lease, marking it as used
 OneResponse hold(java.lang.String ip, int arId)
          Holds a VirtualNetwork lease, marking it as used
 OneResponse info()
          Loads the xml representation of the virtual network.
static OneResponse info(Client client, int id)
          Retrieves the information of the given virtual network
 OneResponse publish()
          Publishes the virtual network.
 OneResponse publish(boolean publish)
          Publishes or unpublishes the virtual network.
static OneResponse publish(Client client, int id, boolean publish)
          Publishes or unpublishes a virtual network.
static OneResponse release(Client client, int id, java.lang.String template)
          Releases a VirtualNetwork lease on hold
 OneResponse release(java.lang.String ip)
          Releases a VirtualNetwork lease on hold
 OneResponse release(java.lang.String ip, int arId)
          Releases a VirtualNetwork lease on hold
static OneResponse rename(Client client, int id, java.lang.String name)
          Renames this VirtualNetwork
 OneResponse rename(java.lang.String name)
          Renames this VirtualNetwork
static OneResponse reserve(Client client, int id, java.lang.String template)
          Reserve a set of addresses from this virtual network
 OneResponse reserve(java.lang.String template)
          Reserve a set of addresses from this virtual network
static OneResponse rmAr(Client client, int id, int arId)
          Removes an Address Range from the VirtualNetwork
 OneResponse rmAr(int arId)
          Removes an Address Range from the VirtualNetwork
 OneResponse unpublish()
          Unpublishes the virtual network.
static OneResponse update(Client client, int id, java.lang.String new_template, boolean append)
          Replaces the VirtualNetwork template contents.
 OneResponse update(java.lang.String new_template)
          Replaces the VirtualNetwork template contents.
 OneResponse update(java.lang.String new_template, boolean append)
          Replaces the VirtualNetwork template contents.
static OneResponse updateAr(Client client, int id, java.lang.String template)
          Upates an Address Range from the VirtualNetwork
 OneResponse updateAr(java.lang.String template)
          Upates an Address Range from the VirtualNetwork
 
Methods inherited from class org.opennebula.client.PoolElement
chmod, chmod, chmod, getId, getName, gid, id, processInfo, state, uid, xpath
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VirtualNetwork

public VirtualNetwork(int id,
                      Client client)
Creates a new virtual network representation.

Parameters:
id - The virtual network id (nid) .
client - XML-RPC Client.

VirtualNetwork

protected VirtualNetwork(org.w3c.dom.Node xmlElement,
                         Client client)
See Also:
PoolElement
Method Detail

allocate

public static OneResponse allocate(Client client,
                                   java.lang.String description,
                                   int clusterId)
Allocates a new virtual network in OpenNebula.

Parameters:
client - XML-RPC Client.
description - A string containing the template of the virtual network.
clusterId - The cluster ID. If it is -1, this virtual network won't be added to any cluster.
Returns:
If successful the message contains the associated id generated for this virtual network.

allocate

public static OneResponse allocate(Client client,
                                   java.lang.String description)
Allocates a new virtual network in OpenNebula.

Parameters:
client - XML-RPC Client.
description - A string containing the template of the virtual network.
Returns:
If successful the message contains the associated id generated for this virtual network.

info

public static OneResponse info(Client client,
                               int id)
Retrieves the information of the given virtual network

Parameters:
client - XML-RPC Client.
id - the virtual network id (nid) for the network to retrieve the information from.
Returns:
If successful the message contains the string with the information returned by OpenNebula.

delete

public static OneResponse delete(Client client,
                                 int id)
Deletes a network from OpenNebula.

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
Returns:
A encapsulated response.

publish

public static OneResponse publish(Client client,
                                  int id,
                                  boolean publish)
Publishes or unpublishes a virtual network.

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
publish - True for publishing, false for unpublishing.
Returns:
If successful the message contains the image id.

addAr

public static OneResponse addAr(Client client,
                                int id,
                                java.lang.String template)
Adds an Address Range to the VirtualNetwork

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
template - AR to add, example: AR = [ TYPE = IP4, IP = 192.168.0.5, SIZE = 10 ]
Returns:
A encapsulated response.

rmAr

public static OneResponse rmAr(Client client,
                               int id,
                               int arId)
Removes an Address Range from the VirtualNetwork

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
arId - Id of the Address Range to remove
Returns:
A encapsulated response.

updateAr

public static OneResponse updateAr(Client client,
                                   int id,
                                   java.lang.String template)
Upates an Address Range from the VirtualNetwork

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
template - AR to update, example: AR = [ AR_ID = 3, TYPE = IP4, IP = 192.168.0.5, SIZE = 10 ]
Returns:
A encapsulated response.

hold

public static OneResponse hold(Client client,
                               int id,
                               java.lang.String template)
Holds a VirtualNetwork lease, marking it as used

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
template - Address to hold, examples:
      LEASES = [ IP = 192.168.0.5 ]
      LEASES = [ MAC = 02:00:0a:00:00:96 ]
      LEASES = [ IP = 192.168.0.5, AR_ID = 3 ]
Returns:
A encapsulated response.

release

public static OneResponse release(Client client,
                                  int id,
                                  java.lang.String template)
Releases a VirtualNetwork lease on hold

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
template - Address to release, examples:
      LEASES = [ IP = 192.168.0.5 ]
      LEASES = [ MAC = 02:00:0a:00:00:96 ]
      LEASES = [ IP = 192.168.0.5, AR_ID = 3 ]
Returns:
A encapsulated response.

chown

public static OneResponse chown(Client client,
                                int id,
                                int uid,
                                int gid)
Changes the owner/group

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
uid - The new owner user ID. Set it to -1 to leave the current one.
gid - The new group ID. Set it to -1 to leave the current one.
Returns:
If an error occurs the error message contains the reason.

chmod

public static OneResponse chmod(Client client,
                                int id,
                                int owner_u,
                                int owner_m,
                                int owner_a,
                                int group_u,
                                int group_m,
                                int group_a,
                                int other_u,
                                int other_m,
                                int other_a)
Changes the VirtualNetwork permissions

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
owner_u - 1 to allow, 0 deny, -1 do not change
owner_m - 1 to allow, 0 deny, -1 do not change
owner_a - 1 to allow, 0 deny, -1 do not change
group_u - 1 to allow, 0 deny, -1 do not change
group_m - 1 to allow, 0 deny, -1 do not change
group_a - 1 to allow, 0 deny, -1 do not change
other_u - 1 to allow, 0 deny, -1 do not change
other_m - 1 to allow, 0 deny, -1 do not change
other_a - 1 to allow, 0 deny, -1 do not change
Returns:
If an error occurs the error message contains the reason.

chmod

public static OneResponse chmod(Client client,
                                int id,
                                java.lang.String octet)
Changes the permissions

Parameters:
client - XML-RPC Client.
id - The id of the target object.
octet - Permissions octed , e.g. 640
Returns:
If an error occurs the error message contains the reason.

chmod

public static OneResponse chmod(Client client,
                                int id,
                                int octet)
Changes the permissions

Parameters:
client - XML-RPC Client.
id - The id of the target object.
octet - Permissions octed , e.g. 640
Returns:
If an error occurs the error message contains the reason.

update

public static OneResponse update(Client client,
                                 int id,
                                 java.lang.String new_template,
                                 boolean append)
Replaces the VirtualNetwork template contents.

Parameters:
client - XML-RPC Client.
id - The vnet id of the target vnet we want to modify.
new_template - New template contents.
append - True to append new attributes instead of replace the whole template
Returns:
If successful the message contains the vnet id.

rename

public static OneResponse rename(Client client,
                                 int id,
                                 java.lang.String name)
Renames this VirtualNetwork

Parameters:
client - XML-RPC Client.
id - The VirtualNetwork id of the target VirtualNetwork.
name - New name for the VirtualNetwork.
Returns:
If an error occurs the error message contains the reason.

reserve

public static OneResponse reserve(Client client,
                                  int id,
                                  java.lang.String template)
Reserve a set of addresses from this virtual network

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
template - of the reservation. Examples:
      SIZE  = 10

      SIZE  = 10
      AR_ID = 3
      NAME  = "new_network"

      SIZE  = 10
      IP    = 192.168.10.50
      NETWORK_ID = 9
Returns:
A encapsulated response.

free

public static OneResponse free(Client client,
                               int id,
                               int arId)
Removes an Address Range from the VirtualNetwork

Parameters:
client - XML-RPC Client.
id - The virtual network id (nid) of the target network.
arId - Id of the Address Range to remove
Returns:
A encapsulated response.

info

public OneResponse info()
Loads the xml representation of the virtual network. The info is also stored internally.

See Also:
info(Client, int)

delete

public OneResponse delete()
Deletes the network from OpenNebula.

Returns:
A encapsulated response.

publish

public OneResponse publish(boolean publish)
Publishes or unpublishes the virtual network.

Parameters:
publish - True for publishing, false for unpublishing.
Returns:
If successful the message contains the image id.

publish

public OneResponse publish()
Publishes the virtual network.

Returns:
If successful the message contains the image id.

unpublish

public OneResponse unpublish()
Unpublishes the virtual network.

Returns:
If successful the message contains the image id.

addAr

public OneResponse addAr(java.lang.String template)
Adds an Address Range to the VirtualNetwork

Parameters:
template - AR to add, example:
      AR = [
          TYPE = IP4,
          IP = 192.168.0.5,
          SIZE = 10 ]
Returns:
A encapsulated response.

rmAr

public OneResponse rmAr(int arId)
Removes an Address Range from the VirtualNetwork

Parameters:
arId - Id of the Address Range to remove
Returns:
A encapsulated response.

updateAr

public OneResponse updateAr(java.lang.String template)
Upates an Address Range from the VirtualNetwork

Parameters:
template - AR to update, example:
      AR = [
          AR_ID = 3,
          TYPE  = IP4,
          IP    = 192.168.0.5,
          SIZE  = 10 ]
Returns:
A encapsulated response.

hold

public OneResponse hold(java.lang.String ip)
Holds a VirtualNetwork lease, marking it as used

Parameters:
ip - IP or MAC to hold, e.g. "192.168.0.5", "02:00:0a:00:00:96"
Returns:
A encapsulated response.

hold

public OneResponse hold(java.lang.String ip,
                        int arId)
Holds a VirtualNetwork lease, marking it as used

Parameters:
ip - IP or MAC to hold, e.g. "192.168.0.5", "02:00:0a:00:00:96"
arId - Id of the Address Range to hold the lease from
Returns:
A encapsulated response.

release

public OneResponse release(java.lang.String ip)
Releases a VirtualNetwork lease on hold

Parameters:
ip - IP or MAC to hold, e.g. "192.168.0.5", "02:00:0a:00:00:96"
Returns:
A encapsulated response.

release

public OneResponse release(java.lang.String ip,
                           int arId)
Releases a VirtualNetwork lease on hold

Parameters:
ip - IP or MAC to hold, e.g. "192.168.0.5", "02:00:0a:00:00:96"
arId - Id of the Address Range to release the lease from
Returns:
A encapsulated response.

chown

public OneResponse chown(int uid,
                         int gid)
Changes the owner/group

Parameters:
uid - The new owner user ID. Set it to -1 to leave the current one.
gid - The new group ID. Set it to -1 to leave the current one.
Returns:
If an error occurs the error message contains the reason.

chown

public OneResponse chown(int uid)
Changes the owner

Parameters:
uid - The new owner user ID.
Returns:
If an error occurs the error message contains the reason.

chgrp

public OneResponse chgrp(int gid)
Changes the group

Parameters:
gid - The new group ID.
Returns:
If an error occurs the error message contains the reason.

chmod

public OneResponse chmod(int owner_u,
                         int owner_m,
                         int owner_a,
                         int group_u,
                         int group_m,
                         int group_a,
                         int other_u,
                         int other_m,
                         int other_a)
Changes the VirtualNetwork permissions

Parameters:
owner_u - 1 to allow, 0 deny, -1 do not change
owner_m - 1 to allow, 0 deny, -1 do not change
owner_a - 1 to allow, 0 deny, -1 do not change
group_u - 1 to allow, 0 deny, -1 do not change
group_m - 1 to allow, 0 deny, -1 do not change
group_a - 1 to allow, 0 deny, -1 do not change
other_u - 1 to allow, 0 deny, -1 do not change
other_m - 1 to allow, 0 deny, -1 do not change
other_a - 1 to allow, 0 deny, -1 do not change
Returns:
If an error occurs the error message contains the reason.

chmod

public OneResponse chmod(java.lang.String octet)
Changes the permissions

Parameters:
octet - Permissions octed , e.g. 640
Returns:
If an error occurs the error message contains the reason.

chmod

public OneResponse chmod(int octet)
Changes the permissions

Parameters:
octet - Permissions octed , e.g. 640
Returns:
If an error occurs the error message contains the reason.

update

public OneResponse update(java.lang.String new_template)
Replaces the VirtualNetwork template contents.

Parameters:
new_template - New template contents.
Returns:
If successful the message contains the vnet id.

update

public OneResponse update(java.lang.String new_template,
                          boolean append)
Replaces the VirtualNetwork template contents.

Parameters:
new_template - New template contents.
append - True to append new attributes instead of replace the whole template
Returns:
If successful the message contains the vnet id.

rename

public OneResponse rename(java.lang.String name)
Renames this VirtualNetwork

Parameters:
name - New name for the VirtualNetwork.
Returns:
If an error occurs the error message contains the reason.

reserve

public OneResponse reserve(java.lang.String template)
Reserve a set of addresses from this virtual network

Parameters:
template - of the reservation. Examples:
      SIZE  = 10

      SIZE  = 10
      AR_ID = 3
      NAME  = "new_network"

      SIZE  = 10
      IP    = 192.168.10.50
      NETWORK_ID = 9
Returns:
A encapsulated response.

free

public OneResponse free(int arId)
Removes an Address Range from the VirtualNetwork

Parameters:
arId - Id of the Address Range to remove
Returns:
A encapsulated response.

OpenNebula
Cloud API

Visit OpenNebula.org
Copyright 2002-2014 © OpenNebula Project (OpenNebula.org), C12G Labs.