Develop for XenServer

Class: SM

A storage manager plugin

Fields for class: SM

Field Type Qualifier Description
capabilities string set RO/runtime Deprecated. capabilities of the SM plugin
configuration (string -> string) map RO/runtime names and descriptions of device config keys
copyright string RO/runtime Entity which owns the copyright of this plugin
driver_filename string RO/runtime filename of the storage driver
features (string -> int) map RO/runtime capabilities of the SM plugin, with capability version numbers
name_description string RO/runtime a notes field containing human-readable description
name_label string RO/runtime a human-readable name
other_config (string -> string) map RW additional configuration
required_api_version string RO/runtime Minimum SM API version required on the server
required_cluster_stack string set RO/runtime The storage plugin requires that one of these cluster stacks is configured and running.
type string RO/runtime SR.type
uuid string RO/runtime Unique identifier/object reference
vendor string RO/runtime Vendor who created this plugin
version string RO/runtime Version of the plugin

RPCs associated with class: SM

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given SM.

Signature:

void add_to_other_config (session ref session_ref, SM ref self, string key, string value)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object
string key Key to add
string value Value to add

Minimum Role: pool-operator

Return Type: void

RPC name: get_all

Overview:

Return a list of all the SMs known to the system.

Signature:

SM ref set get_all (session ref session_ref)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session

Minimum Role: read-only

Return Type: SM ref set

references to all objects

RPC name: get_all_records

Overview:

Return a map of SM references to SM records for all SMs known to the system.

Signature:

(SM ref -> SM record) map get_all_records (session ref session_ref)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session

Minimum Role: read-only

Return Type: (SM ref -> SM record) map

records of all objects

RPC name: get_by_name_label

Overview:

Get all the SM instances with the given label.

Signature:

SM ref set get_by_name_label (session ref session_ref, string label)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
string label label of object to return

Minimum Role: read-only

Return Type: SM ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the SM instance with the specified UUID.

Signature:

SM ref get_by_uuid (session ref session_ref, string uuid)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
string uuid UUID of object to return

Minimum Role: read-only

Return Type: SM ref

reference to the object

RPC name: get_capabilities

This message is deprecated.

Overview:

Get the capabilities field of the given SM.

Signature:

string set get_capabilities (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string set

value of the field

RPC name: get_configuration

Overview:

Get the configuration field of the given SM.

Signature:

(string -> string) map get_configuration (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: (string -> string) map

value of the field

Overview:

Get the copyright field of the given SM.

Signature:

string get_copyright (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_driver_filename

Overview:

Get the driver_filename field of the given SM.

Signature:

string get_driver_filename (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_features

Overview:

Get the features field of the given SM.

Signature:

(string -> int) map get_features (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: (string -> int) map

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given SM.

Signature:

string get_name_description (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given SM.

Signature:

string get_name_label (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given SM.

Signature:

(string -> string) map get_other_config (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given SM.

Signature:

SM record get_record (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: SM record

all fields from the object

RPC name: get_required_api_version

Overview:

Get the required_api_version field of the given SM.

Signature:

string get_required_api_version (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_required_cluster_stack

Overview:

Get the required_cluster_stack field of the given SM.

Signature:

string set get_required_cluster_stack (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string set

value of the field

RPC name: get_type

Overview:

Get the type field of the given SM.

Signature:

string get_type (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given SM.

Signature:

string get_uuid (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_vendor

Overview:

Get the vendor field of the given SM.

Signature:

string get_vendor (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_version

Overview:

Get the version field of the given SM.

Signature:

string get_version (session ref session_ref, SM ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given SM. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_ref, SM ref self, string key)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object
string key Key to remove

Minimum Role: pool-operator

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given SM.

Signature:

void set_other_config (session ref session_ref, SM ref self, (string -> string) map value)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
SM ref self reference to the object
(string -> string) map value New value to set

Minimum Role: pool-operator

Return Type: void