~ubuntu-branches/ubuntu/utopic/xen/utopic

« back to all changes in this revision

Viewing changes to docs/xen-api/xenapi-datamodel.tex

  • Committer: Bazaar Package Importer
  • Author(s): Bastian Blank
  • Date: 2010-05-06 15:47:38 UTC
  • mto: (1.3.1) (15.1.1 sid) (4.1.1 experimental)
  • mto: This revision was merged to the branch mainline in revision 3.
  • Revision ID: james.westby@ubuntu.com-20100506154738-agoz0rlafrh1fnq7
Tags: upstream-4.0.0
ImportĀ upstreamĀ versionĀ 4.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
%
 
2
% Copyright (c) 2006-2007 XenSource, Inc.
 
3
% Copyright (c) 2009 flonatel GmbH & Co. KG
 
4
%
 
5
% Permission is granted to copy, distribute and/or modify this document under
 
6
% the terms of the GNU Free Documentation License, Version 1.2 or any later
 
7
% version published by the Free Software Foundation; with no Invariant
 
8
% Sections, no Front-Cover Texts and no Back-Cover Texts.  A copy of the
 
9
% license is included in the section entitled
 
10
% "GNU Free Documentation License" or the file fdl.tex.
 
11
%
 
12
% Authors: Ewan Mellor, Richard Sharp, Dave Scott, Jon Harrop.
 
13
% Contributor: Andreas Florath
 
14
%
 
15
 
 
16
\chapter{API Reference}
 
17
\label{api-reference}
 
18
 
 
19
 
 
20
\section{Classes}
 
21
The following classes are defined:
 
22
 
 
23
\begin{center}\begin{tabular}{|lp{10cm}|}
 
24
\hline
 
25
Name & Description \\
 
26
\hline
 
27
{\tt session} & A session \\
 
28
{\tt task} & A long-running asynchronous task \\
 
29
{\tt event} & Asynchronous event registration and handling \\
 
30
{\tt VM} & A virtual machine (or 'guest') \\
 
31
{\tt VM\_metrics} & The metrics associated with a VM \\
 
32
{\tt VM\_guest\_metrics} & The metrics reported by the guest (as opposed to inferred from outside) \\
 
33
{\tt host} & A physical host \\
 
34
{\tt host\_metrics} & The metrics associated with a host \\
 
35
{\tt host\_cpu} & A physical CPU \\
 
36
{\tt network} & A virtual network \\
 
37
{\tt VIF} & A virtual network interface \\
 
38
{\tt VIF\_metrics} & The metrics associated with a virtual network device \\
 
39
{\tt PIF} & A physical network interface (note separate VLANs are represented as several PIFs) \\
 
40
{\tt PIF\_metrics} & The metrics associated with a physical network interface \\
 
41
{\tt SR} & A storage repository \\
 
42
{\tt VDI} & A virtual disk image \\
 
43
{\tt VBD} & A virtual block device \\
 
44
{\tt VBD\_metrics} & The metrics associated with a virtual block device \\
 
45
{\tt PBD} & The physical block devices through which hosts access SRs \\
 
46
{\tt crashdump} & A VM crashdump \\
 
47
{\tt VTPM} & A virtual TPM device \\
 
48
{\tt console} & A console \\
 
49
{\tt DPCI} & A pass-through PCI device \\
 
50
{\tt PPCI} & A physical PCI device \\
 
51
{\tt DSCSI} & A half-virtualized SCSI device \\
 
52
{\tt DSCSI\_HBA} & A half-virtualized SCSI host bus adapter \\
 
53
{\tt PSCSI} & A physical SCSI device \\
 
54
{\tt PSCSI\_HBA} & A physical SCSI host bus adapter \\
 
55
{\tt user} & A user of the system \\
 
56
{\tt debug} & A basic class for testing \\
 
57
{\tt XSPolicy} & A class for handling Xen Security Policies \\
 
58
{\tt ACMPolicy} & A class for handling ACM-type policies \\
 
59
\hline
 
60
\end{tabular}\end{center}
 
61
\section{Relationships Between Classes}
 
62
Fields that are bound together are shown in the following table: 
 
63
\begin{center}\begin{tabular}{|ll|l|}
 
64
\hline
 
65
{\em object.field} & {\em object.field} & {\em relationship} \\
 
66
 
 
67
\hline
 
68
host.PBDs & PBD.host & many-to-one\\
 
69
SR.PBDs & PBD.SR & many-to-one\\
 
70
VDI.VBDs & VBD.VDI & many-to-one\\
 
71
VDI.crash\_dumps & crashdump.VDI & many-to-one\\
 
72
VBD.VM & VM.VBDs & one-to-many\\
 
73
crashdump.VM & VM.crash\_dumps & one-to-many\\
 
74
VIF.VM & VM.VIFs & one-to-many\\
 
75
VIF.network & network.VIFs & one-to-many\\
 
76
PIF.host & host.PIFs & one-to-many\\
 
77
PIF.network & network.PIFs & one-to-many\\
 
78
SR.VDIs & VDI.SR & many-to-one\\
 
79
VTPM.VM & VM.VTPMs & one-to-many\\
 
80
console.VM & VM.consoles & one-to-many\\
 
81
DPCI.VM & VM.DPCIs & one-to-many\\
 
82
PPCI.host & host.PPCIs & one-to-many\\
 
83
DSCSI.VM & VM.DSCSIs & one-to-many\\
 
84
DSCSI.HBA & DSCSI\_HBA.DSCSIs & one-to-many\\
 
85
DSCSI\_HBA.VM & VM.DSCSI\_HBAs & one-to-many\\
 
86
PSCSI.host & host.PSCSIs & one-to-many\\
 
87
PSCSI.HBA & PSCSI\_HBA.PSCSIs & one-to-many\\
 
88
PSCSI\_HBA.host & host.PSCSI\_HBAs & one-to-many\\
 
89
host.resident\_VMs & VM.resident\_on & many-to-one\\
 
90
host.host\_CPUs & host\_cpu.host & many-to-one\\
 
91
\hline
 
92
\end{tabular}\end{center}
 
93
 
 
94
The following represents bound fields (as specified above) diagrammatically, using crows-foot notation to specify one-to-one, one-to-many or many-to-many
 
95
                   relationships:
 
96
 
 
97
\begin{center}\resizebox{0.8\textwidth}{!}{
 
98
\includegraphics{xenapi-datamodel-graph}
 
99
}\end{center}
 
100
\
 
101
\subsection{List of bound fields}
 
102
\section{Types}
 
103
\subsection{Primitives}
 
104
The following primitive types are used to specify methods and fields in the API Reference:
 
105
 
 
106
\begin{center}\begin{tabular}{|ll|}
 
107
\hline
 
108
Type & Description \\
 
109
\hline
 
110
String & text strings \\
 
111
Int    & 64-bit integers \\
 
112
Float & IEEE double-precision floating-point numbers \\
 
113
Bool   & boolean \\
 
114
DateTime & date and timestamp \\
 
115
Ref (object name) & reference to an object of class name \\
 
116
\hline
 
117
\end{tabular}\end{center}
 
118
\subsection{Higher order types}
 
119
The following type constructors are used:
 
120
 
 
121
\begin{center}\begin{tabular}{|ll|}
 
122
\hline
 
123
Type & Description \\
 
124
\hline
 
125
List (t) & an arbitrary-length list of elements of type t \\
 
126
Map (a $\rightarrow$ b) & a table mapping values of type a to values of type b \\
 
127
\hline
 
128
\end{tabular}\end{center}
 
129
\subsection{Enumeration types}
 
130
The following enumeration types are used:
 
131
 
 
132
\begin{longtable}{|ll|}
 
133
\hline
 
134
{\tt enum event\_operation} & \\
 
135
\hline
 
136
\hspace{0.5cm}{\tt add} & An object has been created \\
 
137
\hspace{0.5cm}{\tt del} & An object has been deleted \\
 
138
\hspace{0.5cm}{\tt mod} & An object has been modified \\
 
139
\hline
 
140
\end{longtable}
 
141
 
 
142
\vspace{1cm}
 
143
\begin{longtable}{|ll|}
 
144
\hline
 
145
{\tt enum console\_protocol} & \\
 
146
\hline
 
147
\hspace{0.5cm}{\tt vt100} & VT100 terminal \\
 
148
\hspace{0.5cm}{\tt rfb} & Remote FrameBuffer protocol (as used in VNC) \\
 
149
\hspace{0.5cm}{\tt rdp} & Remote Desktop Protocol \\
 
150
\hline
 
151
\end{longtable}
 
152
 
 
153
\vspace{1cm}
 
154
\begin{longtable}{|ll|}
 
155
\hline
 
156
{\tt enum vdi\_type} & \\
 
157
\hline
 
158
\hspace{0.5cm}{\tt system} & a disk that may be replaced on upgrade \\
 
159
\hspace{0.5cm}{\tt user} & a disk that is always preserved on upgrade \\
 
160
\hspace{0.5cm}{\tt ephemeral} & a disk that may be reformatted on upgrade \\
 
161
\hspace{0.5cm}{\tt suspend} & a disk that stores a suspend image \\
 
162
\hspace{0.5cm}{\tt crashdump} & a disk that stores VM crashdump information \\
 
163
\hline
 
164
\end{longtable}
 
165
 
 
166
\vspace{1cm}
 
167
\begin{longtable}{|ll|}
 
168
\hline
 
169
{\tt enum vm\_power\_state} & \\
 
170
\hline
 
171
\hspace{0.5cm}{\tt Halted} & Halted \\
 
172
\hspace{0.5cm}{\tt Paused} & Paused \\
 
173
\hspace{0.5cm}{\tt Running} & Running \\
 
174
\hspace{0.5cm}{\tt Suspended} & Suspended \\
 
175
\hspace{0.5cm}{\tt Crashed} & Crashed \\
 
176
\hspace{0.5cm}{\tt Unknown} & Some other unknown state \\
 
177
\hline
 
178
\end{longtable}
 
179
 
 
180
\vspace{1cm}
 
181
\begin{longtable}{|ll|}
 
182
\hline
 
183
{\tt enum task\_allowed\_operations} & \\
 
184
\hline
 
185
\hspace{0.5cm}{\tt Cancel} & Cancel \\
 
186
\hline
 
187
\end{longtable}
 
188
 
 
189
\vspace{1cm}
 
190
\begin{longtable}{|ll|}
 
191
\hline
 
192
{\tt enum task\_status\_type} & \\
 
193
\hline
 
194
\hspace{0.5cm}{\tt pending} & task is in progress \\
 
195
\hspace{0.5cm}{\tt success} & task was completed successfully \\
 
196
\hspace{0.5cm}{\tt failure} & task has failed \\
 
197
\hspace{0.5cm}{\tt cancelling} & task is being cancelled \\
 
198
\hspace{0.5cm}{\tt cancelled} & task has been cancelled \\
 
199
\hline
 
200
\end{longtable}
 
201
 
 
202
\vspace{1cm}
 
203
\begin{longtable}{|ll|}
 
204
\hline
 
205
{\tt enum on\_normal\_exit} & \\
 
206
\hline
 
207
\hspace{0.5cm}{\tt destroy} & destroy the VM state \\
 
208
\hspace{0.5cm}{\tt restart} & restart the VM \\
 
209
\hline
 
210
\end{longtable}
 
211
 
 
212
\vspace{1cm}
 
213
\begin{longtable}{|ll|}
 
214
\hline
 
215
{\tt enum on\_crash\_behaviour} & \\
 
216
\hline
 
217
\hspace{0.5cm}{\tt destroy} & destroy the VM state \\
 
218
\hspace{0.5cm}{\tt coredump\_and\_destroy} & record a coredump and then destroy the VM state \\
 
219
\hspace{0.5cm}{\tt restart} & restart the VM \\
 
220
\hspace{0.5cm}{\tt coredump\_and\_restart} & record a coredump and then restart the VM \\
 
221
\hspace{0.5cm}{\tt preserve} & leave the crashed VM as-is \\
 
222
\hspace{0.5cm}{\tt rename\_restart} & rename the crashed VM and start a new copy \\
 
223
\hline
 
224
\end{longtable}
 
225
 
 
226
\vspace{1cm}
 
227
\begin{longtable}{|ll|}
 
228
\hline
 
229
{\tt enum vbd\_mode} & \\
 
230
\hline
 
231
\hspace{0.5cm}{\tt RO} & disk is mounted read-only \\
 
232
\hspace{0.5cm}{\tt RW} & disk is mounted read-write \\
 
233
\hline
 
234
\end{longtable}
 
235
 
 
236
\vspace{1cm}
 
237
\begin{longtable}{|ll|}
 
238
\hline
 
239
{\tt enum vbd\_type} & \\
 
240
\hline
 
241
\hspace{0.5cm}{\tt CD} & VBD will appear to guest as CD \\
 
242
\hspace{0.5cm}{\tt Disk} & VBD will appear to guest as disk \\
 
243
\hline
 
244
\end{longtable}
 
245
 
 
246
\vspace{1cm}
 
247
\newpage
 
248
 
 
249
\section{Error Handling}
 
250
When a low-level transport error occurs, or a request is malformed at the HTTP
 
251
or XML-RPC level, the server may send an XML-RPC Fault response, or the client
 
252
may simulate the same.  The client must be prepared to handle these errors,
 
253
though they may be treated as fatal.  On the wire, these are transmitted in a
 
254
form similar to this:
 
255
 
 
256
\begin{verbatim}
 
257
    <methodResponse>
 
258
      <fault>
 
259
        <value>
 
260
          <struct>
 
261
            <member>
 
262
                <name>faultCode</name>
 
263
                <value><int>-1</int></value>
 
264
              </member>
 
265
              <member>
 
266
                <name>faultString</name>
 
267
                <value><string>Malformed request</string></value>
 
268
            </member>
 
269
          </struct>
 
270
        </value>
 
271
      </fault>
 
272
    </methodResponse>
 
273
\end{verbatim}
 
274
 
 
275
All other failures are reported with a more structured error response, to
 
276
allow better automatic response to failures, proper internationalisation of
 
277
any error message, and easier debugging.  On the wire, these are transmitted
 
278
like this:
 
279
 
 
280
\begin{verbatim}
 
281
    <struct>
 
282
      <member>
 
283
        <name>Status</name>
 
284
        <value>Failure</value>
 
285
      </member>
 
286
      <member>
 
287
        <name>ErrorDescription</name>
 
288
        <value>
 
289
          <array>
 
290
            <data>
 
291
              <value>MAP_DUPLICATE_KEY</value>
 
292
              <value>Customer</value>
 
293
              <value>eSpeil Inc.</value>
 
294
              <value>eSpeil Incorporated</value>
 
295
            </data>
 
296
          </array>
 
297
        </value>
 
298
      </member>
 
299
    </struct>
 
300
\end{verbatim}
 
301
 
 
302
Note that {\tt ErrorDescription} value is an array of string values. The
 
303
first element of the array is an error code; the remainder of the array are
 
304
strings representing error parameters relating to that code.  In this case,
 
305
the client has attempted to add the mapping {\tt Customer $\rightarrow$
 
306
eSpiel Incorporated} to a Map, but it already contains the mapping
 
307
{\tt Customer $\rightarrow$ eSpiel Inc.}, and so the request has failed.
 
308
 
 
309
The reference below lists each possible error returned by each method.
 
310
As well as the errors explicitly listed, any method may return low-level
 
311
errors as described above, or any of the following generic errors:
 
312
 
 
313
\begin{itemize}
 
314
\item HANDLE\_INVALID
 
315
\item INTERNAL\_ERROR
 
316
\item MAP\_DUPLICATE\_KEY
 
317
\item MESSAGE\_METHOD\_UNKNOWN
 
318
\item MESSAGE\_PARAMETER\_COUNT\_MISMATCH
 
319
\item OPERATION\_NOT\_ALLOWED
 
320
\item PERMISSION\_DENIED
 
321
\item SESSION\_INVALID
 
322
\end{itemize}
 
323
 
 
324
Each possible error code is documented in the following section.
 
325
 
 
326
\subsection{Error Codes}
 
327
 
 
328
\subsubsection{HANDLE\_INVALID}
 
329
 
 
330
You gave an invalid handle.  The object may have recently been deleted. 
 
331
The class parameter gives the type of reference given, and the handle
 
332
parameter echoes the bad value given.
 
333
 
 
334
\vspace{0.3cm}
 
335
{\bf Signature:}
 
336
\begin{verbatim}HANDLE_INVALID(class, handle)\end{verbatim}
 
337
\begin{center}\rule{10em}{0.1pt}\end{center}
 
338
 
 
339
\subsubsection{INTERNAL\_ERROR}
 
340
 
 
341
The server failed to handle your request, due to an internal error.  The
 
342
given message may give details useful for debugging the problem.
 
343
 
 
344
\vspace{0.3cm}
 
345
{\bf Signature:}
 
346
\begin{verbatim}INTERNAL_ERROR(message)\end{verbatim}
 
347
\begin{center}\rule{10em}{0.1pt}\end{center}
 
348
 
 
349
\subsubsection{MAP\_DUPLICATE\_KEY}
 
350
 
 
351
You tried to add a key-value pair to a map, but that key is already there. 
 
352
The key, current value, and the new value that you tried to set are all
 
353
echoed.
 
354
 
 
355
\vspace{0.3cm}
 
356
{\bf Signature:}
 
357
\begin{verbatim}MAP_DUPLICATE_KEY(key, current value, new value)\end{verbatim}
 
358
\begin{center}\rule{10em}{0.1pt}\end{center}
 
359
 
 
360
\subsubsection{MESSAGE\_METHOD\_UNKNOWN}
 
361
 
 
362
You tried to call a method that does not exist.  The method name that you
 
363
used is echoed.
 
364
 
 
365
\vspace{0.3cm}
 
366
{\bf Signature:}
 
367
\begin{verbatim}MESSAGE_METHOD_UNKNOWN(method)\end{verbatim}
 
368
\begin{center}\rule{10em}{0.1pt}\end{center}
 
369
 
 
370
\subsubsection{MESSAGE\_PARAMETER\_COUNT\_MISMATCH}
 
371
 
 
372
You tried to call a method with the incorrect number of parameters.  The
 
373
fully-qualified method name that you used, and the number of received and
 
374
expected parameters are returned.
 
375
 
 
376
\vspace{0.3cm}
 
377
{\bf Signature:}
 
378
\begin{verbatim}MESSAGE_PARAMETER_COUNT_MISMATCH(method, expected, received)\end{verbatim}
 
379
\begin{center}\rule{10em}{0.1pt}\end{center}
 
380
 
 
381
\subsubsection{NETWORK\_ALREADY\_CONNECTED}
 
382
 
 
383
You tried to create a PIF, but the network you tried to attach it to is
 
384
already attached to some other PIF, and so the creation failed.
 
385
 
 
386
\vspace{0.3cm}
 
387
{\bf Signature:}
 
388
\begin{verbatim}NETWORK_ALREADY_CONNECTED(network, connected PIF)\end{verbatim}
 
389
\begin{center}\rule{10em}{0.1pt}\end{center}
 
390
 
 
391
\subsubsection{OPERATION\_NOT\_ALLOWED}
 
392
 
 
393
You attempted an operation that was not allowed.
 
394
 
 
395
\vspace{0.3cm}
 
396
No parameters.
 
397
\begin{center}\rule{10em}{0.1pt}\end{center}
 
398
 
 
399
\subsubsection{PERMISSION\_DENIED}
 
400
 
 
401
You do not have the required permissions to perform the operation.
 
402
 
 
403
\vspace{0.3cm}
 
404
No parameters.
 
405
\begin{center}\rule{10em}{0.1pt}\end{center}
 
406
 
 
407
\subsubsection{PIF\_IS\_PHYSICAL}
 
408
 
 
409
You tried to destroy a PIF, but it represents an aspect of the physical
 
410
host configuration, and so cannot be destroyed.  The parameter echoes the
 
411
PIF handle you gave.
 
412
 
 
413
\vspace{0.3cm}
 
414
{\bf Signature:}
 
415
\begin{verbatim}PIF_IS_PHYSICAL(PIF)\end{verbatim}
 
416
\begin{center}\rule{10em}{0.1pt}\end{center}
 
417
 
 
418
\subsubsection{SESSION\_AUTHENTICATION\_FAILED}
 
419
 
 
420
The credentials given by the user are incorrect, so access has been denied,
 
421
and you have not been issued a session handle.
 
422
 
 
423
\vspace{0.3cm}
 
424
No parameters.
 
425
\begin{center}\rule{10em}{0.1pt}\end{center}
 
426
 
 
427
\subsubsection{SESSION\_INVALID}
 
428
 
 
429
You gave an invalid session handle.  It may have been invalidated by a
 
430
server restart, or timed out.  You should get a new session handle, using
 
431
one of the session.login\_ calls.  This error does not invalidate the
 
432
current connection.  The handle parameter echoes the bad value given.
 
433
 
 
434
\vspace{0.3cm}
 
435
{\bf Signature:}
 
436
\begin{verbatim}SESSION_INVALID(handle)\end{verbatim}
 
437
\begin{center}\rule{10em}{0.1pt}\end{center}
 
438
 
 
439
\subsubsection{SESSION\_NOT\_REGISTERED}
 
440
 
 
441
This session is not registered to receive events.  You must call
 
442
event.register before event.next.  The session handle you are using is
 
443
echoed.
 
444
 
 
445
\vspace{0.3cm}
 
446
{\bf Signature:}
 
447
\begin{verbatim}SESSION_NOT_REGISTERED(handle)\end{verbatim}
 
448
\begin{center}\rule{10em}{0.1pt}\end{center}
 
449
 
 
450
\subsubsection{VALUE\_NOT\_SUPPORTED}
 
451
 
 
452
You attempted to set a value that is not supported by this implementation. 
 
453
The fully-qualified field name and the value that you tried to set are
 
454
returned.  Also returned is a developer-only diagnostic reason.
 
455
 
 
456
\vspace{0.3cm}
 
457
{\bf Signature:}
 
458
\begin{verbatim}VALUE_NOT_SUPPORTED(field, value, reason)\end{verbatim}
 
459
\begin{center}\rule{10em}{0.1pt}\end{center}
 
460
 
 
461
\subsubsection{VLAN\_TAG\_INVALID}
 
462
 
 
463
You tried to create a VLAN, but the tag you gave was invalid -- it must be
 
464
between 0 and 4095.  The parameter echoes the VLAN tag you gave.
 
465
 
 
466
\vspace{0.3cm}
 
467
{\bf Signature:}
 
468
\begin{verbatim}VLAN_TAG_INVALID(VLAN)\end{verbatim}
 
469
\begin{center}\rule{10em}{0.1pt}\end{center}
 
470
 
 
471
\subsubsection{VM\_BAD\_POWER\_STATE}
 
472
 
 
473
You attempted an operation on a VM that was not in an appropriate power
 
474
state at the time; for example, you attempted to start a VM that was
 
475
already running.  The parameters returned are the VM's handle, and the
 
476
expected and actual VM state at the time of the call.
 
477
 
 
478
\vspace{0.3cm}
 
479
{\bf Signature:}
 
480
\begin{verbatim}VM_BAD_POWER_STATE(vm, expected, actual)\end{verbatim}
 
481
\begin{center}\rule{10em}{0.1pt}\end{center}
 
482
 
 
483
\subsubsection{VM\_HVM\_REQUIRED}
 
484
 
 
485
HVM is required for this operation
 
486
 
 
487
\vspace{0.3cm}
 
488
{\bf Signature:}
 
489
\begin{verbatim}VM_HVM_REQUIRED(vm)\end{verbatim}
 
490
\begin{center}\rule{10em}{0.1pt}\end{center}
 
491
 
 
492
\subsubsection{SECURITY\_ERROR}
 
493
 
 
494
A security error occurred. The parameter provides the xen security
 
495
error code and a message describing the error.
 
496
 
 
497
\vspace{0.3cm}
 
498
{\bf Signature:}
 
499
\begin{verbatim}SECURITY_ERROR(xserr, message)\end{verbatim}
 
500
\begin{center}\rule{10em}{0.1pt}\end{center}
 
501
 
 
502
 
 
503
\newpage
 
504
\section{Class: session}
 
505
\subsection{Fields for class: session}
 
506
\begin{longtable}{|lllp{0.38\textwidth}|}
 
507
\hline
 
508
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf session} \\
 
509
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
510
session.}} \\
 
511
\hline
 
512
Quals & Field & Type & Description \\
 
513
\hline
 
514
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
515
$\mathit{RO}_\mathit{run}$ &  {\tt this\_host} & host ref & Currently connected host \\
 
516
$\mathit{RO}_\mathit{run}$ &  {\tt this\_user} & user ref & Currently connected user \\
 
517
$\mathit{RO}_\mathit{run}$ &  {\tt last\_active} & int & Timestamp for last time session was active \\
 
518
\hline
 
519
\end{longtable}
 
520
\subsection{RPCs associated with class: session}
 
521
\subsubsection{RPC name:~login\_with\_password}
 
522
 
 
523
{\bf Overview:} 
 
524
Attempt to authenticate the user, returning a session\_id if successful.
 
525
 
 
526
 \noindent {\bf Signature:} 
 
527
\begin{verbatim} (session ref) login_with_password (string uname, string pwd)\end{verbatim}
 
528
 
 
529
 
 
530
\noindent{\bf Arguments:}
 
531
 
 
532
 
 
533
\vspace{0.3cm}
 
534
\begin{tabular}{|c|c|p{7cm}|}
 
535
 \hline
 
536
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
537
{\tt string } & uname & Username for login. \\ \hline 
 
538
 
 
539
{\tt string } & pwd & Password for login. \\ \hline 
 
540
 
 
541
\end{tabular}
 
542
 
 
543
\vspace{0.3cm}
 
544
 
 
545
 \noindent {\bf Return Type:} 
 
546
{\tt 
 
547
session ref
 
548
}
 
549
 
 
550
 
 
551
ID of newly created session
 
552
 
 
553
\vspace{0.3cm}
 
554
 
 
555
\noindent{\bf Possible Error Codes:} {\tt SESSION\_AUTHENTICATION\_FAILED}
 
556
 
 
557
\vspace{0.3cm}
 
558
\vspace{0.3cm}
 
559
\vspace{0.3cm}
 
560
\subsubsection{RPC name:~logout}
 
561
 
 
562
{\bf Overview:} 
 
563
Log out of a session.
 
564
 
 
565
 \noindent {\bf Signature:} 
 
566
\begin{verbatim} void logout (session_id s)\end{verbatim}
 
567
 
 
568
 
 
569
\vspace{0.3cm}
 
570
 
 
571
 \noindent {\bf Return Type:} 
 
572
{\tt 
 
573
void
 
574
}
 
575
 
 
576
 
 
577
 
 
578
\vspace{0.3cm}
 
579
\vspace{0.3cm}
 
580
\vspace{0.3cm}
 
581
\subsubsection{RPC name:~get\_uuid}
 
582
 
 
583
{\bf Overview:} 
 
584
Get the uuid field of the given session.
 
585
 
 
586
 \noindent {\bf Signature:} 
 
587
\begin{verbatim} string get_uuid (session_id s, session ref self)\end{verbatim}
 
588
 
 
589
 
 
590
\noindent{\bf Arguments:}
 
591
 
 
592
 
 
593
\vspace{0.3cm}
 
594
\begin{tabular}{|c|c|p{7cm}|}
 
595
 \hline
 
596
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
597
{\tt session ref } & self & reference to the object \\ \hline 
 
598
 
 
599
\end{tabular}
 
600
 
 
601
\vspace{0.3cm}
 
602
 
 
603
 \noindent {\bf Return Type:} 
 
604
{\tt 
 
605
string
 
606
}
 
607
 
 
608
 
 
609
value of the field
 
610
\vspace{0.3cm}
 
611
\vspace{0.3cm}
 
612
\vspace{0.3cm}
 
613
\subsubsection{RPC name:~get\_this\_host}
 
614
 
 
615
{\bf Overview:} 
 
616
Get the this\_host field of the given session.
 
617
 
 
618
 \noindent {\bf Signature:} 
 
619
\begin{verbatim} (host ref) get_this_host (session_id s, session ref self)\end{verbatim}
 
620
 
 
621
 
 
622
\noindent{\bf Arguments:}
 
623
 
 
624
 
 
625
\vspace{0.3cm}
 
626
\begin{tabular}{|c|c|p{7cm}|}
 
627
 \hline
 
628
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
629
{\tt session ref } & self & reference to the object \\ \hline 
 
630
 
 
631
\end{tabular}
 
632
 
 
633
\vspace{0.3cm}
 
634
 
 
635
 \noindent {\bf Return Type:} 
 
636
{\tt 
 
637
host ref
 
638
}
 
639
 
 
640
 
 
641
value of the field
 
642
\vspace{0.3cm}
 
643
\vspace{0.3cm}
 
644
\vspace{0.3cm}
 
645
\subsubsection{RPC name:~get\_this\_user}
 
646
 
 
647
{\bf Overview:} 
 
648
Get the this\_user field of the given session.
 
649
 
 
650
 \noindent {\bf Signature:} 
 
651
\begin{verbatim} (user ref) get_this_user (session_id s, session ref self)\end{verbatim}
 
652
 
 
653
 
 
654
\noindent{\bf Arguments:}
 
655
 
 
656
 
 
657
\vspace{0.3cm}
 
658
\begin{tabular}{|c|c|p{7cm}|}
 
659
 \hline
 
660
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
661
{\tt session ref } & self & reference to the object \\ \hline 
 
662
 
 
663
\end{tabular}
 
664
 
 
665
\vspace{0.3cm}
 
666
 
 
667
 \noindent {\bf Return Type:} 
 
668
{\tt 
 
669
user ref
 
670
}
 
671
 
 
672
 
 
673
value of the field
 
674
\vspace{0.3cm}
 
675
\vspace{0.3cm}
 
676
\vspace{0.3cm}
 
677
\subsubsection{RPC name:~get\_last\_active}
 
678
 
 
679
{\bf Overview:} 
 
680
Get the last\_active field of the given session.
 
681
 
 
682
 \noindent {\bf Signature:} 
 
683
\begin{verbatim} int get_last_active (session_id s, session ref self)\end{verbatim}
 
684
 
 
685
 
 
686
\noindent{\bf Arguments:}
 
687
 
 
688
 
 
689
\vspace{0.3cm}
 
690
\begin{tabular}{|c|c|p{7cm}|}
 
691
 \hline
 
692
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
693
{\tt session ref } & self & reference to the object \\ \hline 
 
694
 
 
695
\end{tabular}
 
696
 
 
697
\vspace{0.3cm}
 
698
 
 
699
 \noindent {\bf Return Type:} 
 
700
{\tt 
 
701
int
 
702
}
 
703
 
 
704
 
 
705
value of the field
 
706
\vspace{0.3cm}
 
707
\vspace{0.3cm}
 
708
\vspace{0.3cm}
 
709
\subsubsection{RPC name:~get\_by\_uuid}
 
710
 
 
711
{\bf Overview:} 
 
712
Get a reference to the session instance with the specified UUID.
 
713
 
 
714
 \noindent {\bf Signature:} 
 
715
\begin{verbatim} (session ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
716
 
 
717
 
 
718
\noindent{\bf Arguments:}
 
719
 
 
720
 
 
721
\vspace{0.3cm}
 
722
\begin{tabular}{|c|c|p{7cm}|}
 
723
 \hline
 
724
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
725
{\tt string } & uuid & UUID of object to return \\ \hline 
 
726
 
 
727
\end{tabular}
 
728
 
 
729
\vspace{0.3cm}
 
730
 
 
731
 \noindent {\bf Return Type:} 
 
732
{\tt 
 
733
session ref
 
734
}
 
735
 
 
736
 
 
737
reference to the object
 
738
\vspace{0.3cm}
 
739
\vspace{0.3cm}
 
740
\vspace{0.3cm}
 
741
\subsubsection{RPC name:~get\_record}
 
742
 
 
743
{\bf Overview:} 
 
744
Get a record containing the current state of the given session.
 
745
 
 
746
 \noindent {\bf Signature:} 
 
747
\begin{verbatim} (session record) get_record (session_id s, session ref self)\end{verbatim}
 
748
 
 
749
 
 
750
\noindent{\bf Arguments:}
 
751
 
 
752
 
 
753
\vspace{0.3cm}
 
754
\begin{tabular}{|c|c|p{7cm}|}
 
755
 \hline
 
756
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
757
{\tt session ref } & self & reference to the object \\ \hline 
 
758
 
 
759
\end{tabular}
 
760
 
 
761
\vspace{0.3cm}
 
762
 
 
763
 \noindent {\bf Return Type:} 
 
764
{\tt 
 
765
session record
 
766
}
 
767
 
 
768
 
 
769
all fields from the object
 
770
\vspace{0.3cm}
 
771
\vspace{0.3cm}
 
772
\vspace{0.3cm}
 
773
 
 
774
\vspace{1cm}
 
775
\newpage
 
776
\section{Class: task}
 
777
\subsection{Fields for class: task}
 
778
\begin{longtable}{|lllp{0.38\textwidth}|}
 
779
\hline
 
780
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf task} \\
 
781
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
782
long-running asynchronous task.}} \\
 
783
\hline
 
784
Quals & Field & Type & Description \\
 
785
\hline
 
786
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
787
$\mathit{RO}_\mathit{run}$ &  {\tt name/label} & string & a human-readable name \\
 
788
$\mathit{RO}_\mathit{run}$ &  {\tt name/description} & string & a notes field containg human-readable description \\
 
789
$\mathit{RO}_\mathit{run}$ &  {\tt status} & task\_status\_type & current status of the task \\
 
790
$\mathit{RO}_\mathit{run}$ &  {\tt session} & session ref & the session that created the task \\
 
791
$\mathit{RO}_\mathit{run}$ &  {\tt progress} & int & if the task is still pending, this field contains the estimated percentage complete (0-100). If task has completed (successfully or unsuccessfully) this should be 100. \\
 
792
$\mathit{RO}_\mathit{run}$ &  {\tt type} & string & if the task has completed successfully, this field contains the type of the encoded result (i.e. name of the class whose reference is in the result field). Undefined otherwise. \\
 
793
$\mathit{RO}_\mathit{run}$ &  {\tt result} & string & if the task has completed successfully, this field contains the result value (either Void or an object reference). Undefined otherwise. \\
 
794
$\mathit{RO}_\mathit{run}$ &  {\tt error\_info} & string Set & if the task has failed, this field contains the set of associated error strings. Undefined otherwise. \\
 
795
$\mathit{RO}_\mathit{run}$ &  {\tt allowed\_operations} & (task\_allowed\_operations) Set & Operations allowed on this task \\
 
796
\hline
 
797
\end{longtable}
 
798
\subsection{RPCs associated with class: task}
 
799
\subsubsection{RPC name:~cancel}
 
800
 
 
801
{\bf Overview:} 
 
802
Cancel this task.  If task.allowed\_operations does not contain Cancel,
 
803
then this will fail with OPERATION\_NOT\_ALLOWED.  The task will show the
 
804
status 'cancelling', and you should continue to check its status until it
 
805
shows 'cancelled'.  There is no guarantee as to the time within which this
 
806
task will be cancelled.
 
807
 
 
808
 \noindent {\bf Signature:} 
 
809
\begin{verbatim} void cancel (session_id s, task ref task)\end{verbatim}
 
810
 
 
811
 
 
812
\noindent{\bf Arguments:}
 
813
 
 
814
 
 
815
\vspace{0.3cm}
 
816
\begin{tabular}{|c|c|p{7cm}|}
 
817
 \hline
 
818
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
819
{\tt task ref } & task & The task \\ \hline 
 
820
 
 
821
\end{tabular}
 
822
 
 
823
\vspace{0.3cm}
 
824
 
 
825
 \noindent {\bf Return Type:} 
 
826
{\tt 
 
827
void
 
828
}
 
829
 
 
830
 
 
831
 
 
832
\vspace{0.3cm}
 
833
 
 
834
\noindent{\bf Possible Error Codes:} {\tt OPERATION\_NOT\_ALLOWED}
 
835
 
 
836
\vspace{0.6cm}
 
837
\subsubsection{RPC name:~get\_all}
 
838
 
 
839
{\bf Overview:} 
 
840
Return a list of all the tasks known to the system.
 
841
 
 
842
 \noindent {\bf Signature:} 
 
843
\begin{verbatim} ((task ref) Set) get_all (session_id s)\end{verbatim}
 
844
 
 
845
 
 
846
\vspace{0.3cm}
 
847
 
 
848
 \noindent {\bf Return Type:} 
 
849
{\tt 
 
850
(task ref) Set
 
851
}
 
852
 
 
853
 
 
854
references to all objects
 
855
\vspace{0.3cm}
 
856
\vspace{0.3cm}
 
857
\vspace{0.3cm}
 
858
\subsubsection{RPC name:~get\_uuid}
 
859
 
 
860
{\bf Overview:} 
 
861
Get the uuid field of the given task.
 
862
 
 
863
 \noindent {\bf Signature:} 
 
864
\begin{verbatim} string get_uuid (session_id s, task ref self)\end{verbatim}
 
865
 
 
866
 
 
867
\noindent{\bf Arguments:}
 
868
 
 
869
 
 
870
\vspace{0.3cm}
 
871
\begin{tabular}{|c|c|p{7cm}|}
 
872
 \hline
 
873
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
874
{\tt task ref } & self & reference to the object \\ \hline 
 
875
 
 
876
\end{tabular}
 
877
 
 
878
\vspace{0.3cm}
 
879
 
 
880
 \noindent {\bf Return Type:} 
 
881
{\tt 
 
882
string
 
883
}
 
884
 
 
885
 
 
886
value of the field
 
887
\vspace{0.3cm}
 
888
\vspace{0.3cm}
 
889
\vspace{0.3cm}
 
890
\subsubsection{RPC name:~get\_name\_label}
 
891
 
 
892
{\bf Overview:} 
 
893
Get the name/label field of the given task.
 
894
 
 
895
 \noindent {\bf Signature:} 
 
896
\begin{verbatim} string get_name_label (session_id s, task ref self)\end{verbatim}
 
897
 
 
898
 
 
899
\noindent{\bf Arguments:}
 
900
 
 
901
 
 
902
\vspace{0.3cm}
 
903
\begin{tabular}{|c|c|p{7cm}|}
 
904
 \hline
 
905
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
906
{\tt task ref } & self & reference to the object \\ \hline 
 
907
 
 
908
\end{tabular}
 
909
 
 
910
\vspace{0.3cm}
 
911
 
 
912
 \noindent {\bf Return Type:} 
 
913
{\tt 
 
914
string
 
915
}
 
916
 
 
917
 
 
918
value of the field
 
919
\vspace{0.3cm}
 
920
\vspace{0.3cm}
 
921
\vspace{0.3cm}
 
922
\subsubsection{RPC name:~get\_name\_description}
 
923
 
 
924
{\bf Overview:} 
 
925
Get the name/description field of the given task.
 
926
 
 
927
 \noindent {\bf Signature:} 
 
928
\begin{verbatim} string get_name_description (session_id s, task ref self)\end{verbatim}
 
929
 
 
930
 
 
931
\noindent{\bf Arguments:}
 
932
 
 
933
 
 
934
\vspace{0.3cm}
 
935
\begin{tabular}{|c|c|p{7cm}|}
 
936
 \hline
 
937
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
938
{\tt task ref } & self & reference to the object \\ \hline 
 
939
 
 
940
\end{tabular}
 
941
 
 
942
\vspace{0.3cm}
 
943
 
 
944
 \noindent {\bf Return Type:} 
 
945
{\tt 
 
946
string
 
947
}
 
948
 
 
949
 
 
950
value of the field
 
951
\vspace{0.3cm}
 
952
\vspace{0.3cm}
 
953
\vspace{0.3cm}
 
954
\subsubsection{RPC name:~get\_status}
 
955
 
 
956
{\bf Overview:} 
 
957
Get the status field of the given task.
 
958
 
 
959
 \noindent {\bf Signature:} 
 
960
\begin{verbatim} (task_status_type) get_status (session_id s, task ref self)\end{verbatim}
 
961
 
 
962
 
 
963
\noindent{\bf Arguments:}
 
964
 
 
965
 
 
966
\vspace{0.3cm}
 
967
\begin{tabular}{|c|c|p{7cm}|}
 
968
 \hline
 
969
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
970
{\tt task ref } & self & reference to the object \\ \hline 
 
971
 
 
972
\end{tabular}
 
973
 
 
974
\vspace{0.3cm}
 
975
 
 
976
 \noindent {\bf Return Type:} 
 
977
{\tt 
 
978
task\_status\_type
 
979
}
 
980
 
 
981
 
 
982
value of the field
 
983
\vspace{0.3cm}
 
984
\vspace{0.3cm}
 
985
\vspace{0.3cm}
 
986
\subsubsection{RPC name:~get\_session}
 
987
 
 
988
{\bf Overview:} 
 
989
Get the session field of the given task.
 
990
 
 
991
 \noindent {\bf Signature:} 
 
992
\begin{verbatim} (session ref) get_session (session_id s, task ref self)\end{verbatim}
 
993
 
 
994
 
 
995
\noindent{\bf Arguments:}
 
996
 
 
997
 
 
998
\vspace{0.3cm}
 
999
\begin{tabular}{|c|c|p{7cm}|}
 
1000
 \hline
 
1001
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1002
{\tt task ref } & self & reference to the object \\ \hline 
 
1003
 
 
1004
\end{tabular}
 
1005
 
 
1006
\vspace{0.3cm}
 
1007
 
 
1008
 \noindent {\bf Return Type:} 
 
1009
{\tt 
 
1010
session ref
 
1011
}
 
1012
 
 
1013
 
 
1014
value of the field
 
1015
\vspace{0.3cm}
 
1016
\vspace{0.3cm}
 
1017
\vspace{0.3cm}
 
1018
\subsubsection{RPC name:~get\_progress}
 
1019
 
 
1020
{\bf Overview:} 
 
1021
Get the progress field of the given task.
 
1022
 
 
1023
 \noindent {\bf Signature:} 
 
1024
\begin{verbatim} int get_progress (session_id s, task ref self)\end{verbatim}
 
1025
 
 
1026
 
 
1027
\noindent{\bf Arguments:}
 
1028
 
 
1029
 
 
1030
\vspace{0.3cm}
 
1031
\begin{tabular}{|c|c|p{7cm}|}
 
1032
 \hline
 
1033
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1034
{\tt task ref } & self & reference to the object \\ \hline 
 
1035
 
 
1036
\end{tabular}
 
1037
 
 
1038
\vspace{0.3cm}
 
1039
 
 
1040
 \noindent {\bf Return Type:} 
 
1041
{\tt 
 
1042
int
 
1043
}
 
1044
 
 
1045
 
 
1046
value of the field
 
1047
\vspace{0.3cm}
 
1048
\vspace{0.3cm}
 
1049
\vspace{0.3cm}
 
1050
\subsubsection{RPC name:~get\_type}
 
1051
 
 
1052
{\bf Overview:} 
 
1053
Get the type field of the given task.
 
1054
 
 
1055
 \noindent {\bf Signature:} 
 
1056
\begin{verbatim} string get_type (session_id s, task ref self)\end{verbatim}
 
1057
 
 
1058
 
 
1059
\noindent{\bf Arguments:}
 
1060
 
 
1061
 
 
1062
\vspace{0.3cm}
 
1063
\begin{tabular}{|c|c|p{7cm}|}
 
1064
 \hline
 
1065
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1066
{\tt task ref } & self & reference to the object \\ \hline 
 
1067
 
 
1068
\end{tabular}
 
1069
 
 
1070
\vspace{0.3cm}
 
1071
 
 
1072
 \noindent {\bf Return Type:} 
 
1073
{\tt 
 
1074
string
 
1075
}
 
1076
 
 
1077
 
 
1078
value of the field
 
1079
\vspace{0.3cm}
 
1080
\vspace{0.3cm}
 
1081
\vspace{0.3cm}
 
1082
\subsubsection{RPC name:~get\_result}
 
1083
 
 
1084
{\bf Overview:} 
 
1085
Get the result field of the given task.
 
1086
 
 
1087
 \noindent {\bf Signature:} 
 
1088
\begin{verbatim} string get_result (session_id s, task ref self)\end{verbatim}
 
1089
 
 
1090
 
 
1091
\noindent{\bf Arguments:}
 
1092
 
 
1093
 
 
1094
\vspace{0.3cm}
 
1095
\begin{tabular}{|c|c|p{7cm}|}
 
1096
 \hline
 
1097
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1098
{\tt task ref } & self & reference to the object \\ \hline 
 
1099
 
 
1100
\end{tabular}
 
1101
 
 
1102
\vspace{0.3cm}
 
1103
 
 
1104
 \noindent {\bf Return Type:} 
 
1105
{\tt 
 
1106
string
 
1107
}
 
1108
 
 
1109
 
 
1110
value of the field
 
1111
\vspace{0.3cm}
 
1112
\vspace{0.3cm}
 
1113
\vspace{0.3cm}
 
1114
\subsubsection{RPC name:~get\_error\_info}
 
1115
 
 
1116
{\bf Overview:} 
 
1117
Get the error\_info field of the given task.
 
1118
 
 
1119
 \noindent {\bf Signature:} 
 
1120
\begin{verbatim} (string Set) get_error_info (session_id s, task ref self)\end{verbatim}
 
1121
 
 
1122
 
 
1123
\noindent{\bf Arguments:}
 
1124
 
 
1125
 
 
1126
\vspace{0.3cm}
 
1127
\begin{tabular}{|c|c|p{7cm}|}
 
1128
 \hline
 
1129
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1130
{\tt task ref } & self & reference to the object \\ \hline 
 
1131
 
 
1132
\end{tabular}
 
1133
 
 
1134
\vspace{0.3cm}
 
1135
 
 
1136
 \noindent {\bf Return Type:} 
 
1137
{\tt 
 
1138
string Set
 
1139
}
 
1140
 
 
1141
 
 
1142
value of the field
 
1143
\vspace{0.3cm}
 
1144
\vspace{0.3cm}
 
1145
\vspace{0.3cm}
 
1146
\subsubsection{RPC name:~get\_allowed\_operations}
 
1147
 
 
1148
{\bf Overview:} 
 
1149
Get the allowed\_operations field of the given task.
 
1150
 
 
1151
 \noindent {\bf Signature:} 
 
1152
\begin{verbatim} ((task_allowed_operations) Set) get_allowed_operations (session_id s, task ref self)\end{verbatim}
 
1153
 
 
1154
 
 
1155
\noindent{\bf Arguments:}
 
1156
 
 
1157
 
 
1158
\vspace{0.3cm}
 
1159
\begin{tabular}{|c|c|p{7cm}|}
 
1160
 \hline
 
1161
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1162
{\tt task ref } & self & reference to the object \\ \hline 
 
1163
 
 
1164
\end{tabular}
 
1165
 
 
1166
\vspace{0.3cm}
 
1167
 
 
1168
 \noindent {\bf Return Type:} 
 
1169
{\tt 
 
1170
(task\_allowed\_operations) Set
 
1171
}
 
1172
 
 
1173
 
 
1174
value of the field
 
1175
\vspace{0.3cm}
 
1176
\vspace{0.3cm}
 
1177
\vspace{0.3cm}
 
1178
\subsubsection{RPC name:~get\_by\_uuid}
 
1179
 
 
1180
{\bf Overview:} 
 
1181
Get a reference to the task instance with the specified UUID.
 
1182
 
 
1183
 \noindent {\bf Signature:} 
 
1184
\begin{verbatim} (task ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
1185
 
 
1186
 
 
1187
\noindent{\bf Arguments:}
 
1188
 
 
1189
 
 
1190
\vspace{0.3cm}
 
1191
\begin{tabular}{|c|c|p{7cm}|}
 
1192
 \hline
 
1193
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1194
{\tt string } & uuid & UUID of object to return \\ \hline 
 
1195
 
 
1196
\end{tabular}
 
1197
 
 
1198
\vspace{0.3cm}
 
1199
 
 
1200
 \noindent {\bf Return Type:} 
 
1201
{\tt 
 
1202
task ref
 
1203
}
 
1204
 
 
1205
 
 
1206
reference to the object
 
1207
\vspace{0.3cm}
 
1208
\vspace{0.3cm}
 
1209
\vspace{0.3cm}
 
1210
\subsubsection{RPC name:~get\_record}
 
1211
 
 
1212
{\bf Overview:} 
 
1213
Get a record containing the current state of the given task.
 
1214
 
 
1215
 \noindent {\bf Signature:} 
 
1216
\begin{verbatim} (task record) get_record (session_id s, task ref self)\end{verbatim}
 
1217
 
 
1218
 
 
1219
\noindent{\bf Arguments:}
 
1220
 
 
1221
 
 
1222
\vspace{0.3cm}
 
1223
\begin{tabular}{|c|c|p{7cm}|}
 
1224
 \hline
 
1225
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1226
{\tt task ref } & self & reference to the object \\ \hline 
 
1227
 
 
1228
\end{tabular}
 
1229
 
 
1230
\vspace{0.3cm}
 
1231
 
 
1232
 \noindent {\bf Return Type:} 
 
1233
{\tt 
 
1234
task record
 
1235
}
 
1236
 
 
1237
 
 
1238
all fields from the object
 
1239
\vspace{0.3cm}
 
1240
\vspace{0.3cm}
 
1241
\vspace{0.3cm}
 
1242
\subsubsection{RPC name:~get\_by\_name\_label}
 
1243
 
 
1244
{\bf Overview:} 
 
1245
Get all the task instances with the given label.
 
1246
 
 
1247
 \noindent {\bf Signature:} 
 
1248
\begin{verbatim} ((task ref) Set) get_by_name_label (session_id s, string label)\end{verbatim}
 
1249
 
 
1250
 
 
1251
\noindent{\bf Arguments:}
 
1252
 
 
1253
 
 
1254
\vspace{0.3cm}
 
1255
\begin{tabular}{|c|c|p{7cm}|}
 
1256
 \hline
 
1257
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1258
{\tt string } & label & label of object to return \\ \hline 
 
1259
 
 
1260
\end{tabular}
 
1261
 
 
1262
\vspace{0.3cm}
 
1263
 
 
1264
 \noindent {\bf Return Type:} 
 
1265
{\tt 
 
1266
(task ref) Set
 
1267
}
 
1268
 
 
1269
 
 
1270
references to objects with match names
 
1271
\vspace{0.3cm}
 
1272
\vspace{0.3cm}
 
1273
\vspace{0.3cm}
 
1274
 
 
1275
\vspace{1cm}
 
1276
\newpage
 
1277
\section{Class: event}
 
1278
\subsection{Fields for class: event}
 
1279
\begin{longtable}{|lllp{0.38\textwidth}|}
 
1280
\hline
 
1281
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf event} \\
 
1282
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em
 
1283
Asynchronous event registration and handling.}} \\
 
1284
\hline
 
1285
Quals & Field & Type & Description \\
 
1286
\hline
 
1287
$\mathit{RO}_\mathit{ins}$ &  {\tt id} & int & An ID, monotonically increasing, and local to the current session \\
 
1288
$\mathit{RO}_\mathit{ins}$ &  {\tt timestamp} & datetime & The time at which the event occurred \\
 
1289
$\mathit{RO}_\mathit{ins}$ &  {\tt class} & string & The name of the class of the object that changed \\
 
1290
$\mathit{RO}_\mathit{ins}$ &  {\tt operation} & event\_operation & The operation that was performed \\
 
1291
$\mathit{RO}_\mathit{ins}$ &  {\tt ref} & string & A reference to the object that changed \\
 
1292
$\mathit{RO}_\mathit{ins}$ &  {\tt obj\_uuid} & string & The uuid of the object that changed \\
 
1293
\hline
 
1294
\end{longtable}
 
1295
\subsection{RPCs associated with class: event}
 
1296
\subsubsection{RPC name:~register}
 
1297
 
 
1298
{\bf Overview:} 
 
1299
Registers this session with the event system.  Specifying the empty list
 
1300
will register for all classes.
 
1301
 
 
1302
 \noindent {\bf Signature:} 
 
1303
\begin{verbatim} void register (session_id s, string Set classes)\end{verbatim}
 
1304
 
 
1305
 
 
1306
\noindent{\bf Arguments:}
 
1307
 
 
1308
 
 
1309
\vspace{0.3cm}
 
1310
\begin{tabular}{|c|c|p{7cm}|}
 
1311
 \hline
 
1312
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1313
{\tt string Set } & classes & register for events for the indicated classes \\ \hline 
 
1314
 
 
1315
\end{tabular}
 
1316
 
 
1317
\vspace{0.3cm}
 
1318
 
 
1319
 \noindent {\bf Return Type:} 
 
1320
{\tt 
 
1321
void
 
1322
}
 
1323
 
 
1324
 
 
1325
 
 
1326
\vspace{0.3cm}
 
1327
\vspace{0.3cm}
 
1328
\vspace{0.3cm}
 
1329
\subsubsection{RPC name:~unregister}
 
1330
 
 
1331
{\bf Overview:} 
 
1332
Unregisters this session with the event system.
 
1333
 
 
1334
 \noindent {\bf Signature:} 
 
1335
\begin{verbatim} void unregister (session_id s, string Set classes)\end{verbatim}
 
1336
 
 
1337
 
 
1338
\noindent{\bf Arguments:}
 
1339
 
 
1340
 
 
1341
\vspace{0.3cm}
 
1342
\begin{tabular}{|c|c|p{7cm}|}
 
1343
 \hline
 
1344
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1345
{\tt string Set } & classes & remove this session's registration for the indicated classes \\ \hline 
 
1346
 
 
1347
\end{tabular}
 
1348
 
 
1349
\vspace{0.3cm}
 
1350
 
 
1351
 \noindent {\bf Return Type:} 
 
1352
{\tt 
 
1353
void
 
1354
}
 
1355
 
 
1356
 
 
1357
 
 
1358
\vspace{0.3cm}
 
1359
\vspace{0.3cm}
 
1360
\vspace{0.3cm}
 
1361
\subsubsection{RPC name:~next}
 
1362
 
 
1363
{\bf Overview:} 
 
1364
Blocking call which returns a (possibly empty) batch of events.
 
1365
 
 
1366
 \noindent {\bf Signature:} 
 
1367
\begin{verbatim} ((event record) Set) next (session_id s)\end{verbatim}
 
1368
 
 
1369
 
 
1370
\vspace{0.3cm}
 
1371
 
 
1372
 \noindent {\bf Return Type:} 
 
1373
{\tt 
 
1374
(event record) Set
 
1375
}
 
1376
 
 
1377
 
 
1378
the batch of events
 
1379
\vspace{0.3cm}
 
1380
 
 
1381
\noindent{\bf Possible Error Codes:} {\tt SESSION\_NOT\_REGISTERED}
 
1382
 
 
1383
\vspace{0.6cm}
 
1384
 
 
1385
\vspace{1cm}
 
1386
\newpage
 
1387
\section{Class: VM}
 
1388
\subsection{Fields for class: VM}
 
1389
\begin{longtable}{|llp{0.21\textwidth}p{0.33\textwidth}|}
 
1390
\hline
 
1391
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VM} \\
 
1392
\multicolumn{4}{|l|}{\parbox{11cm}{\em Description: A
 
1393
virtual machine (or 'guest').}} \\
 
1394
\hline
 
1395
Quals & Field & Type & Description \\
 
1396
\hline
 
1397
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
1398
$\mathit{RO}_\mathit{run}$ &  {\tt power\_state} & vm\_power\_state & Current power state of the machine \\
 
1399
$\mathit{RW}$ &  {\tt name/label} & string & a human-readable name \\
 
1400
$\mathit{RW}$ &  {\tt name/description} & string & a notes field containg human-readable description \\
 
1401
$\mathit{RW}$ &  {\tt user\_version} & int & a user version number for this machine \\
 
1402
$\mathit{RW}$ &  {\tt is\_a\_template} & bool & true if this is a template. Template VMs can never be started, they are used only for cloning other VMs \\
 
1403
$\mathit{RW}$ &  {\tt auto\_power\_on} & bool & true if this VM should be started automatically after host boot \\
 
1404
$\mathit{RO}_\mathit{run}$ &  {\tt suspend\_VDI} & VDI ref & The VDI that a suspend image is stored on. (Only has meaning if VM is currently suspended) \\
 
1405
$\mathit{RO}_\mathit{run}$ &  {\tt resident\_on} & host ref & the host the VM is currently resident on \\
 
1406
$\mathit{RW}$ &  {\tt memory/static\_max} & int & Statically-set (i.e. absolute) maximum (bytes) \\
 
1407
$\mathit{RW}$ &  {\tt memory/dynamic\_max} & int & Dynamic maximum (bytes) \\
 
1408
$\mathit{RW}$ &  {\tt memory/dynamic\_min} & int & Dynamic minimum (bytes) \\
 
1409
$\mathit{RW}$ &  {\tt memory/static\_min} & int & Statically-set (i.e. absolute) minimum (bytes) \\
 
1410
$\mathit{RW}$ &  {\tt VCPUs/params} & (string $\rightarrow$ string) Map & configuration parameters for the selected VCPU policy \\
 
1411
$\mathit{RW}$ &  {\tt VCPUs/max} & int & Max number of VCPUs \\
 
1412
$\mathit{RW}$ &  {\tt VCPUs/at\_startup} & int & Boot number of VCPUs \\
 
1413
$\mathit{RW}$ &  {\tt actions/after\_shutdown} & on\_normal\_exit & action to take after the guest has shutdown itself \\
 
1414
$\mathit{RW}$ &  {\tt actions/after\_reboot} & on\_normal\_exit & action to take after the guest has rebooted itself \\
 
1415
$\mathit{RW}$ &  {\tt actions/after\_crash} & on\_crash\_behaviour & action to take if the guest crashes \\
 
1416
$\mathit{RO}_\mathit{run}$ &  {\tt consoles} & (console ref) Set & virtual console devices \\
 
1417
$\mathit{RO}_\mathit{run}$ &  {\tt VIFs} & (VIF ref) Set & virtual network interfaces \\
 
1418
$\mathit{RO}_\mathit{run}$ &  {\tt VBDs} & (VBD ref) Set & virtual block devices \\
 
1419
$\mathit{RO}_\mathit{run}$ &  {\tt crash\_dumps} & (crashdump ref) Set & crash dumps associated with this VM \\
 
1420
$\mathit{RO}_\mathit{run}$ &  {\tt VTPMs} & (VTPM ref) Set & virtual TPMs \\
 
1421
$\mathit{RO}_\mathit{run}$ &  {\tt DPCIs} & (DPCI ref) Set & pass-through PCI devices \\
 
1422
$\mathit{RO}_\mathit{run}$ &  {\tt DSCSIs} & (DSCSI ref) Set & half-virtualized SCSI devices \\
 
1423
$\mathit{RO}_\mathit{run}$ &  {\tt DSCSI\_HBAs} & (DSCSI\_HBA ref) Set & half-virtualized SCSI host bus adapters \\
 
1424
$\mathit{RW}$ &  {\tt PV/bootloader} & string & name of or path to bootloader \\
 
1425
$\mathit{RW}$ &  {\tt PV/kernel} & string & URI of kernel \\
 
1426
$\mathit{RW}$ &  {\tt PV/ramdisk} & string & URI of initrd \\
 
1427
$\mathit{RW}$ &  {\tt PV/args} & string & kernel command-line arguments \\
 
1428
$\mathit{RW}$ &  {\tt PV/bootloader\_args} & string & miscellaneous arguments for the bootloader \\
 
1429
$\mathit{RW}$ &  {\tt HVM/boot\_policy} & string & HVM boot policy \\
 
1430
$\mathit{RW}$ &  {\tt HVM/boot\_params} & (string $\rightarrow$ string) Map & HVM boot params \\
 
1431
$\mathit{RW}$ &  {\tt platform} & (string $\rightarrow$ string) Map & platform-specific configuration \\
 
1432
$\mathit{RW}$ &  {\tt PCI\_bus} & string & PCI bus path for pass-through devices \\
 
1433
$\mathit{RW}$ &  {\tt other\_config} & (string $\rightarrow$ string) Map & additional configuration \\
 
1434
$\mathit{RO}_\mathit{run}$ &  {\tt domid} & int & domain ID (if available, -1 otherwise) \\
 
1435
$\mathit{RO}_\mathit{run}$ &  {\tt is\_control\_domain} & bool & true if this is a control domain (domain 0 or a driver domain) \\
 
1436
$\mathit{RO}_\mathit{run}$ &  {\tt metrics} & VM\_metrics ref & metrics associated with this VM \\
 
1437
$\mathit{RO}_\mathit{run}$ &  {\tt guest\_metrics} & VM\_guest\_metrics ref & metrics associated with the running guest \\
 
1438
$\mathit{RO}_\mathit{run}$ &  {\tt security/label} & string & the VM's security label \\
 
1439
\hline
 
1440
\end{longtable}
 
1441
\subsection{Parameter Details}
 
1442
\subsubsection{PV/kernel and PV/ramdisk}
 
1443
The \texttt{PV/kernel} and \texttt{PV/ramdisk} parameters should be
 
1444
specified as URIs with either a \texttt{file} or \texttt{data} scheme.
 
1445
 
 
1446
The \texttt{file} scheme must be used when a file on the remote dom0
 
1447
should be used.  The remote dom0 is the one where the guest system
 
1448
should be started on. Only absolute filenames are supported, i.e. the
 
1449
string must start with \texttt{file://} appended with the absolute
 
1450
path.  This is typically used when the guest system use the same
 
1451
operating systems as the dom0 or there is some kind of shared storage
 
1452
for the images inside the dom0s.
 
1453
 
 
1454
Note that for compatibility reasons it is possible --- but not
 
1455
recommended --- to leave out the scheme specification for
 
1456
\texttt{file}, i.e. \texttt{file:///some/path} and \texttt{/some/path}
 
1457
is equivalent.
 
1458
 
 
1459
Examples (in python):
 
1460
 
 
1461
Use kernel image which resides in the \texttt{/boot} directory:
 
1462
\begin{verbatim}
 
1463
xenapi.VM.create({ ...
 
1464
   'PV_kernel': 'file:///boot/vmlinuz-2.6.26-2-xen-686',
 
1465
   ... })
 
1466
\end{verbatim}
 
1467
 
 
1468
Use ramdisk image which resides on a (shared) nfs directory:
 
1469
\begin{verbatim}
 
1470
xenapi.VM.create({ ...
 
1471
   'PV_ramdisk': 'file:///nfs/xen/debian/5.0.1/initrd.img-2.6.26-2-xen-686'
 
1472
   ... })
 
1473
\end{verbatim}
 
1474
 
 
1475
When an image should be used which resides on the local system,
 
1476
i.e. the system where the XenAPI call is send from, it is possible to
 
1477
use the \texttt{data} URI scheme as described in \cite{RFC2397}.  The
 
1478
media-type must be set to \texttt{application/octet-stream}.
 
1479
Currently only base64 encoding is supported.  The URI must therefore
 
1480
start with \texttt{data:application/octet-stream;base64,} followed by
 
1481
the base64 encoded image.
 
1482
 
 
1483
The \texttt{xen/util/fileuri.py} provides a helper function which
 
1484
takes a local filename as parameter and build up the correct URI from
 
1485
this.
 
1486
 
 
1487
Examples (in python):
 
1488
 
 
1489
Use kernel image specified inline:
 
1490
\begin{verbatim}
 
1491
xenapi.VM.create({ ...
 
1492
   'PV_kernel': 'data:application/octet-stream;base64,H4Zu....'
 
1493
      # most of base64 encoded data is omitted 
 
1494
   ... })
 
1495
\end{verbatim}
 
1496
 
 
1497
Using the utility function:
 
1498
\begin{verbatim}
 
1499
from xen.util.fileuri import scheme_data
 
1500
xenapi.VM.create({ ...
 
1501
   'PV_kernel': scheme_data.create_from_file(
 
1502
       "/xen/guests/images/debian/5.0.1/vmlinuz-2.6.26-2-xen-686"),
 
1503
   ... })
 
1504
\end{verbatim}
 
1505
 
 
1506
Currently when using the \texttt{data} URI scheme, a temporary file is
 
1507
created on the remote dom0 in the directory
 
1508
\texttt{/var/run/xend/boot} which is then used for booting. When not
 
1509
used any longer the file is deleted.  (Therefore reading of the
 
1510
\texttt{PV/kernel} or \texttt{PV/ramdisk} parameters when created with
 
1511
a \texttt{data} URI scheme returns a filename to a temporary file ---
 
1512
which might even not exists when querying.)  This implementation might
 
1513
change in the way that the data is directly used --- without the
 
1514
indirection using a file.  Therefore do not rely on the data resulting
 
1515
from a read of a variables which was set using the \texttt{data}
 
1516
scheme.
 
1517
 
 
1518
Note: a mix of different schemes for the parameters is possible; e.g.
 
1519
the kernel can be specified with a \texttt{file} and the ramdisk with
 
1520
the \texttt{data} URI scheme.
 
1521
 
 
1522
\subsection{RPCs associated with class: VM}
 
1523
\subsubsection{RPC name:~clone}
 
1524
 
 
1525
{\bf Overview:} 
 
1526
Clones the specified VM, making a new VM. Clone automatically exploits the
 
1527
capabilities of the underlying storage repository in which the VM's disk
 
1528
images are stored (e.g. Copy on Write).   This function can only be called
 
1529
when the VM is in the Halted State.
 
1530
 
 
1531
 \noindent {\bf Signature:} 
 
1532
\begin{verbatim} (VM ref) clone (session_id s, VM ref vm, string new_name)\end{verbatim}
 
1533
 
 
1534
 
 
1535
\noindent{\bf Arguments:}
 
1536
 
 
1537
 
 
1538
\vspace{0.3cm}
 
1539
\begin{tabular}{|c|c|p{7cm}|}
 
1540
 \hline
 
1541
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1542
{\tt VM ref } & vm & The VM to be cloned \\ \hline 
 
1543
 
 
1544
{\tt string } & new\_name & The name of the cloned VM \\ \hline 
 
1545
 
 
1546
\end{tabular}
 
1547
 
 
1548
\vspace{0.3cm}
 
1549
 
 
1550
 \noindent {\bf Return Type:} 
 
1551
{\tt 
 
1552
VM ref
 
1553
}
 
1554
 
 
1555
 
 
1556
The ID of the newly created VM.
 
1557
\vspace{0.3cm}
 
1558
 
 
1559
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
1560
 
 
1561
\vspace{0.6cm}
 
1562
\subsubsection{RPC name:~start}
 
1563
 
 
1564
{\bf Overview:} 
 
1565
Start the specified VM.  This function can only be called with the VM is in
 
1566
the Halted State.
 
1567
 
 
1568
 \noindent {\bf Signature:} 
 
1569
\begin{verbatim} void start (session_id s, VM ref vm, bool start_paused)\end{verbatim}
 
1570
 
 
1571
 
 
1572
\noindent{\bf Arguments:}
 
1573
 
 
1574
 
 
1575
\vspace{0.3cm}
 
1576
\begin{tabular}{|c|c|p{7cm}|}
 
1577
 \hline
 
1578
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1579
{\tt VM ref } & vm & The VM to start \\ \hline 
 
1580
 
 
1581
{\tt bool } & start\_paused & Instantiate VM in paused state if set to true. \\ \hline 
 
1582
 
 
1583
\end{tabular}
 
1584
 
 
1585
\vspace{0.3cm}
 
1586
 
 
1587
 \noindent {\bf Return Type:} 
 
1588
{\tt 
 
1589
void
 
1590
}
 
1591
 
 
1592
 
 
1593
 
 
1594
\vspace{0.3cm}
 
1595
 
 
1596
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}, {\tt
 
1597
VM\_HVM\_REQUIRED}
 
1598
 
 
1599
\vspace{0.6cm}
 
1600
\subsubsection{RPC name:~pause}
 
1601
 
 
1602
{\bf Overview:} 
 
1603
Pause the specified VM. This can only be called when the specified VM is in
 
1604
the Running state.
 
1605
 
 
1606
 \noindent {\bf Signature:} 
 
1607
\begin{verbatim} void pause (session_id s, VM ref vm)\end{verbatim}
 
1608
 
 
1609
 
 
1610
\noindent{\bf Arguments:}
 
1611
 
 
1612
 
 
1613
\vspace{0.3cm}
 
1614
\begin{tabular}{|c|c|p{7cm}|}
 
1615
 \hline
 
1616
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1617
{\tt VM ref } & vm & The VM to pause \\ \hline 
 
1618
 
 
1619
\end{tabular}
 
1620
 
 
1621
\vspace{0.3cm}
 
1622
 
 
1623
 \noindent {\bf Return Type:} 
 
1624
{\tt 
 
1625
void
 
1626
}
 
1627
 
 
1628
 
 
1629
 
 
1630
\vspace{0.3cm}
 
1631
 
 
1632
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
1633
 
 
1634
\vspace{0.6cm}
 
1635
\subsubsection{RPC name:~unpause}
 
1636
 
 
1637
{\bf Overview:} 
 
1638
Resume the specified VM. This can only be called when the specified VM is
 
1639
in the Paused state.
 
1640
 
 
1641
 \noindent {\bf Signature:} 
 
1642
\begin{verbatim} void unpause (session_id s, VM ref vm)\end{verbatim}
 
1643
 
 
1644
 
 
1645
\noindent{\bf Arguments:}
 
1646
 
 
1647
 
 
1648
\vspace{0.3cm}
 
1649
\begin{tabular}{|c|c|p{7cm}|}
 
1650
 \hline
 
1651
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1652
{\tt VM ref } & vm & The VM to unpause \\ \hline 
 
1653
 
 
1654
\end{tabular}
 
1655
 
 
1656
\vspace{0.3cm}
 
1657
 
 
1658
 \noindent {\bf Return Type:} 
 
1659
{\tt 
 
1660
void
 
1661
}
 
1662
 
 
1663
 
 
1664
 
 
1665
\vspace{0.3cm}
 
1666
 
 
1667
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
1668
 
 
1669
\vspace{0.6cm}
 
1670
\subsubsection{RPC name:~clean\_shutdown}
 
1671
 
 
1672
{\bf Overview:} 
 
1673
Attempt to cleanly shutdown the specified VM. (Note: this may not be
 
1674
supported---e.g. if a guest agent is not installed).
 
1675
 
 
1676
Once shutdown has been completed perform poweroff action specified in guest
 
1677
configuration.
 
1678
 
 
1679
This can only be called when the specified VM is in the Running state.
 
1680
 
 
1681
 \noindent {\bf Signature:} 
 
1682
\begin{verbatim} void clean_shutdown (session_id s, VM ref vm)\end{verbatim}
 
1683
 
 
1684
 
 
1685
\noindent{\bf Arguments:}
 
1686
 
 
1687
 
 
1688
\vspace{0.3cm}
 
1689
\begin{tabular}{|c|c|p{7cm}|}
 
1690
 \hline
 
1691
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1692
{\tt VM ref } & vm & The VM to shutdown \\ \hline 
 
1693
 
 
1694
\end{tabular}
 
1695
 
 
1696
\vspace{0.3cm}
 
1697
 
 
1698
 \noindent {\bf Return Type:} 
 
1699
{\tt 
 
1700
void
 
1701
}
 
1702
 
 
1703
 
 
1704
 
 
1705
\vspace{0.3cm}
 
1706
 
 
1707
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
1708
 
 
1709
\vspace{0.6cm}
 
1710
\subsubsection{RPC name:~clean\_reboot}
 
1711
 
 
1712
{\bf Overview:} 
 
1713
Attempt to cleanly shutdown the specified VM (Note: this may not be
 
1714
supported---e.g. if a guest agent is not installed).
 
1715
 
 
1716
Once shutdown has been completed perform reboot action specified in guest
 
1717
configuration.
 
1718
 
 
1719
This can only be called when the specified VM is in the Running state.
 
1720
 
 
1721
 \noindent {\bf Signature:} 
 
1722
\begin{verbatim} void clean_reboot (session_id s, VM ref vm)\end{verbatim}
 
1723
 
 
1724
 
 
1725
\noindent{\bf Arguments:}
 
1726
 
 
1727
 
 
1728
\vspace{0.3cm}
 
1729
\begin{tabular}{|c|c|p{7cm}|}
 
1730
 \hline
 
1731
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1732
{\tt VM ref } & vm & The VM to shutdown \\ \hline 
 
1733
 
 
1734
\end{tabular}
 
1735
 
 
1736
\vspace{0.3cm}
 
1737
 
 
1738
 \noindent {\bf Return Type:} 
 
1739
{\tt 
 
1740
void
 
1741
}
 
1742
 
 
1743
 
 
1744
 
 
1745
\vspace{0.3cm}
 
1746
 
 
1747
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
1748
 
 
1749
\vspace{0.6cm}
 
1750
\subsubsection{RPC name:~hard\_shutdown}
 
1751
 
 
1752
{\bf Overview:} 
 
1753
Stop executing the specified VM without attempting a clean shutdown. Then
 
1754
perform poweroff action specified in VM configuration.
 
1755
 
 
1756
 \noindent {\bf Signature:} 
 
1757
\begin{verbatim} void hard_shutdown (session_id s, VM ref vm)\end{verbatim}
 
1758
 
 
1759
 
 
1760
\noindent{\bf Arguments:}
 
1761
 
 
1762
 
 
1763
\vspace{0.3cm}
 
1764
\begin{tabular}{|c|c|p{7cm}|}
 
1765
 \hline
 
1766
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1767
{\tt VM ref } & vm & The VM to destroy \\ \hline 
 
1768
 
 
1769
\end{tabular}
 
1770
 
 
1771
\vspace{0.3cm}
 
1772
 
 
1773
 \noindent {\bf Return Type:} 
 
1774
{\tt 
 
1775
void
 
1776
}
 
1777
 
 
1778
 
 
1779
 
 
1780
\vspace{0.3cm}
 
1781
 
 
1782
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
1783
 
 
1784
\vspace{0.6cm}
 
1785
\subsubsection{RPC name:~hard\_reboot}
 
1786
 
 
1787
{\bf Overview:} 
 
1788
Stop executing the specified VM without attempting a clean shutdown. Then
 
1789
perform reboot action specified in VM configuration.
 
1790
 
 
1791
 \noindent {\bf Signature:} 
 
1792
\begin{verbatim} void hard_reboot (session_id s, VM ref vm)\end{verbatim}
 
1793
 
 
1794
 
 
1795
\noindent{\bf Arguments:}
 
1796
 
 
1797
 
 
1798
\vspace{0.3cm}
 
1799
\begin{tabular}{|c|c|p{7cm}|}
 
1800
 \hline
 
1801
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1802
{\tt VM ref } & vm & The VM to reboot \\ \hline 
 
1803
 
 
1804
\end{tabular}
 
1805
 
 
1806
\vspace{0.3cm}
 
1807
 
 
1808
 \noindent {\bf Return Type:} 
 
1809
{\tt 
 
1810
void
 
1811
}
 
1812
 
 
1813
 
 
1814
 
 
1815
\vspace{0.3cm}
 
1816
\vspace{0.3cm}
 
1817
\vspace{0.3cm}
 
1818
\subsubsection{RPC name:~suspend}
 
1819
 
 
1820
{\bf Overview:} 
 
1821
Suspend the specified VM to disk.  This can only be called when the
 
1822
specified VM is in the Running state.
 
1823
 
 
1824
 \noindent {\bf Signature:} 
 
1825
\begin{verbatim} void suspend (session_id s, VM ref vm)\end{verbatim}
 
1826
 
 
1827
 
 
1828
\noindent{\bf Arguments:}
 
1829
 
 
1830
 
 
1831
\vspace{0.3cm}
 
1832
\begin{tabular}{|c|c|p{7cm}|}
 
1833
 \hline
 
1834
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1835
{\tt VM ref } & vm & The VM to suspend \\ \hline 
 
1836
 
 
1837
\end{tabular}
 
1838
 
 
1839
\vspace{0.3cm}
 
1840
 
 
1841
 \noindent {\bf Return Type:} 
 
1842
{\tt 
 
1843
void
 
1844
}
 
1845
 
 
1846
 
 
1847
 
 
1848
\vspace{0.3cm}
 
1849
 
 
1850
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
1851
 
 
1852
\vspace{0.6cm}
 
1853
\subsubsection{RPC name:~resume}
 
1854
 
 
1855
{\bf Overview:} 
 
1856
Awaken the specified VM and resume it.  This can only be called when the
 
1857
specified VM is in the Suspended state.
 
1858
 
 
1859
 \noindent {\bf Signature:} 
 
1860
\begin{verbatim} void resume (session_id s, VM ref vm, bool start_paused)\end{verbatim}
 
1861
 
 
1862
 
 
1863
\noindent{\bf Arguments:}
 
1864
 
 
1865
 
 
1866
\vspace{0.3cm}
 
1867
\begin{tabular}{|c|c|p{7cm}|}
 
1868
 \hline
 
1869
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1870
{\tt VM ref } & vm & The VM to resume \\ \hline 
 
1871
 
 
1872
{\tt bool } & start\_paused & Resume VM in paused state if set to true. \\ \hline 
 
1873
 
 
1874
\end{tabular}
 
1875
 
 
1876
\vspace{0.3cm}
 
1877
 
 
1878
 \noindent {\bf Return Type:} 
 
1879
{\tt 
 
1880
void
 
1881
}
 
1882
 
 
1883
 
 
1884
 
 
1885
\vspace{0.3cm}
 
1886
 
 
1887
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
1888
 
 
1889
\vspace{0.6cm}
 
1890
\subsubsection{RPC name:~set\_VCPUs\_number\_live}
 
1891
 
 
1892
{\bf Overview:} 
 
1893
Set this VM's VCPUs/at\_startup value, and set the same value on the VM, if
 
1894
running.
 
1895
 
 
1896
 \noindent {\bf Signature:} 
 
1897
\begin{verbatim} void set_VCPUs_number_live (session_id s, VM ref self, int nvcpu)\end{verbatim}
 
1898
 
 
1899
 
 
1900
\noindent{\bf Arguments:}
 
1901
 
 
1902
 
 
1903
\vspace{0.3cm}
 
1904
\begin{tabular}{|c|c|p{7cm}|}
 
1905
 \hline
 
1906
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1907
{\tt VM ref } & self & The VM \\ \hline 
 
1908
 
 
1909
{\tt int } & nvcpu & The number of VCPUs \\ \hline 
 
1910
 
 
1911
\end{tabular}
 
1912
 
 
1913
\vspace{0.3cm}
 
1914
 
 
1915
 \noindent {\bf Return Type:} 
 
1916
{\tt 
 
1917
void
 
1918
}
 
1919
 
 
1920
 
 
1921
 
 
1922
\vspace{0.3cm}
 
1923
\vspace{0.3cm}
 
1924
\vspace{0.3cm}
 
1925
\subsubsection{RPC name:~add\_to\_VCPUs\_params\_live}
 
1926
 
 
1927
{\bf Overview:} 
 
1928
Add the given key-value pair to VM.VCPUs\_params, and apply that value on
 
1929
the running VM.
 
1930
 
 
1931
 \noindent {\bf Signature:} 
 
1932
\begin{verbatim} void add_to_VCPUs_params_live (session_id s, VM ref self, string key, string value)\end{verbatim}
 
1933
 
 
1934
 
 
1935
\noindent{\bf Arguments:}
 
1936
 
 
1937
 
 
1938
\vspace{0.3cm}
 
1939
\begin{tabular}{|c|c|p{7cm}|}
 
1940
 \hline
 
1941
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1942
{\tt VM ref } & self & The VM \\ \hline 
 
1943
 
 
1944
{\tt string } & key & The key \\ \hline 
 
1945
 
 
1946
{\tt string } & value & The value \\ \hline 
 
1947
 
 
1948
\end{tabular}
 
1949
 
 
1950
\vspace{0.3cm}
 
1951
 
 
1952
 \noindent {\bf Return Type:} 
 
1953
{\tt 
 
1954
void
 
1955
}
 
1956
 
 
1957
 
 
1958
 
 
1959
\vspace{0.3cm}
 
1960
\vspace{0.3cm}
 
1961
\vspace{0.3cm}
 
1962
\subsubsection{RPC name:~set\_memory\_dynamic\_max\_live}
 
1963
 
 
1964
{\bf Overview:} 
 
1965
Set memory\_dynamic\_max in database and on running VM.
 
1966
 
 
1967
 \noindent {\bf Signature:} 
 
1968
\begin{verbatim} void set_memory_dynamic_max_live (session_id s, VM ref self, int max)\end{verbatim}
 
1969
 
 
1970
 
 
1971
\noindent{\bf Arguments:}
 
1972
 
 
1973
 
 
1974
\vspace{0.3cm}
 
1975
\begin{tabular}{|c|c|p{7cm}|}
 
1976
 \hline
 
1977
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
1978
{\tt VM ref } & self & The VM \\ \hline 
 
1979
 
 
1980
{\tt int } & max & The memory\_dynamic\_max value \\ \hline 
 
1981
 
 
1982
\end{tabular}
 
1983
 
 
1984
\vspace{0.3cm}
 
1985
 
 
1986
 \noindent {\bf Return Type:} 
 
1987
{\tt 
 
1988
void
 
1989
}
 
1990
 
 
1991
 
 
1992
 
 
1993
\vspace{0.3cm}
 
1994
\vspace{0.3cm}
 
1995
\vspace{0.3cm}
 
1996
\subsubsection{RPC name:~set\_memory\_dynamic\_min\_live}
 
1997
 
 
1998
{\bf Overview:} 
 
1999
Set memory\_dynamic\_min in database and on running VM.
 
2000
 
 
2001
 \noindent {\bf Signature:} 
 
2002
\begin{verbatim} void set_memory_dynamic_min_live (session_id s, VM ref self, int min)\end{verbatim}
 
2003
 
 
2004
 
 
2005
\noindent{\bf Arguments:}
 
2006
 
 
2007
 
 
2008
\vspace{0.3cm}
 
2009
\begin{tabular}{|c|c|p{7cm}|}
 
2010
 \hline
 
2011
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2012
{\tt VM ref } & self & The VM \\ \hline 
 
2013
 
 
2014
{\tt int } & min & The memory\_dynamic\_min value \\ \hline 
 
2015
 
 
2016
\end{tabular}
 
2017
 
 
2018
\vspace{0.3cm}
 
2019
 
 
2020
 \noindent {\bf Return Type:} 
 
2021
{\tt 
 
2022
void
 
2023
}
 
2024
 
 
2025
 
 
2026
 
 
2027
\vspace{0.3cm}
 
2028
\vspace{0.3cm}
 
2029
\vspace{0.3cm}
 
2030
\subsubsection{RPC name:~send\_sysrq}
 
2031
 
 
2032
{\bf Overview:} 
 
2033
Send the given key as a sysrq to this VM.  The key is specified as a single
 
2034
character (a String of length 1).  This can only be called when the
 
2035
specified VM is in the Running state.
 
2036
 
 
2037
 \noindent {\bf Signature:} 
 
2038
\begin{verbatim} void send_sysrq (session_id s, VM ref vm, string key)\end{verbatim}
 
2039
 
 
2040
 
 
2041
\noindent{\bf Arguments:}
 
2042
 
 
2043
 
 
2044
\vspace{0.3cm}
 
2045
\begin{tabular}{|c|c|p{7cm}|}
 
2046
 \hline
 
2047
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2048
{\tt VM ref } & vm & The VM \\ \hline 
 
2049
 
 
2050
{\tt string } & key & The key to send \\ \hline 
 
2051
 
 
2052
\end{tabular}
 
2053
 
 
2054
\vspace{0.3cm}
 
2055
 
 
2056
 \noindent {\bf Return Type:} 
 
2057
{\tt 
 
2058
void
 
2059
}
 
2060
 
 
2061
 
 
2062
 
 
2063
\vspace{0.3cm}
 
2064
 
 
2065
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
2066
 
 
2067
\vspace{0.6cm}
 
2068
\subsubsection{RPC name:~send\_trigger}
 
2069
 
 
2070
{\bf Overview:} 
 
2071
Send the named trigger to this VM.  This can only be called when the
 
2072
specified VM is in the Running state.
 
2073
 
 
2074
 \noindent {\bf Signature:} 
 
2075
\begin{verbatim} void send_trigger (session_id s, VM ref vm, string trigger)\end{verbatim}
 
2076
 
 
2077
 
 
2078
\noindent{\bf Arguments:}
 
2079
 
 
2080
 
 
2081
\vspace{0.3cm}
 
2082
\begin{tabular}{|c|c|p{7cm}|}
 
2083
 \hline
 
2084
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2085
{\tt VM ref } & vm & The VM \\ \hline 
 
2086
 
 
2087
{\tt string } & trigger & The trigger to send \\ \hline 
 
2088
 
 
2089
\end{tabular}
 
2090
 
 
2091
\vspace{0.3cm}
 
2092
 
 
2093
 \noindent {\bf Return Type:} 
 
2094
{\tt 
 
2095
void
 
2096
}
 
2097
 
 
2098
 
 
2099
 
 
2100
\vspace{0.3cm}
 
2101
 
 
2102
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
2103
 
 
2104
\vspace{0.6cm}
 
2105
\subsubsection{RPC name:~migrate}
 
2106
 
 
2107
{\bf Overview:} 
 
2108
Migrate the VM to another host.  This can only be called when the specified
 
2109
VM is in the Running state.
 
2110
 
 
2111
 \noindent {\bf Signature:} 
 
2112
\begin{verbatim} void migrate (session_id s, VM ref vm, string dest, bool live, (string -> string) Map options)\end{verbatim}
 
2113
 
 
2114
 
 
2115
\noindent{\bf Arguments:}
 
2116
 
 
2117
 
 
2118
\vspace{0.3cm}
 
2119
\begin{tabular}{|c|c|p{7cm}|}
 
2120
 \hline
 
2121
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2122
{\tt VM ref } & vm & The VM \\ \hline 
 
2123
 
 
2124
{\tt string } & dest & The destination host \\ \hline 
 
2125
 
 
2126
{\tt bool } & live & Live migration \\ \hline 
 
2127
 
 
2128
{\tt (string $\rightarrow$ string) Map } & options & Other parameters \\ \hline 
 
2129
 
 
2130
\end{tabular}
 
2131
 
 
2132
\vspace{0.3cm}
 
2133
 
 
2134
 \noindent {\bf Return Type:} 
 
2135
{\tt 
 
2136
void
 
2137
}
 
2138
 
 
2139
 
 
2140
 
 
2141
\vspace{0.3cm}
 
2142
 
 
2143
\noindent{\bf Possible Error Codes:} {\tt VM\_BAD\_POWER\_STATE}
 
2144
 
 
2145
\vspace{0.6cm}
 
2146
\subsubsection{RPC name:~get\_all}
 
2147
 
 
2148
{\bf Overview:} 
 
2149
Return a list of all the VMs known to the system.
 
2150
 
 
2151
 \noindent {\bf Signature:} 
 
2152
\begin{verbatim} ((VM ref) Set) get_all (session_id s)\end{verbatim}
 
2153
 
 
2154
 
 
2155
\vspace{0.3cm}
 
2156
 
 
2157
 \noindent {\bf Return Type:} 
 
2158
{\tt 
 
2159
(VM ref) Set
 
2160
}
 
2161
 
 
2162
 
 
2163
A list of all the IDs of all the VMs
 
2164
\vspace{0.3cm}
 
2165
\vspace{0.3cm}
 
2166
\vspace{0.3cm}
 
2167
\subsubsection{RPC name:~get\_uuid}
 
2168
 
 
2169
{\bf Overview:} 
 
2170
Get the uuid field of the given VM.
 
2171
 
 
2172
 \noindent {\bf Signature:} 
 
2173
\begin{verbatim} string get_uuid (session_id s, VM ref self)\end{verbatim}
 
2174
 
 
2175
 
 
2176
\noindent{\bf Arguments:}
 
2177
 
 
2178
 
 
2179
\vspace{0.3cm}
 
2180
\begin{tabular}{|c|c|p{7cm}|}
 
2181
 \hline
 
2182
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2183
{\tt VM ref } & self & reference to the object \\ \hline 
 
2184
 
 
2185
\end{tabular}
 
2186
 
 
2187
\vspace{0.3cm}
 
2188
 
 
2189
 \noindent {\bf Return Type:} 
 
2190
{\tt 
 
2191
string
 
2192
}
 
2193
 
 
2194
 
 
2195
value of the field
 
2196
\vspace{0.3cm}
 
2197
\vspace{0.3cm}
 
2198
\vspace{0.3cm}
 
2199
\subsubsection{RPC name:~get\_power\_state}
 
2200
 
 
2201
{\bf Overview:} 
 
2202
Get the power\_state field of the given VM.
 
2203
 
 
2204
 \noindent {\bf Signature:} 
 
2205
\begin{verbatim} (vm_power_state) get_power_state (session_id s, VM ref self)\end{verbatim}
 
2206
 
 
2207
 
 
2208
\noindent{\bf Arguments:}
 
2209
 
 
2210
 
 
2211
\vspace{0.3cm}
 
2212
\begin{tabular}{|c|c|p{7cm}|}
 
2213
 \hline
 
2214
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2215
{\tt VM ref } & self & reference to the object \\ \hline 
 
2216
 
 
2217
\end{tabular}
 
2218
 
 
2219
\vspace{0.3cm}
 
2220
 
 
2221
 \noindent {\bf Return Type:} 
 
2222
{\tt 
 
2223
vm\_power\_state
 
2224
}
 
2225
 
 
2226
 
 
2227
value of the field
 
2228
\vspace{0.3cm}
 
2229
\vspace{0.3cm}
 
2230
\vspace{0.3cm}
 
2231
\subsubsection{RPC name:~get\_name\_label}
 
2232
 
 
2233
{\bf Overview:} 
 
2234
Get the name/label field of the given VM.
 
2235
 
 
2236
 \noindent {\bf Signature:} 
 
2237
\begin{verbatim} string get_name_label (session_id s, VM ref self)\end{verbatim}
 
2238
 
 
2239
 
 
2240
\noindent{\bf Arguments:}
 
2241
 
 
2242
 
 
2243
\vspace{0.3cm}
 
2244
\begin{tabular}{|c|c|p{7cm}|}
 
2245
 \hline
 
2246
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2247
{\tt VM ref } & self & reference to the object \\ \hline 
 
2248
 
 
2249
\end{tabular}
 
2250
 
 
2251
\vspace{0.3cm}
 
2252
 
 
2253
 \noindent {\bf Return Type:} 
 
2254
{\tt 
 
2255
string
 
2256
}
 
2257
 
 
2258
 
 
2259
value of the field
 
2260
\vspace{0.3cm}
 
2261
\vspace{0.3cm}
 
2262
\vspace{0.3cm}
 
2263
\subsubsection{RPC name:~set\_name\_label}
 
2264
 
 
2265
{\bf Overview:} 
 
2266
Set the name/label field of the given VM.
 
2267
 
 
2268
 \noindent {\bf Signature:} 
 
2269
\begin{verbatim} void set_name_label (session_id s, VM ref self, string value)\end{verbatim}
 
2270
 
 
2271
 
 
2272
\noindent{\bf Arguments:}
 
2273
 
 
2274
 
 
2275
\vspace{0.3cm}
 
2276
\begin{tabular}{|c|c|p{7cm}|}
 
2277
 \hline
 
2278
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2279
{\tt VM ref } & self & reference to the object \\ \hline 
 
2280
 
 
2281
{\tt string } & value & New value to set \\ \hline 
 
2282
 
 
2283
\end{tabular}
 
2284
 
 
2285
\vspace{0.3cm}
 
2286
 
 
2287
 \noindent {\bf Return Type:} 
 
2288
{\tt 
 
2289
void
 
2290
}
 
2291
 
 
2292
 
 
2293
 
 
2294
\vspace{0.3cm}
 
2295
\vspace{0.3cm}
 
2296
\vspace{0.3cm}
 
2297
\subsubsection{RPC name:~get\_name\_description}
 
2298
 
 
2299
{\bf Overview:} 
 
2300
Get the name/description field of the given VM.
 
2301
 
 
2302
 \noindent {\bf Signature:} 
 
2303
\begin{verbatim} string get_name_description (session_id s, VM ref self)\end{verbatim}
 
2304
 
 
2305
 
 
2306
\noindent{\bf Arguments:}
 
2307
 
 
2308
 
 
2309
\vspace{0.3cm}
 
2310
\begin{tabular}{|c|c|p{7cm}|}
 
2311
 \hline
 
2312
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2313
{\tt VM ref } & self & reference to the object \\ \hline 
 
2314
 
 
2315
\end{tabular}
 
2316
 
 
2317
\vspace{0.3cm}
 
2318
 
 
2319
 \noindent {\bf Return Type:} 
 
2320
{\tt 
 
2321
string
 
2322
}
 
2323
 
 
2324
 
 
2325
value of the field
 
2326
\vspace{0.3cm}
 
2327
\vspace{0.3cm}
 
2328
\vspace{0.3cm}
 
2329
\subsubsection{RPC name:~set\_name\_description}
 
2330
 
 
2331
{\bf Overview:} 
 
2332
Set the name/description field of the given VM.
 
2333
 
 
2334
 \noindent {\bf Signature:} 
 
2335
\begin{verbatim} void set_name_description (session_id s, VM ref self, string value)\end{verbatim}
 
2336
 
 
2337
 
 
2338
\noindent{\bf Arguments:}
 
2339
 
 
2340
 
 
2341
\vspace{0.3cm}
 
2342
\begin{tabular}{|c|c|p{7cm}|}
 
2343
 \hline
 
2344
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2345
{\tt VM ref } & self & reference to the object \\ \hline 
 
2346
 
 
2347
{\tt string } & value & New value to set \\ \hline 
 
2348
 
 
2349
\end{tabular}
 
2350
 
 
2351
\vspace{0.3cm}
 
2352
 
 
2353
 \noindent {\bf Return Type:} 
 
2354
{\tt 
 
2355
void
 
2356
}
 
2357
 
 
2358
 
 
2359
 
 
2360
\vspace{0.3cm}
 
2361
\vspace{0.3cm}
 
2362
\vspace{0.3cm}
 
2363
\subsubsection{RPC name:~get\_user\_version}
 
2364
 
 
2365
{\bf Overview:} 
 
2366
Get the user\_version field of the given VM.
 
2367
 
 
2368
 \noindent {\bf Signature:} 
 
2369
\begin{verbatim} int get_user_version (session_id s, VM ref self)\end{verbatim}
 
2370
 
 
2371
 
 
2372
\noindent{\bf Arguments:}
 
2373
 
 
2374
 
 
2375
\vspace{0.3cm}
 
2376
\begin{tabular}{|c|c|p{7cm}|}
 
2377
 \hline
 
2378
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2379
{\tt VM ref } & self & reference to the object \\ \hline 
 
2380
 
 
2381
\end{tabular}
 
2382
 
 
2383
\vspace{0.3cm}
 
2384
 
 
2385
 \noindent {\bf Return Type:} 
 
2386
{\tt 
 
2387
int
 
2388
}
 
2389
 
 
2390
 
 
2391
value of the field
 
2392
\vspace{0.3cm}
 
2393
\vspace{0.3cm}
 
2394
\vspace{0.3cm}
 
2395
\subsubsection{RPC name:~set\_user\_version}
 
2396
 
 
2397
{\bf Overview:} 
 
2398
Set the user\_version field of the given VM.
 
2399
 
 
2400
 \noindent {\bf Signature:} 
 
2401
\begin{verbatim} void set_user_version (session_id s, VM ref self, int value)\end{verbatim}
 
2402
 
 
2403
 
 
2404
\noindent{\bf Arguments:}
 
2405
 
 
2406
 
 
2407
\vspace{0.3cm}
 
2408
\begin{tabular}{|c|c|p{7cm}|}
 
2409
 \hline
 
2410
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2411
{\tt VM ref } & self & reference to the object \\ \hline 
 
2412
 
 
2413
{\tt int } & value & New value to set \\ \hline 
 
2414
 
 
2415
\end{tabular}
 
2416
 
 
2417
\vspace{0.3cm}
 
2418
 
 
2419
 \noindent {\bf Return Type:} 
 
2420
{\tt 
 
2421
void
 
2422
}
 
2423
 
 
2424
 
 
2425
 
 
2426
\vspace{0.3cm}
 
2427
\vspace{0.3cm}
 
2428
\vspace{0.3cm}
 
2429
\subsubsection{RPC name:~get\_is\_a\_template}
 
2430
 
 
2431
{\bf Overview:} 
 
2432
Get the is\_a\_template field of the given VM.
 
2433
 
 
2434
 \noindent {\bf Signature:} 
 
2435
\begin{verbatim} bool get_is_a_template (session_id s, VM ref self)\end{verbatim}
 
2436
 
 
2437
 
 
2438
\noindent{\bf Arguments:}
 
2439
 
 
2440
 
 
2441
\vspace{0.3cm}
 
2442
\begin{tabular}{|c|c|p{7cm}|}
 
2443
 \hline
 
2444
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2445
{\tt VM ref } & self & reference to the object \\ \hline 
 
2446
 
 
2447
\end{tabular}
 
2448
 
 
2449
\vspace{0.3cm}
 
2450
 
 
2451
 \noindent {\bf Return Type:} 
 
2452
{\tt 
 
2453
bool
 
2454
}
 
2455
 
 
2456
 
 
2457
value of the field
 
2458
\vspace{0.3cm}
 
2459
\vspace{0.3cm}
 
2460
\vspace{0.3cm}
 
2461
\subsubsection{RPC name:~set\_is\_a\_template}
 
2462
 
 
2463
{\bf Overview:} 
 
2464
Set the is\_a\_template field of the given VM.
 
2465
 
 
2466
 \noindent {\bf Signature:} 
 
2467
\begin{verbatim} void set_is_a_template (session_id s, VM ref self, bool value)\end{verbatim}
 
2468
 
 
2469
 
 
2470
\noindent{\bf Arguments:}
 
2471
 
 
2472
 
 
2473
\vspace{0.3cm}
 
2474
\begin{tabular}{|c|c|p{7cm}|}
 
2475
 \hline
 
2476
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2477
{\tt VM ref } & self & reference to the object \\ \hline 
 
2478
 
 
2479
{\tt bool } & value & New value to set \\ \hline 
 
2480
 
 
2481
\end{tabular}
 
2482
 
 
2483
\vspace{0.3cm}
 
2484
 
 
2485
 \noindent {\bf Return Type:} 
 
2486
{\tt 
 
2487
void
 
2488
}
 
2489
 
 
2490
 
 
2491
 
 
2492
\vspace{0.3cm}
 
2493
\vspace{0.3cm}
 
2494
\vspace{0.3cm}
 
2495
\subsubsection{RPC name:~get\_auto\_power\_on}
 
2496
 
 
2497
{\bf Overview:} 
 
2498
Get the auto\_power\_on field of the given VM.
 
2499
 
 
2500
 \noindent {\bf Signature:} 
 
2501
\begin{verbatim} bool get_auto_power_on (session_id s, VM ref self)\end{verbatim}
 
2502
 
 
2503
 
 
2504
\noindent{\bf Arguments:}
 
2505
 
 
2506
 
 
2507
\vspace{0.3cm}
 
2508
\begin{tabular}{|c|c|p{7cm}|}
 
2509
 \hline
 
2510
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2511
{\tt VM ref } & self & reference to the object \\ \hline 
 
2512
 
 
2513
\end{tabular}
 
2514
 
 
2515
\vspace{0.3cm}
 
2516
 
 
2517
 \noindent {\bf Return Type:} 
 
2518
{\tt 
 
2519
bool
 
2520
}
 
2521
 
 
2522
 
 
2523
value of the field
 
2524
\vspace{0.3cm}
 
2525
\vspace{0.3cm}
 
2526
\vspace{0.3cm}
 
2527
\subsubsection{RPC name:~set\_auto\_power\_on}
 
2528
 
 
2529
{\bf Overview:} 
 
2530
Set the auto\_power\_on field of the given VM.
 
2531
 
 
2532
 \noindent {\bf Signature:} 
 
2533
\begin{verbatim} void set_auto_power_on (session_id s, VM ref self, bool value)\end{verbatim}
 
2534
 
 
2535
 
 
2536
\noindent{\bf Arguments:}
 
2537
 
 
2538
 
 
2539
\vspace{0.3cm}
 
2540
\begin{tabular}{|c|c|p{7cm}|}
 
2541
 \hline
 
2542
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2543
{\tt VM ref } & self & reference to the object \\ \hline 
 
2544
 
 
2545
{\tt bool } & value & New value to set \\ \hline 
 
2546
 
 
2547
\end{tabular}
 
2548
 
 
2549
\vspace{0.3cm}
 
2550
 
 
2551
 \noindent {\bf Return Type:} 
 
2552
{\tt 
 
2553
void
 
2554
}
 
2555
 
 
2556
 
 
2557
 
 
2558
\vspace{0.3cm}
 
2559
\vspace{0.3cm}
 
2560
\vspace{0.3cm}
 
2561
\subsubsection{RPC name:~get\_suspend\_VDI}
 
2562
 
 
2563
{\bf Overview:} 
 
2564
Get the suspend\_VDI field of the given VM.
 
2565
 
 
2566
 \noindent {\bf Signature:} 
 
2567
\begin{verbatim} (VDI ref) get_suspend_VDI (session_id s, VM ref self)\end{verbatim}
 
2568
 
 
2569
 
 
2570
\noindent{\bf Arguments:}
 
2571
 
 
2572
 
 
2573
\vspace{0.3cm}
 
2574
\begin{tabular}{|c|c|p{7cm}|}
 
2575
 \hline
 
2576
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2577
{\tt VM ref } & self & reference to the object \\ \hline 
 
2578
 
 
2579
\end{tabular}
 
2580
 
 
2581
\vspace{0.3cm}
 
2582
 
 
2583
 \noindent {\bf Return Type:} 
 
2584
{\tt 
 
2585
VDI ref
 
2586
}
 
2587
 
 
2588
 
 
2589
value of the field
 
2590
\vspace{0.3cm}
 
2591
\vspace{0.3cm}
 
2592
\vspace{0.3cm}
 
2593
\subsubsection{RPC name:~get\_resident\_on}
 
2594
 
 
2595
{\bf Overview:} 
 
2596
Get the resident\_on field of the given VM.
 
2597
 
 
2598
 \noindent {\bf Signature:} 
 
2599
\begin{verbatim} (host ref) get_resident_on (session_id s, VM ref self)\end{verbatim}
 
2600
 
 
2601
 
 
2602
\noindent{\bf Arguments:}
 
2603
 
 
2604
 
 
2605
\vspace{0.3cm}
 
2606
\begin{tabular}{|c|c|p{7cm}|}
 
2607
 \hline
 
2608
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2609
{\tt VM ref } & self & reference to the object \\ \hline 
 
2610
 
 
2611
\end{tabular}
 
2612
 
 
2613
\vspace{0.3cm}
 
2614
 
 
2615
 \noindent {\bf Return Type:} 
 
2616
{\tt 
 
2617
host ref
 
2618
}
 
2619
 
 
2620
 
 
2621
value of the field
 
2622
\vspace{0.3cm}
 
2623
\vspace{0.3cm}
 
2624
\vspace{0.3cm}
 
2625
\subsubsection{RPC name:~get\_memory\_static\_max}
 
2626
 
 
2627
{\bf Overview:} 
 
2628
Get the memory/static\_max field of the given VM.
 
2629
 
 
2630
 \noindent {\bf Signature:} 
 
2631
\begin{verbatim} int get_memory_static_max (session_id s, VM ref self)\end{verbatim}
 
2632
 
 
2633
 
 
2634
\noindent{\bf Arguments:}
 
2635
 
 
2636
 
 
2637
\vspace{0.3cm}
 
2638
\begin{tabular}{|c|c|p{7cm}|}
 
2639
 \hline
 
2640
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2641
{\tt VM ref } & self & reference to the object \\ \hline 
 
2642
 
 
2643
\end{tabular}
 
2644
 
 
2645
\vspace{0.3cm}
 
2646
 
 
2647
 \noindent {\bf Return Type:} 
 
2648
{\tt 
 
2649
int
 
2650
}
 
2651
 
 
2652
 
 
2653
value of the field
 
2654
\vspace{0.3cm}
 
2655
\vspace{0.3cm}
 
2656
\vspace{0.3cm}
 
2657
\subsubsection{RPC name:~set\_memory\_static\_max}
 
2658
 
 
2659
{\bf Overview:} 
 
2660
Set the memory/static\_max field of the given VM.
 
2661
 
 
2662
 \noindent {\bf Signature:} 
 
2663
\begin{verbatim} void set_memory_static_max (session_id s, VM ref self, int value)\end{verbatim}
 
2664
 
 
2665
 
 
2666
\noindent{\bf Arguments:}
 
2667
 
 
2668
 
 
2669
\vspace{0.3cm}
 
2670
\begin{tabular}{|c|c|p{7cm}|}
 
2671
 \hline
 
2672
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2673
{\tt VM ref } & self & reference to the object \\ \hline 
 
2674
 
 
2675
{\tt int } & value & New value to set \\ \hline 
 
2676
 
 
2677
\end{tabular}
 
2678
 
 
2679
\vspace{0.3cm}
 
2680
 
 
2681
 \noindent {\bf Return Type:} 
 
2682
{\tt 
 
2683
void
 
2684
}
 
2685
 
 
2686
 
 
2687
 
 
2688
\vspace{0.3cm}
 
2689
\vspace{0.3cm}
 
2690
\vspace{0.3cm}
 
2691
\subsubsection{RPC name:~get\_memory\_dynamic\_max}
 
2692
 
 
2693
{\bf Overview:} 
 
2694
Get the memory/dynamic\_max field of the given VM.
 
2695
 
 
2696
 \noindent {\bf Signature:} 
 
2697
\begin{verbatim} int get_memory_dynamic_max (session_id s, VM ref self)\end{verbatim}
 
2698
 
 
2699
 
 
2700
\noindent{\bf Arguments:}
 
2701
 
 
2702
 
 
2703
\vspace{0.3cm}
 
2704
\begin{tabular}{|c|c|p{7cm}|}
 
2705
 \hline
 
2706
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2707
{\tt VM ref } & self & reference to the object \\ \hline 
 
2708
 
 
2709
\end{tabular}
 
2710
 
 
2711
\vspace{0.3cm}
 
2712
 
 
2713
 \noindent {\bf Return Type:} 
 
2714
{\tt 
 
2715
int
 
2716
}
 
2717
 
 
2718
 
 
2719
value of the field
 
2720
\vspace{0.3cm}
 
2721
\vspace{0.3cm}
 
2722
\vspace{0.3cm}
 
2723
\subsubsection{RPC name:~set\_memory\_dynamic\_max}
 
2724
 
 
2725
{\bf Overview:} 
 
2726
Set the memory/dynamic\_max field of the given VM.
 
2727
 
 
2728
 \noindent {\bf Signature:} 
 
2729
\begin{verbatim} void set_memory_dynamic_max (session_id s, VM ref self, int value)\end{verbatim}
 
2730
 
 
2731
 
 
2732
\noindent{\bf Arguments:}
 
2733
 
 
2734
 
 
2735
\vspace{0.3cm}
 
2736
\begin{tabular}{|c|c|p{7cm}|}
 
2737
 \hline
 
2738
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2739
{\tt VM ref } & self & reference to the object \\ \hline 
 
2740
 
 
2741
{\tt int } & value & New value to set \\ \hline 
 
2742
 
 
2743
\end{tabular}
 
2744
 
 
2745
\vspace{0.3cm}
 
2746
 
 
2747
 \noindent {\bf Return Type:} 
 
2748
{\tt 
 
2749
void
 
2750
}
 
2751
 
 
2752
 
 
2753
 
 
2754
\vspace{0.3cm}
 
2755
\vspace{0.3cm}
 
2756
\vspace{0.3cm}
 
2757
\subsubsection{RPC name:~get\_memory\_dynamic\_min}
 
2758
 
 
2759
{\bf Overview:} 
 
2760
Get the memory/dynamic\_min field of the given VM.
 
2761
 
 
2762
 \noindent {\bf Signature:} 
 
2763
\begin{verbatim} int get_memory_dynamic_min (session_id s, VM ref self)\end{verbatim}
 
2764
 
 
2765
 
 
2766
\noindent{\bf Arguments:}
 
2767
 
 
2768
 
 
2769
\vspace{0.3cm}
 
2770
\begin{tabular}{|c|c|p{7cm}|}
 
2771
 \hline
 
2772
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2773
{\tt VM ref } & self & reference to the object \\ \hline 
 
2774
 
 
2775
\end{tabular}
 
2776
 
 
2777
\vspace{0.3cm}
 
2778
 
 
2779
 \noindent {\bf Return Type:} 
 
2780
{\tt 
 
2781
int
 
2782
}
 
2783
 
 
2784
 
 
2785
value of the field
 
2786
\vspace{0.3cm}
 
2787
\vspace{0.3cm}
 
2788
\vspace{0.3cm}
 
2789
\subsubsection{RPC name:~set\_memory\_dynamic\_min}
 
2790
 
 
2791
{\bf Overview:} 
 
2792
Set the memory/dynamic\_min field of the given VM.
 
2793
 
 
2794
 \noindent {\bf Signature:} 
 
2795
\begin{verbatim} void set_memory_dynamic_min (session_id s, VM ref self, int value)\end{verbatim}
 
2796
 
 
2797
 
 
2798
\noindent{\bf Arguments:}
 
2799
 
 
2800
 
 
2801
\vspace{0.3cm}
 
2802
\begin{tabular}{|c|c|p{7cm}|}
 
2803
 \hline
 
2804
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2805
{\tt VM ref } & self & reference to the object \\ \hline 
 
2806
 
 
2807
{\tt int } & value & New value to set \\ \hline 
 
2808
 
 
2809
\end{tabular}
 
2810
 
 
2811
\vspace{0.3cm}
 
2812
 
 
2813
 \noindent {\bf Return Type:} 
 
2814
{\tt 
 
2815
void
 
2816
}
 
2817
 
 
2818
 
 
2819
 
 
2820
\vspace{0.3cm}
 
2821
\vspace{0.3cm}
 
2822
\vspace{0.3cm}
 
2823
\subsubsection{RPC name:~get\_memory\_static\_min}
 
2824
 
 
2825
{\bf Overview:} 
 
2826
Get the memory/static\_min field of the given VM.
 
2827
 
 
2828
 \noindent {\bf Signature:} 
 
2829
\begin{verbatim} int get_memory_static_min (session_id s, VM ref self)\end{verbatim}
 
2830
 
 
2831
 
 
2832
\noindent{\bf Arguments:}
 
2833
 
 
2834
 
 
2835
\vspace{0.3cm}
 
2836
\begin{tabular}{|c|c|p{7cm}|}
 
2837
 \hline
 
2838
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2839
{\tt VM ref } & self & reference to the object \\ \hline 
 
2840
 
 
2841
\end{tabular}
 
2842
 
 
2843
\vspace{0.3cm}
 
2844
 
 
2845
 \noindent {\bf Return Type:} 
 
2846
{\tt 
 
2847
int
 
2848
}
 
2849
 
 
2850
 
 
2851
value of the field
 
2852
\vspace{0.3cm}
 
2853
\vspace{0.3cm}
 
2854
\vspace{0.3cm}
 
2855
\subsubsection{RPC name:~set\_memory\_static\_min}
 
2856
 
 
2857
{\bf Overview:} 
 
2858
Set the memory/static\_min field of the given VM.
 
2859
 
 
2860
 \noindent {\bf Signature:} 
 
2861
\begin{verbatim} void set_memory_static_min (session_id s, VM ref self, int value)\end{verbatim}
 
2862
 
 
2863
 
 
2864
\noindent{\bf Arguments:}
 
2865
 
 
2866
 
 
2867
\vspace{0.3cm}
 
2868
\begin{tabular}{|c|c|p{7cm}|}
 
2869
 \hline
 
2870
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2871
{\tt VM ref } & self & reference to the object \\ \hline 
 
2872
 
 
2873
{\tt int } & value & New value to set \\ \hline 
 
2874
 
 
2875
\end{tabular}
 
2876
 
 
2877
\vspace{0.3cm}
 
2878
 
 
2879
 \noindent {\bf Return Type:} 
 
2880
{\tt 
 
2881
void
 
2882
}
 
2883
 
 
2884
 
 
2885
 
 
2886
\vspace{0.3cm}
 
2887
\vspace{0.3cm}
 
2888
\vspace{0.3cm}
 
2889
\subsubsection{RPC name:~get\_VCPUs\_params}
 
2890
 
 
2891
{\bf Overview:} 
 
2892
Get the VCPUs/params field of the given VM.
 
2893
 
 
2894
 \noindent {\bf Signature:} 
 
2895
\begin{verbatim} ((string -> string) Map) get_VCPUs_params (session_id s, VM ref self)\end{verbatim}
 
2896
 
 
2897
 
 
2898
\noindent{\bf Arguments:}
 
2899
 
 
2900
 
 
2901
\vspace{0.3cm}
 
2902
\begin{tabular}{|c|c|p{7cm}|}
 
2903
 \hline
 
2904
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2905
{\tt VM ref } & self & reference to the object \\ \hline 
 
2906
 
 
2907
\end{tabular}
 
2908
 
 
2909
\vspace{0.3cm}
 
2910
 
 
2911
 \noindent {\bf Return Type:} 
 
2912
{\tt 
 
2913
(string $\rightarrow$ string) Map
 
2914
}
 
2915
 
 
2916
 
 
2917
value of the field
 
2918
\vspace{0.3cm}
 
2919
\vspace{0.3cm}
 
2920
\vspace{0.3cm}
 
2921
\subsubsection{RPC name:~set\_VCPUs\_params}
 
2922
 
 
2923
{\bf Overview:} 
 
2924
Set the VCPUs/params field of the given VM.
 
2925
 
 
2926
 \noindent {\bf Signature:} 
 
2927
\begin{verbatim} void set_VCPUs_params (session_id s, VM ref self, (string -> string) Map value)\end{verbatim}
 
2928
 
 
2929
 
 
2930
\noindent{\bf Arguments:}
 
2931
 
 
2932
 
 
2933
\vspace{0.3cm}
 
2934
\begin{tabular}{|c|c|p{7cm}|}
 
2935
 \hline
 
2936
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2937
{\tt VM ref } & self & reference to the object \\ \hline 
 
2938
 
 
2939
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
2940
 
 
2941
\end{tabular}
 
2942
 
 
2943
\vspace{0.3cm}
 
2944
 
 
2945
 \noindent {\bf Return Type:} 
 
2946
{\tt 
 
2947
void
 
2948
}
 
2949
 
 
2950
 
 
2951
 
 
2952
\vspace{0.3cm}
 
2953
\vspace{0.3cm}
 
2954
\vspace{0.3cm}
 
2955
\subsubsection{RPC name:~add\_to\_VCPUs\_params}
 
2956
 
 
2957
{\bf Overview:} 
 
2958
Add the given key-value pair to the VCPUs/params field of the given VM.
 
2959
 
 
2960
 \noindent {\bf Signature:} 
 
2961
\begin{verbatim} void add_to_VCPUs_params (session_id s, VM ref self, string key, string value)\end{verbatim}
 
2962
 
 
2963
 
 
2964
\noindent{\bf Arguments:}
 
2965
 
 
2966
 
 
2967
\vspace{0.3cm}
 
2968
\begin{tabular}{|c|c|p{7cm}|}
 
2969
 \hline
 
2970
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
2971
{\tt VM ref } & self & reference to the object \\ \hline 
 
2972
 
 
2973
{\tt string } & key & Key to add \\ \hline 
 
2974
 
 
2975
{\tt string } & value & Value to add \\ \hline 
 
2976
 
 
2977
\end{tabular}
 
2978
 
 
2979
\vspace{0.3cm}
 
2980
 
 
2981
 \noindent {\bf Return Type:} 
 
2982
{\tt 
 
2983
void
 
2984
}
 
2985
 
 
2986
 
 
2987
 
 
2988
\vspace{0.3cm}
 
2989
\vspace{0.3cm}
 
2990
\vspace{0.3cm}
 
2991
\subsubsection{RPC name:~remove\_from\_VCPUs\_params}
 
2992
 
 
2993
{\bf Overview:} 
 
2994
Remove the given key and its corresponding value from the VCPUs/params
 
2995
field of the given VM.  If the key is not in that Map, then do nothing.
 
2996
 
 
2997
 \noindent {\bf Signature:} 
 
2998
\begin{verbatim} void remove_from_VCPUs_params (session_id s, VM ref self, string key)\end{verbatim}
 
2999
 
 
3000
 
 
3001
\noindent{\bf Arguments:}
 
3002
 
 
3003
 
 
3004
\vspace{0.3cm}
 
3005
\begin{tabular}{|c|c|p{7cm}|}
 
3006
 \hline
 
3007
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3008
{\tt VM ref } & self & reference to the object \\ \hline 
 
3009
 
 
3010
{\tt string } & key & Key to remove \\ \hline 
 
3011
 
 
3012
\end{tabular}
 
3013
 
 
3014
\vspace{0.3cm}
 
3015
 
 
3016
 \noindent {\bf Return Type:} 
 
3017
{\tt 
 
3018
void
 
3019
}
 
3020
 
 
3021
 
 
3022
 
 
3023
\vspace{0.3cm}
 
3024
\vspace{0.3cm}
 
3025
\vspace{0.3cm}
 
3026
\subsubsection{RPC name:~get\_VCPUs\_max}
 
3027
 
 
3028
{\bf Overview:} 
 
3029
Get the VCPUs/max field of the given VM.
 
3030
 
 
3031
 \noindent {\bf Signature:} 
 
3032
\begin{verbatim} int get_VCPUs_max (session_id s, VM ref self)\end{verbatim}
 
3033
 
 
3034
 
 
3035
\noindent{\bf Arguments:}
 
3036
 
 
3037
 
 
3038
\vspace{0.3cm}
 
3039
\begin{tabular}{|c|c|p{7cm}|}
 
3040
 \hline
 
3041
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3042
{\tt VM ref } & self & reference to the object \\ \hline 
 
3043
 
 
3044
\end{tabular}
 
3045
 
 
3046
\vspace{0.3cm}
 
3047
 
 
3048
 \noindent {\bf Return Type:} 
 
3049
{\tt 
 
3050
int
 
3051
}
 
3052
 
 
3053
 
 
3054
value of the field
 
3055
\vspace{0.3cm}
 
3056
\vspace{0.3cm}
 
3057
\vspace{0.3cm}
 
3058
\subsubsection{RPC name:~set\_VCPUs\_max}
 
3059
 
 
3060
{\bf Overview:} 
 
3061
Set the VCPUs/max field of the given VM.
 
3062
 
 
3063
 \noindent {\bf Signature:} 
 
3064
\begin{verbatim} void set_VCPUs_max (session_id s, VM ref self, int value)\end{verbatim}
 
3065
 
 
3066
 
 
3067
\noindent{\bf Arguments:}
 
3068
 
 
3069
 
 
3070
\vspace{0.3cm}
 
3071
\begin{tabular}{|c|c|p{7cm}|}
 
3072
 \hline
 
3073
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3074
{\tt VM ref } & self & reference to the object \\ \hline 
 
3075
 
 
3076
{\tt int } & value & New value to set \\ \hline 
 
3077
 
 
3078
\end{tabular}
 
3079
 
 
3080
\vspace{0.3cm}
 
3081
 
 
3082
 \noindent {\bf Return Type:} 
 
3083
{\tt 
 
3084
void
 
3085
}
 
3086
 
 
3087
 
 
3088
 
 
3089
\vspace{0.3cm}
 
3090
\vspace{0.3cm}
 
3091
\vspace{0.3cm}
 
3092
\subsubsection{RPC name:~get\_VCPUs\_at\_startup}
 
3093
 
 
3094
{\bf Overview:} 
 
3095
Get the VCPUs/at\_startup field of the given VM.
 
3096
 
 
3097
 \noindent {\bf Signature:} 
 
3098
\begin{verbatim} int get_VCPUs_at_startup (session_id s, VM ref self)\end{verbatim}
 
3099
 
 
3100
 
 
3101
\noindent{\bf Arguments:}
 
3102
 
 
3103
 
 
3104
\vspace{0.3cm}
 
3105
\begin{tabular}{|c|c|p{7cm}|}
 
3106
 \hline
 
3107
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3108
{\tt VM ref } & self & reference to the object \\ \hline 
 
3109
 
 
3110
\end{tabular}
 
3111
 
 
3112
\vspace{0.3cm}
 
3113
 
 
3114
 \noindent {\bf Return Type:} 
 
3115
{\tt 
 
3116
int
 
3117
}
 
3118
 
 
3119
 
 
3120
value of the field
 
3121
\vspace{0.3cm}
 
3122
\vspace{0.3cm}
 
3123
\vspace{0.3cm}
 
3124
\subsubsection{RPC name:~set\_VCPUs\_at\_startup}
 
3125
 
 
3126
{\bf Overview:} 
 
3127
Set the VCPUs/at\_startup field of the given VM.
 
3128
 
 
3129
 \noindent {\bf Signature:} 
 
3130
\begin{verbatim} void set_VCPUs_at_startup (session_id s, VM ref self, int value)\end{verbatim}
 
3131
 
 
3132
 
 
3133
\noindent{\bf Arguments:}
 
3134
 
 
3135
 
 
3136
\vspace{0.3cm}
 
3137
\begin{tabular}{|c|c|p{7cm}|}
 
3138
 \hline
 
3139
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3140
{\tt VM ref } & self & reference to the object \\ \hline 
 
3141
 
 
3142
{\tt int } & value & New value to set \\ \hline 
 
3143
 
 
3144
\end{tabular}
 
3145
 
 
3146
\vspace{0.3cm}
 
3147
 
 
3148
 \noindent {\bf Return Type:} 
 
3149
{\tt 
 
3150
void
 
3151
}
 
3152
 
 
3153
 
 
3154
 
 
3155
\vspace{0.3cm}
 
3156
\vspace{0.3cm}
 
3157
\vspace{0.3cm}
 
3158
\subsubsection{RPC name:~get\_actions\_after\_shutdown}
 
3159
 
 
3160
{\bf Overview:} 
 
3161
Get the actions/after\_shutdown field of the given VM.
 
3162
 
 
3163
 \noindent {\bf Signature:} 
 
3164
\begin{verbatim} (on_normal_exit) get_actions_after_shutdown (session_id s, VM ref self)\end{verbatim}
 
3165
 
 
3166
 
 
3167
\noindent{\bf Arguments:}
 
3168
 
 
3169
 
 
3170
\vspace{0.3cm}
 
3171
\begin{tabular}{|c|c|p{7cm}|}
 
3172
 \hline
 
3173
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3174
{\tt VM ref } & self & reference to the object \\ \hline 
 
3175
 
 
3176
\end{tabular}
 
3177
 
 
3178
\vspace{0.3cm}
 
3179
 
 
3180
 \noindent {\bf Return Type:} 
 
3181
{\tt 
 
3182
on\_normal\_exit
 
3183
}
 
3184
 
 
3185
 
 
3186
value of the field
 
3187
\vspace{0.3cm}
 
3188
\vspace{0.3cm}
 
3189
\vspace{0.3cm}
 
3190
\subsubsection{RPC name:~set\_actions\_after\_shutdown}
 
3191
 
 
3192
{\bf Overview:} 
 
3193
Set the actions/after\_shutdown field of the given VM.
 
3194
 
 
3195
 \noindent {\bf Signature:} 
 
3196
\begin{verbatim} void set_actions_after_shutdown (session_id s, VM ref self, on_normal_exit value)\end{verbatim}
 
3197
 
 
3198
 
 
3199
\noindent{\bf Arguments:}
 
3200
 
 
3201
 
 
3202
\vspace{0.3cm}
 
3203
\begin{tabular}{|c|c|p{7cm}|}
 
3204
 \hline
 
3205
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3206
{\tt VM ref } & self & reference to the object \\ \hline 
 
3207
 
 
3208
{\tt on\_normal\_exit } & value & New value to set \\ \hline 
 
3209
 
 
3210
\end{tabular}
 
3211
 
 
3212
\vspace{0.3cm}
 
3213
 
 
3214
 \noindent {\bf Return Type:} 
 
3215
{\tt 
 
3216
void
 
3217
}
 
3218
 
 
3219
 
 
3220
 
 
3221
\vspace{0.3cm}
 
3222
\vspace{0.3cm}
 
3223
\vspace{0.3cm}
 
3224
\subsubsection{RPC name:~get\_actions\_after\_reboot}
 
3225
 
 
3226
{\bf Overview:} 
 
3227
Get the actions/after\_reboot field of the given VM.
 
3228
 
 
3229
 \noindent {\bf Signature:} 
 
3230
\begin{verbatim} (on_normal_exit) get_actions_after_reboot (session_id s, VM ref self)\end{verbatim}
 
3231
 
 
3232
 
 
3233
\noindent{\bf Arguments:}
 
3234
 
 
3235
 
 
3236
\vspace{0.3cm}
 
3237
\begin{tabular}{|c|c|p{7cm}|}
 
3238
 \hline
 
3239
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3240
{\tt VM ref } & self & reference to the object \\ \hline 
 
3241
 
 
3242
\end{tabular}
 
3243
 
 
3244
\vspace{0.3cm}
 
3245
 
 
3246
 \noindent {\bf Return Type:} 
 
3247
{\tt 
 
3248
on\_normal\_exit
 
3249
}
 
3250
 
 
3251
 
 
3252
value of the field
 
3253
\vspace{0.3cm}
 
3254
\vspace{0.3cm}
 
3255
\vspace{0.3cm}
 
3256
\subsubsection{RPC name:~set\_actions\_after\_reboot}
 
3257
 
 
3258
{\bf Overview:} 
 
3259
Set the actions/after\_reboot field of the given VM.
 
3260
 
 
3261
 \noindent {\bf Signature:} 
 
3262
\begin{verbatim} void set_actions_after_reboot (session_id s, VM ref self, on_normal_exit value)\end{verbatim}
 
3263
 
 
3264
 
 
3265
\noindent{\bf Arguments:}
 
3266
 
 
3267
 
 
3268
\vspace{0.3cm}
 
3269
\begin{tabular}{|c|c|p{7cm}|}
 
3270
 \hline
 
3271
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3272
{\tt VM ref } & self & reference to the object \\ \hline 
 
3273
 
 
3274
{\tt on\_normal\_exit } & value & New value to set \\ \hline 
 
3275
 
 
3276
\end{tabular}
 
3277
 
 
3278
\vspace{0.3cm}
 
3279
 
 
3280
 \noindent {\bf Return Type:} 
 
3281
{\tt 
 
3282
void
 
3283
}
 
3284
 
 
3285
 
 
3286
 
 
3287
\vspace{0.3cm}
 
3288
\vspace{0.3cm}
 
3289
\vspace{0.3cm}
 
3290
\subsubsection{RPC name:~get\_actions\_after\_crash}
 
3291
 
 
3292
{\bf Overview:} 
 
3293
Get the actions/after\_crash field of the given VM.
 
3294
 
 
3295
 \noindent {\bf Signature:} 
 
3296
\begin{verbatim} (on_crash_behaviour) get_actions_after_crash (session_id s, VM ref self)\end{verbatim}
 
3297
 
 
3298
 
 
3299
\noindent{\bf Arguments:}
 
3300
 
 
3301
 
 
3302
\vspace{0.3cm}
 
3303
\begin{tabular}{|c|c|p{7cm}|}
 
3304
 \hline
 
3305
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3306
{\tt VM ref } & self & reference to the object \\ \hline 
 
3307
 
 
3308
\end{tabular}
 
3309
 
 
3310
\vspace{0.3cm}
 
3311
 
 
3312
 \noindent {\bf Return Type:} 
 
3313
{\tt 
 
3314
on\_crash\_behaviour
 
3315
}
 
3316
 
 
3317
 
 
3318
value of the field
 
3319
\vspace{0.3cm}
 
3320
\vspace{0.3cm}
 
3321
\vspace{0.3cm}
 
3322
\subsubsection{RPC name:~set\_actions\_after\_crash}
 
3323
 
 
3324
{\bf Overview:} 
 
3325
Set the actions/after\_crash field of the given VM.
 
3326
 
 
3327
 \noindent {\bf Signature:} 
 
3328
\begin{verbatim} void set_actions_after_crash (session_id s, VM ref self, on_crash_behaviour value)\end{verbatim}
 
3329
 
 
3330
 
 
3331
\noindent{\bf Arguments:}
 
3332
 
 
3333
 
 
3334
\vspace{0.3cm}
 
3335
\begin{tabular}{|c|c|p{7cm}|}
 
3336
 \hline
 
3337
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3338
{\tt VM ref } & self & reference to the object \\ \hline 
 
3339
 
 
3340
{\tt on\_crash\_behaviour } & value & New value to set \\ \hline 
 
3341
 
 
3342
\end{tabular}
 
3343
 
 
3344
\vspace{0.3cm}
 
3345
 
 
3346
 \noindent {\bf Return Type:} 
 
3347
{\tt 
 
3348
void
 
3349
}
 
3350
 
 
3351
 
 
3352
 
 
3353
\vspace{0.3cm}
 
3354
\vspace{0.3cm}
 
3355
\vspace{0.3cm}
 
3356
\subsubsection{RPC name:~get\_consoles}
 
3357
 
 
3358
{\bf Overview:} 
 
3359
Get the consoles field of the given VM.
 
3360
 
 
3361
 \noindent {\bf Signature:} 
 
3362
\begin{verbatim} ((console ref) Set) get_consoles (session_id s, VM ref self)\end{verbatim}
 
3363
 
 
3364
 
 
3365
\noindent{\bf Arguments:}
 
3366
 
 
3367
 
 
3368
\vspace{0.3cm}
 
3369
\begin{tabular}{|c|c|p{7cm}|}
 
3370
 \hline
 
3371
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3372
{\tt VM ref } & self & reference to the object \\ \hline 
 
3373
 
 
3374
\end{tabular}
 
3375
 
 
3376
\vspace{0.3cm}
 
3377
 
 
3378
 \noindent {\bf Return Type:} 
 
3379
{\tt 
 
3380
(console ref) Set
 
3381
}
 
3382
 
 
3383
 
 
3384
value of the field
 
3385
\vspace{0.3cm}
 
3386
\vspace{0.3cm}
 
3387
\vspace{0.3cm}
 
3388
\subsubsection{RPC name:~get\_VIFs}
 
3389
 
 
3390
{\bf Overview:} 
 
3391
Get the VIFs field of the given VM.
 
3392
 
 
3393
 \noindent {\bf Signature:} 
 
3394
\begin{verbatim} ((VIF ref) Set) get_VIFs (session_id s, VM ref self)\end{verbatim}
 
3395
 
 
3396
 
 
3397
\noindent{\bf Arguments:}
 
3398
 
 
3399
 
 
3400
\vspace{0.3cm}
 
3401
\begin{tabular}{|c|c|p{7cm}|}
 
3402
 \hline
 
3403
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3404
{\tt VM ref } & self & reference to the object \\ \hline 
 
3405
 
 
3406
\end{tabular}
 
3407
 
 
3408
\vspace{0.3cm}
 
3409
 
 
3410
 \noindent {\bf Return Type:} 
 
3411
{\tt 
 
3412
(VIF ref) Set
 
3413
}
 
3414
 
 
3415
 
 
3416
value of the field
 
3417
\vspace{0.3cm}
 
3418
\vspace{0.3cm}
 
3419
\vspace{0.3cm}
 
3420
\subsubsection{RPC name:~get\_VBDs}
 
3421
 
 
3422
{\bf Overview:} 
 
3423
Get the VBDs field of the given VM.
 
3424
 
 
3425
 \noindent {\bf Signature:} 
 
3426
\begin{verbatim} ((VBD ref) Set) get_VBDs (session_id s, VM ref self)\end{verbatim}
 
3427
 
 
3428
 
 
3429
\noindent{\bf Arguments:}
 
3430
 
 
3431
 
 
3432
\vspace{0.3cm}
 
3433
\begin{tabular}{|c|c|p{7cm}|}
 
3434
 \hline
 
3435
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3436
{\tt VM ref } & self & reference to the object \\ \hline 
 
3437
 
 
3438
\end{tabular}
 
3439
 
 
3440
\vspace{0.3cm}
 
3441
 
 
3442
 \noindent {\bf Return Type:} 
 
3443
{\tt 
 
3444
(VBD ref) Set
 
3445
}
 
3446
 
 
3447
 
 
3448
value of the field
 
3449
\vspace{0.3cm}
 
3450
\vspace{0.3cm}
 
3451
\vspace{0.3cm}
 
3452
\subsubsection{RPC name:~get\_crash\_dumps}
 
3453
 
 
3454
{\bf Overview:} 
 
3455
Get the crash\_dumps field of the given VM.
 
3456
 
 
3457
 \noindent {\bf Signature:} 
 
3458
\begin{verbatim} ((crashdump ref) Set) get_crash_dumps (session_id s, VM ref self)\end{verbatim}
 
3459
 
 
3460
 
 
3461
\noindent{\bf Arguments:}
 
3462
 
 
3463
 
 
3464
\vspace{0.3cm}
 
3465
\begin{tabular}{|c|c|p{7cm}|}
 
3466
 \hline
 
3467
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3468
{\tt VM ref } & self & reference to the object \\ \hline 
 
3469
 
 
3470
\end{tabular}
 
3471
 
 
3472
\vspace{0.3cm}
 
3473
 
 
3474
 \noindent {\bf Return Type:} 
 
3475
{\tt 
 
3476
(crashdump ref) Set
 
3477
}
 
3478
 
 
3479
 
 
3480
value of the field
 
3481
\vspace{0.3cm}
 
3482
\vspace{0.3cm}
 
3483
\vspace{0.3cm}
 
3484
\subsubsection{RPC name:~get\_VTPMs}
 
3485
 
 
3486
{\bf Overview:} 
 
3487
Get the VTPMs field of the given VM.
 
3488
 
 
3489
 \noindent {\bf Signature:} 
 
3490
\begin{verbatim} ((VTPM ref) Set) get_VTPMs (session_id s, VM ref self)\end{verbatim}
 
3491
 
 
3492
 
 
3493
\noindent{\bf Arguments:}
 
3494
 
 
3495
 
 
3496
\vspace{0.3cm}
 
3497
\begin{tabular}{|c|c|p{7cm}|}
 
3498
 \hline
 
3499
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3500
{\tt VM ref } & self & reference to the object \\ \hline 
 
3501
 
 
3502
\end{tabular}
 
3503
 
 
3504
\vspace{0.3cm}
 
3505
 
 
3506
 \noindent {\bf Return Type:} 
 
3507
{\tt 
 
3508
(VTPM ref) Set
 
3509
}
 
3510
 
 
3511
 
 
3512
value of the field
 
3513
\vspace{0.3cm}
 
3514
\vspace{0.3cm}
 
3515
\vspace{0.3cm}
 
3516
\subsubsection{RPC name:~get\_DPCIs}
 
3517
 
 
3518
{\bf Overview:} 
 
3519
Get the DPCIs field of the given VM.
 
3520
 
 
3521
 \noindent {\bf Signature:} 
 
3522
\begin{verbatim} ((DPCI ref) Set) get_DPCIs (session_id s, VM ref self)\end{verbatim}
 
3523
 
 
3524
 
 
3525
\noindent{\bf Arguments:}
 
3526
 
 
3527
 
 
3528
\vspace{0.3cm}
 
3529
\begin{tabular}{|c|c|p{7cm}|}
 
3530
 \hline
 
3531
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3532
{\tt VM ref } & self & reference to the object \\ \hline 
 
3533
 
 
3534
\end{tabular}
 
3535
 
 
3536
\vspace{0.3cm}
 
3537
 
 
3538
 \noindent {\bf Return Type:} 
 
3539
{\tt 
 
3540
(DPCI ref) Set
 
3541
}
 
3542
 
 
3543
 
 
3544
value of the field
 
3545
\vspace{0.3cm}
 
3546
\vspace{0.3cm}
 
3547
\vspace{0.3cm}
 
3548
\subsubsection{RPC name:~get\_DSCSIs}
 
3549
 
 
3550
{\bf Overview:} 
 
3551
Get the DSCSIs field of the given VM.
 
3552
 
 
3553
 \noindent {\bf Signature:} 
 
3554
\begin{verbatim} ((DSCSI ref) Set) get_DSCSIs (session_id s, VM ref self)\end{verbatim}
 
3555
 
 
3556
 
 
3557
\noindent{\bf Arguments:}
 
3558
 
 
3559
 
 
3560
\vspace{0.3cm}
 
3561
\begin{tabular}{|c|c|p{7cm}|}
 
3562
 \hline
 
3563
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3564
{\tt VM ref } & self & reference to the object \\ \hline 
 
3565
 
 
3566
\end{tabular}
 
3567
 
 
3568
\vspace{0.3cm}
 
3569
 
 
3570
 \noindent {\bf Return Type:} 
 
3571
{\tt 
 
3572
(DSCSI ref) Set
 
3573
}
 
3574
 
 
3575
 
 
3576
value of the field
 
3577
\vspace{0.3cm}
 
3578
\vspace{0.3cm}
 
3579
\vspace{0.3cm}
 
3580
\subsubsection{RPC name:~get\_DSCSI\_HBAs}
 
3581
 
 
3582
{\bf Overview:} 
 
3583
Get the DSCSI\_HBAs field of the given VM.
 
3584
 
 
3585
 \noindent {\bf Signature:} 
 
3586
\begin{verbatim} ((DSCSI_HBA ref) Set) get_DSCSI_HBAs (session_id s, VM ref self)\end{verbatim}
 
3587
 
 
3588
 
 
3589
\noindent{\bf Arguments:}
 
3590
 
 
3591
 
 
3592
\vspace{0.3cm}
 
3593
\begin{tabular}{|c|c|p{7cm}|}
 
3594
 \hline
 
3595
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3596
{\tt VM ref } & self & reference to the object \\ \hline 
 
3597
 
 
3598
\end{tabular}
 
3599
 
 
3600
\vspace{0.3cm}
 
3601
 
 
3602
 \noindent {\bf Return Type:} 
 
3603
{\tt 
 
3604
(DSCSI\_HBA ref) Set
 
3605
}
 
3606
 
 
3607
 
 
3608
value of the field
 
3609
\vspace{0.3cm}
 
3610
\vspace{0.3cm}
 
3611
\vspace{0.3cm}
 
3612
\subsubsection{RPC name:~get\_PV\_bootloader}
 
3613
 
 
3614
{\bf Overview:} 
 
3615
Get the PV/bootloader field of the given VM.
 
3616
 
 
3617
 \noindent {\bf Signature:} 
 
3618
\begin{verbatim} string get_PV_bootloader (session_id s, VM ref self)\end{verbatim}
 
3619
 
 
3620
 
 
3621
\noindent{\bf Arguments:}
 
3622
 
 
3623
 
 
3624
\vspace{0.3cm}
 
3625
\begin{tabular}{|c|c|p{7cm}|}
 
3626
 \hline
 
3627
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3628
{\tt VM ref } & self & reference to the object \\ \hline 
 
3629
 
 
3630
\end{tabular}
 
3631
 
 
3632
\vspace{0.3cm}
 
3633
 
 
3634
 \noindent {\bf Return Type:} 
 
3635
{\tt 
 
3636
string
 
3637
}
 
3638
 
 
3639
 
 
3640
value of the field
 
3641
\vspace{0.3cm}
 
3642
\vspace{0.3cm}
 
3643
\vspace{0.3cm}
 
3644
\subsubsection{RPC name:~set\_PV\_bootloader}
 
3645
 
 
3646
{\bf Overview:} 
 
3647
Set the PV/bootloader field of the given VM.
 
3648
 
 
3649
 \noindent {\bf Signature:} 
 
3650
\begin{verbatim} void set_PV_bootloader (session_id s, VM ref self, string value)\end{verbatim}
 
3651
 
 
3652
 
 
3653
\noindent{\bf Arguments:}
 
3654
 
 
3655
 
 
3656
\vspace{0.3cm}
 
3657
\begin{tabular}{|c|c|p{7cm}|}
 
3658
 \hline
 
3659
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3660
{\tt VM ref } & self & reference to the object \\ \hline 
 
3661
 
 
3662
{\tt string } & value & New value to set \\ \hline 
 
3663
 
 
3664
\end{tabular}
 
3665
 
 
3666
\vspace{0.3cm}
 
3667
 
 
3668
 \noindent {\bf Return Type:} 
 
3669
{\tt 
 
3670
void
 
3671
}
 
3672
 
 
3673
 
 
3674
 
 
3675
\vspace{0.3cm}
 
3676
\vspace{0.3cm}
 
3677
\vspace{0.3cm}
 
3678
\subsubsection{RPC name:~get\_PV\_kernel}
 
3679
 
 
3680
{\bf Overview:} 
 
3681
Get the PV/kernel field of the given VM.
 
3682
 
 
3683
 \noindent {\bf Signature:} 
 
3684
\begin{verbatim} string get_PV_kernel (session_id s, VM ref self)\end{verbatim}
 
3685
 
 
3686
 
 
3687
\noindent{\bf Arguments:}
 
3688
 
 
3689
 
 
3690
\vspace{0.3cm}
 
3691
\begin{tabular}{|c|c|p{7cm}|}
 
3692
 \hline
 
3693
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3694
{\tt VM ref } & self & reference to the object \\ \hline 
 
3695
 
 
3696
\end{tabular}
 
3697
 
 
3698
\vspace{0.3cm}
 
3699
 
 
3700
 \noindent {\bf Return Type:} 
 
3701
{\tt 
 
3702
string
 
3703
}
 
3704
 
 
3705
 
 
3706
value of the field
 
3707
\vspace{0.3cm}
 
3708
\vspace{0.3cm}
 
3709
\vspace{0.3cm}
 
3710
\subsubsection{RPC name:~set\_PV\_kernel}
 
3711
 
 
3712
{\bf Overview:} 
 
3713
Set the PV/kernel field of the given VM.
 
3714
 
 
3715
 \noindent {\bf Signature:} 
 
3716
\begin{verbatim} void set_PV_kernel (session_id s, VM ref self, string value)\end{verbatim}
 
3717
 
 
3718
 
 
3719
\noindent{\bf Arguments:}
 
3720
 
 
3721
 
 
3722
\vspace{0.3cm}
 
3723
\begin{tabular}{|c|c|p{7cm}|}
 
3724
 \hline
 
3725
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3726
{\tt VM ref } & self & reference to the object \\ \hline 
 
3727
 
 
3728
{\tt string } & value & New value to set \\ \hline 
 
3729
 
 
3730
\end{tabular}
 
3731
 
 
3732
\vspace{0.3cm}
 
3733
 
 
3734
 \noindent {\bf Return Type:} 
 
3735
{\tt 
 
3736
void
 
3737
}
 
3738
 
 
3739
 
 
3740
 
 
3741
\vspace{0.3cm}
 
3742
\vspace{0.3cm}
 
3743
\vspace{0.3cm}
 
3744
\subsubsection{RPC name:~get\_PV\_ramdisk}
 
3745
 
 
3746
{\bf Overview:} 
 
3747
Get the PV/ramdisk field of the given VM.
 
3748
 
 
3749
 \noindent {\bf Signature:} 
 
3750
\begin{verbatim} string get_PV_ramdisk (session_id s, VM ref self)\end{verbatim}
 
3751
 
 
3752
 
 
3753
\noindent{\bf Arguments:}
 
3754
 
 
3755
 
 
3756
\vspace{0.3cm}
 
3757
\begin{tabular}{|c|c|p{7cm}|}
 
3758
 \hline
 
3759
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3760
{\tt VM ref } & self & reference to the object \\ \hline 
 
3761
 
 
3762
\end{tabular}
 
3763
 
 
3764
\vspace{0.3cm}
 
3765
 
 
3766
 \noindent {\bf Return Type:} 
 
3767
{\tt 
 
3768
string
 
3769
}
 
3770
 
 
3771
 
 
3772
value of the field
 
3773
\vspace{0.3cm}
 
3774
\vspace{0.3cm}
 
3775
\vspace{0.3cm}
 
3776
\subsubsection{RPC name:~set\_PV\_ramdisk}
 
3777
 
 
3778
{\bf Overview:} 
 
3779
Set the PV/ramdisk field of the given VM.
 
3780
 
 
3781
 \noindent {\bf Signature:} 
 
3782
\begin{verbatim} void set_PV_ramdisk (session_id s, VM ref self, string value)\end{verbatim}
 
3783
 
 
3784
 
 
3785
\noindent{\bf Arguments:}
 
3786
 
 
3787
 
 
3788
\vspace{0.3cm}
 
3789
\begin{tabular}{|c|c|p{7cm}|}
 
3790
 \hline
 
3791
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3792
{\tt VM ref } & self & reference to the object \\ \hline 
 
3793
 
 
3794
{\tt string } & value & New value to set \\ \hline 
 
3795
 
 
3796
\end{tabular}
 
3797
 
 
3798
\vspace{0.3cm}
 
3799
 
 
3800
 \noindent {\bf Return Type:} 
 
3801
{\tt 
 
3802
void
 
3803
}
 
3804
 
 
3805
 
 
3806
 
 
3807
\vspace{0.3cm}
 
3808
\vspace{0.3cm}
 
3809
\vspace{0.3cm}
 
3810
\subsubsection{RPC name:~get\_PV\_args}
 
3811
 
 
3812
{\bf Overview:} 
 
3813
Get the PV/args field of the given VM.
 
3814
 
 
3815
 \noindent {\bf Signature:} 
 
3816
\begin{verbatim} string get_PV_args (session_id s, VM ref self)\end{verbatim}
 
3817
 
 
3818
 
 
3819
\noindent{\bf Arguments:}
 
3820
 
 
3821
 
 
3822
\vspace{0.3cm}
 
3823
\begin{tabular}{|c|c|p{7cm}|}
 
3824
 \hline
 
3825
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3826
{\tt VM ref } & self & reference to the object \\ \hline 
 
3827
 
 
3828
\end{tabular}
 
3829
 
 
3830
\vspace{0.3cm}
 
3831
 
 
3832
 \noindent {\bf Return Type:} 
 
3833
{\tt 
 
3834
string
 
3835
}
 
3836
 
 
3837
 
 
3838
value of the field
 
3839
\vspace{0.3cm}
 
3840
\vspace{0.3cm}
 
3841
\vspace{0.3cm}
 
3842
\subsubsection{RPC name:~set\_PV\_args}
 
3843
 
 
3844
{\bf Overview:} 
 
3845
Set the PV/args field of the given VM.
 
3846
 
 
3847
 \noindent {\bf Signature:} 
 
3848
\begin{verbatim} void set_PV_args (session_id s, VM ref self, string value)\end{verbatim}
 
3849
 
 
3850
 
 
3851
\noindent{\bf Arguments:}
 
3852
 
 
3853
 
 
3854
\vspace{0.3cm}
 
3855
\begin{tabular}{|c|c|p{7cm}|}
 
3856
 \hline
 
3857
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3858
{\tt VM ref } & self & reference to the object \\ \hline 
 
3859
 
 
3860
{\tt string } & value & New value to set \\ \hline 
 
3861
 
 
3862
\end{tabular}
 
3863
 
 
3864
\vspace{0.3cm}
 
3865
 
 
3866
 \noindent {\bf Return Type:} 
 
3867
{\tt 
 
3868
void
 
3869
}
 
3870
 
 
3871
 
 
3872
 
 
3873
\vspace{0.3cm}
 
3874
\vspace{0.3cm}
 
3875
\vspace{0.3cm}
 
3876
\subsubsection{RPC name:~get\_PV\_bootloader\_args}
 
3877
 
 
3878
{\bf Overview:} 
 
3879
Get the PV/bootloader\_args field of the given VM.
 
3880
 
 
3881
 \noindent {\bf Signature:} 
 
3882
\begin{verbatim} string get_PV_bootloader_args (session_id s, VM ref self)\end{verbatim}
 
3883
 
 
3884
 
 
3885
\noindent{\bf Arguments:}
 
3886
 
 
3887
 
 
3888
\vspace{0.3cm}
 
3889
\begin{tabular}{|c|c|p{7cm}|}
 
3890
 \hline
 
3891
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3892
{\tt VM ref } & self & reference to the object \\ \hline 
 
3893
 
 
3894
\end{tabular}
 
3895
 
 
3896
\vspace{0.3cm}
 
3897
 
 
3898
 \noindent {\bf Return Type:} 
 
3899
{\tt 
 
3900
string
 
3901
}
 
3902
 
 
3903
 
 
3904
value of the field
 
3905
\vspace{0.3cm}
 
3906
\vspace{0.3cm}
 
3907
\vspace{0.3cm}
 
3908
\subsubsection{RPC name:~set\_PV\_bootloader\_args}
 
3909
 
 
3910
{\bf Overview:} 
 
3911
Set the PV/bootloader\_args field of the given VM.
 
3912
 
 
3913
 \noindent {\bf Signature:} 
 
3914
\begin{verbatim} void set_PV_bootloader_args (session_id s, VM ref self, string value)\end{verbatim}
 
3915
 
 
3916
 
 
3917
\noindent{\bf Arguments:}
 
3918
 
 
3919
 
 
3920
\vspace{0.3cm}
 
3921
\begin{tabular}{|c|c|p{7cm}|}
 
3922
 \hline
 
3923
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3924
{\tt VM ref } & self & reference to the object \\ \hline 
 
3925
 
 
3926
{\tt string } & value & New value to set \\ \hline 
 
3927
 
 
3928
\end{tabular}
 
3929
 
 
3930
\vspace{0.3cm}
 
3931
 
 
3932
 \noindent {\bf Return Type:} 
 
3933
{\tt 
 
3934
void
 
3935
}
 
3936
 
 
3937
 
 
3938
 
 
3939
\vspace{0.3cm}
 
3940
\vspace{0.3cm}
 
3941
\vspace{0.3cm}
 
3942
\subsubsection{RPC name:~get\_HVM\_boot\_policy}
 
3943
 
 
3944
{\bf Overview:} 
 
3945
Get the HVM/boot\_policy field of the given VM.
 
3946
 
 
3947
 \noindent {\bf Signature:} 
 
3948
\begin{verbatim} string get_HVM_boot_policy (session_id s, VM ref self)\end{verbatim}
 
3949
 
 
3950
 
 
3951
\noindent{\bf Arguments:}
 
3952
 
 
3953
 
 
3954
\vspace{0.3cm}
 
3955
\begin{tabular}{|c|c|p{7cm}|}
 
3956
 \hline
 
3957
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3958
{\tt VM ref } & self & reference to the object \\ \hline 
 
3959
 
 
3960
\end{tabular}
 
3961
 
 
3962
\vspace{0.3cm}
 
3963
 
 
3964
 \noindent {\bf Return Type:} 
 
3965
{\tt 
 
3966
string
 
3967
}
 
3968
 
 
3969
 
 
3970
value of the field
 
3971
\vspace{0.3cm}
 
3972
\vspace{0.3cm}
 
3973
\vspace{0.3cm}
 
3974
\subsubsection{RPC name:~set\_HVM\_boot\_policy}
 
3975
 
 
3976
{\bf Overview:} 
 
3977
Set the HVM/boot\_policy field of the given VM.
 
3978
 
 
3979
 \noindent {\bf Signature:} 
 
3980
\begin{verbatim} void set_HVM_boot_policy (session_id s, VM ref self, string value)\end{verbatim}
 
3981
 
 
3982
 
 
3983
\noindent{\bf Arguments:}
 
3984
 
 
3985
 
 
3986
\vspace{0.3cm}
 
3987
\begin{tabular}{|c|c|p{7cm}|}
 
3988
 \hline
 
3989
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
3990
{\tt VM ref } & self & reference to the object \\ \hline 
 
3991
 
 
3992
{\tt string } & value & New value to set \\ \hline 
 
3993
 
 
3994
\end{tabular}
 
3995
 
 
3996
\vspace{0.3cm}
 
3997
 
 
3998
 \noindent {\bf Return Type:} 
 
3999
{\tt 
 
4000
void
 
4001
}
 
4002
 
 
4003
 
 
4004
 
 
4005
\vspace{0.3cm}
 
4006
\vspace{0.3cm}
 
4007
\vspace{0.3cm}
 
4008
\subsubsection{RPC name:~get\_HVM\_boot\_params}
 
4009
 
 
4010
{\bf Overview:} 
 
4011
Get the HVM/boot\_params field of the given VM.
 
4012
 
 
4013
 \noindent {\bf Signature:} 
 
4014
\begin{verbatim} ((string -> string) Map) get_HVM_boot_params (session_id s, VM ref self)\end{verbatim}
 
4015
 
 
4016
 
 
4017
\noindent{\bf Arguments:}
 
4018
 
 
4019
 
 
4020
\vspace{0.3cm}
 
4021
\begin{tabular}{|c|c|p{7cm}|}
 
4022
 \hline
 
4023
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4024
{\tt VM ref } & self & reference to the object \\ \hline 
 
4025
 
 
4026
\end{tabular}
 
4027
 
 
4028
\vspace{0.3cm}
 
4029
 
 
4030
 \noindent {\bf Return Type:} 
 
4031
{\tt 
 
4032
(string $\rightarrow$ string) Map
 
4033
}
 
4034
 
 
4035
 
 
4036
value of the field
 
4037
\vspace{0.3cm}
 
4038
\vspace{0.3cm}
 
4039
\vspace{0.3cm}
 
4040
\subsubsection{RPC name:~set\_HVM\_boot\_params}
 
4041
 
 
4042
{\bf Overview:} 
 
4043
Set the HVM/boot\_params field of the given VM.
 
4044
 
 
4045
 \noindent {\bf Signature:} 
 
4046
\begin{verbatim} void set_HVM_boot_params (session_id s, VM ref self, (string -> string) Map value)\end{verbatim}
 
4047
 
 
4048
 
 
4049
\noindent{\bf Arguments:}
 
4050
 
 
4051
 
 
4052
\vspace{0.3cm}
 
4053
\begin{tabular}{|c|c|p{7cm}|}
 
4054
 \hline
 
4055
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4056
{\tt VM ref } & self & reference to the object \\ \hline 
 
4057
 
 
4058
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
4059
 
 
4060
\end{tabular}
 
4061
 
 
4062
\vspace{0.3cm}
 
4063
 
 
4064
 \noindent {\bf Return Type:} 
 
4065
{\tt 
 
4066
void
 
4067
}
 
4068
 
 
4069
 
 
4070
 
 
4071
\vspace{0.3cm}
 
4072
\vspace{0.3cm}
 
4073
\vspace{0.3cm}
 
4074
\subsubsection{RPC name:~add\_to\_HVM\_boot\_params}
 
4075
 
 
4076
{\bf Overview:} 
 
4077
Add the given key-value pair to the HVM/boot\_params field of the given VM.
 
4078
 
 
4079
 \noindent {\bf Signature:} 
 
4080
\begin{verbatim} void add_to_HVM_boot_params (session_id s, VM ref self, string key, string value)\end{verbatim}
 
4081
 
 
4082
 
 
4083
\noindent{\bf Arguments:}
 
4084
 
 
4085
 
 
4086
\vspace{0.3cm}
 
4087
\begin{tabular}{|c|c|p{7cm}|}
 
4088
 \hline
 
4089
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4090
{\tt VM ref } & self & reference to the object \\ \hline 
 
4091
 
 
4092
{\tt string } & key & Key to add \\ \hline 
 
4093
 
 
4094
{\tt string } & value & Value to add \\ \hline 
 
4095
 
 
4096
\end{tabular}
 
4097
 
 
4098
\vspace{0.3cm}
 
4099
 
 
4100
 \noindent {\bf Return Type:} 
 
4101
{\tt 
 
4102
void
 
4103
}
 
4104
 
 
4105
 
 
4106
 
 
4107
\vspace{0.3cm}
 
4108
\vspace{0.3cm}
 
4109
\vspace{0.3cm}
 
4110
\subsubsection{RPC name:~remove\_from\_HVM\_boot\_params}
 
4111
 
 
4112
{\bf Overview:} 
 
4113
Remove the given key and its corresponding value from the HVM/boot\_params
 
4114
field of the given VM.  If the key is not in that Map, then do nothing.
 
4115
 
 
4116
 \noindent {\bf Signature:} 
 
4117
\begin{verbatim} void remove_from_HVM_boot_params (session_id s, VM ref self, string key)\end{verbatim}
 
4118
 
 
4119
 
 
4120
\noindent{\bf Arguments:}
 
4121
 
 
4122
 
 
4123
\vspace{0.3cm}
 
4124
\begin{tabular}{|c|c|p{7cm}|}
 
4125
 \hline
 
4126
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4127
{\tt VM ref } & self & reference to the object \\ \hline 
 
4128
 
 
4129
{\tt string } & key & Key to remove \\ \hline 
 
4130
 
 
4131
\end{tabular}
 
4132
 
 
4133
\vspace{0.3cm}
 
4134
 
 
4135
 \noindent {\bf Return Type:} 
 
4136
{\tt 
 
4137
void
 
4138
}
 
4139
 
 
4140
 
 
4141
 
 
4142
\vspace{0.3cm}
 
4143
\vspace{0.3cm}
 
4144
\vspace{0.3cm}
 
4145
\subsubsection{RPC name:~get\_platform}
 
4146
 
 
4147
{\bf Overview:} 
 
4148
Get the platform field of the given VM.
 
4149
 
 
4150
 \noindent {\bf Signature:} 
 
4151
\begin{verbatim} ((string -> string) Map) get_platform (session_id s, VM ref self)\end{verbatim}
 
4152
 
 
4153
 
 
4154
\noindent{\bf Arguments:}
 
4155
 
 
4156
 
 
4157
\vspace{0.3cm}
 
4158
\begin{tabular}{|c|c|p{7cm}|}
 
4159
 \hline
 
4160
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4161
{\tt VM ref } & self & reference to the object \\ \hline 
 
4162
 
 
4163
\end{tabular}
 
4164
 
 
4165
\vspace{0.3cm}
 
4166
 
 
4167
 \noindent {\bf Return Type:} 
 
4168
{\tt 
 
4169
(string $\rightarrow$ string) Map
 
4170
}
 
4171
 
 
4172
 
 
4173
value of the field
 
4174
\vspace{0.3cm}
 
4175
\vspace{0.3cm}
 
4176
\vspace{0.3cm}
 
4177
\subsubsection{RPC name:~set\_platform}
 
4178
 
 
4179
{\bf Overview:} 
 
4180
Set the platform field of the given VM.
 
4181
 
 
4182
 \noindent {\bf Signature:} 
 
4183
\begin{verbatim} void set_platform (session_id s, VM ref self, (string -> string) Map value)\end{verbatim}
 
4184
 
 
4185
 
 
4186
\noindent{\bf Arguments:}
 
4187
 
 
4188
 
 
4189
\vspace{0.3cm}
 
4190
\begin{tabular}{|c|c|p{7cm}|}
 
4191
 \hline
 
4192
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4193
{\tt VM ref } & self & reference to the object \\ \hline 
 
4194
 
 
4195
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
4196
 
 
4197
\end{tabular}
 
4198
 
 
4199
\vspace{0.3cm}
 
4200
 
 
4201
 \noindent {\bf Return Type:} 
 
4202
{\tt 
 
4203
void
 
4204
}
 
4205
 
 
4206
 
 
4207
 
 
4208
\vspace{0.3cm}
 
4209
\vspace{0.3cm}
 
4210
\vspace{0.3cm}
 
4211
\subsubsection{RPC name:~add\_to\_platform}
 
4212
 
 
4213
{\bf Overview:} 
 
4214
Add the given key-value pair to the platform field of the given VM.
 
4215
 
 
4216
 \noindent {\bf Signature:} 
 
4217
\begin{verbatim} void add_to_platform (session_id s, VM ref self, string key, string value)\end{verbatim}
 
4218
 
 
4219
 
 
4220
\noindent{\bf Arguments:}
 
4221
 
 
4222
 
 
4223
\vspace{0.3cm}
 
4224
\begin{tabular}{|c|c|p{7cm}|}
 
4225
 \hline
 
4226
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4227
{\tt VM ref } & self & reference to the object \\ \hline 
 
4228
 
 
4229
{\tt string } & key & Key to add \\ \hline 
 
4230
 
 
4231
{\tt string } & value & Value to add \\ \hline 
 
4232
 
 
4233
\end{tabular}
 
4234
 
 
4235
\vspace{0.3cm}
 
4236
 
 
4237
 \noindent {\bf Return Type:} 
 
4238
{\tt 
 
4239
void
 
4240
}
 
4241
 
 
4242
 
 
4243
 
 
4244
\vspace{0.3cm}
 
4245
\vspace{0.3cm}
 
4246
\vspace{0.3cm}
 
4247
\subsubsection{RPC name:~remove\_from\_platform}
 
4248
 
 
4249
{\bf Overview:} 
 
4250
Remove the given key and its corresponding value from the platform field of
 
4251
the given VM.  If the key is not in that Map, then do nothing.
 
4252
 
 
4253
 \noindent {\bf Signature:} 
 
4254
\begin{verbatim} void remove_from_platform (session_id s, VM ref self, string key)\end{verbatim}
 
4255
 
 
4256
 
 
4257
\noindent{\bf Arguments:}
 
4258
 
 
4259
 
 
4260
\vspace{0.3cm}
 
4261
\begin{tabular}{|c|c|p{7cm}|}
 
4262
 \hline
 
4263
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4264
{\tt VM ref } & self & reference to the object \\ \hline 
 
4265
 
 
4266
{\tt string } & key & Key to remove \\ \hline 
 
4267
 
 
4268
\end{tabular}
 
4269
 
 
4270
\vspace{0.3cm}
 
4271
 
 
4272
 \noindent {\bf Return Type:} 
 
4273
{\tt 
 
4274
void
 
4275
}
 
4276
 
 
4277
 
 
4278
 
 
4279
\vspace{0.3cm}
 
4280
\vspace{0.3cm}
 
4281
\vspace{0.3cm}
 
4282
\subsubsection{RPC name:~get\_PCI\_bus}
 
4283
 
 
4284
{\bf Overview:} 
 
4285
Get the PCI\_bus field of the given VM.
 
4286
 
 
4287
 \noindent {\bf Signature:} 
 
4288
\begin{verbatim} string get_PCI_bus (session_id s, VM ref self)\end{verbatim}
 
4289
 
 
4290
 
 
4291
\noindent{\bf Arguments:}
 
4292
 
 
4293
 
 
4294
\vspace{0.3cm}
 
4295
\begin{tabular}{|c|c|p{7cm}|}
 
4296
 \hline
 
4297
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4298
{\tt VM ref } & self & reference to the object \\ \hline 
 
4299
 
 
4300
\end{tabular}
 
4301
 
 
4302
\vspace{0.3cm}
 
4303
 
 
4304
 \noindent {\bf Return Type:} 
 
4305
{\tt 
 
4306
string
 
4307
}
 
4308
 
 
4309
 
 
4310
value of the field
 
4311
\vspace{0.3cm}
 
4312
\vspace{0.3cm}
 
4313
\vspace{0.3cm}
 
4314
\subsubsection{RPC name:~set\_PCI\_bus}
 
4315
 
 
4316
{\bf Overview:} 
 
4317
Set the PCI\_bus field of the given VM.
 
4318
 
 
4319
 \noindent {\bf Signature:} 
 
4320
\begin{verbatim} void set_PCI_bus (session_id s, VM ref self, string value)\end{verbatim}
 
4321
 
 
4322
 
 
4323
\noindent{\bf Arguments:}
 
4324
 
 
4325
 
 
4326
\vspace{0.3cm}
 
4327
\begin{tabular}{|c|c|p{7cm}|}
 
4328
 \hline
 
4329
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4330
{\tt VM ref } & self & reference to the object \\ \hline 
 
4331
 
 
4332
{\tt string } & value & New value to set \\ \hline 
 
4333
 
 
4334
\end{tabular}
 
4335
 
 
4336
\vspace{0.3cm}
 
4337
 
 
4338
 \noindent {\bf Return Type:} 
 
4339
{\tt 
 
4340
void
 
4341
}
 
4342
 
 
4343
 
 
4344
 
 
4345
\vspace{0.3cm}
 
4346
\vspace{0.3cm}
 
4347
\vspace{0.3cm}
 
4348
\subsubsection{RPC name:~get\_other\_config}
 
4349
 
 
4350
{\bf Overview:} 
 
4351
Get the other\_config field of the given VM.
 
4352
 
 
4353
 \noindent {\bf Signature:} 
 
4354
\begin{verbatim} ((string -> string) Map) get_other_config (session_id s, VM ref self)\end{verbatim}
 
4355
 
 
4356
 
 
4357
\noindent{\bf Arguments:}
 
4358
 
 
4359
 
 
4360
\vspace{0.3cm}
 
4361
\begin{tabular}{|c|c|p{7cm}|}
 
4362
 \hline
 
4363
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4364
{\tt VM ref } & self & reference to the object \\ \hline 
 
4365
 
 
4366
\end{tabular}
 
4367
 
 
4368
\vspace{0.3cm}
 
4369
 
 
4370
 \noindent {\bf Return Type:} 
 
4371
{\tt 
 
4372
(string $\rightarrow$ string) Map
 
4373
}
 
4374
 
 
4375
 
 
4376
value of the field
 
4377
\vspace{0.3cm}
 
4378
\vspace{0.3cm}
 
4379
\vspace{0.3cm}
 
4380
\subsubsection{RPC name:~set\_other\_config}
 
4381
 
 
4382
{\bf Overview:} 
 
4383
Set the other\_config field of the given VM.
 
4384
 
 
4385
 \noindent {\bf Signature:} 
 
4386
\begin{verbatim} void set_other_config (session_id s, VM ref self, (string -> string) Map value)\end{verbatim}
 
4387
 
 
4388
 
 
4389
\noindent{\bf Arguments:}
 
4390
 
 
4391
 
 
4392
\vspace{0.3cm}
 
4393
\begin{tabular}{|c|c|p{7cm}|}
 
4394
 \hline
 
4395
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4396
{\tt VM ref } & self & reference to the object \\ \hline 
 
4397
 
 
4398
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
4399
 
 
4400
\end{tabular}
 
4401
 
 
4402
\vspace{0.3cm}
 
4403
 
 
4404
 \noindent {\bf Return Type:} 
 
4405
{\tt 
 
4406
void
 
4407
}
 
4408
 
 
4409
 
 
4410
 
 
4411
\vspace{0.3cm}
 
4412
\vspace{0.3cm}
 
4413
\vspace{0.3cm}
 
4414
\subsubsection{RPC name:~add\_to\_other\_config}
 
4415
 
 
4416
{\bf Overview:} 
 
4417
Add the given key-value pair to the other\_config field of the given VM.
 
4418
 
 
4419
 \noindent {\bf Signature:} 
 
4420
\begin{verbatim} void add_to_other_config (session_id s, VM ref self, string key, string value)\end{verbatim}
 
4421
 
 
4422
 
 
4423
\noindent{\bf Arguments:}
 
4424
 
 
4425
 
 
4426
\vspace{0.3cm}
 
4427
\begin{tabular}{|c|c|p{7cm}|}
 
4428
 \hline
 
4429
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4430
{\tt VM ref } & self & reference to the object \\ \hline 
 
4431
 
 
4432
{\tt string } & key & Key to add \\ \hline 
 
4433
 
 
4434
{\tt string } & value & Value to add \\ \hline 
 
4435
 
 
4436
\end{tabular}
 
4437
 
 
4438
\vspace{0.3cm}
 
4439
 
 
4440
 \noindent {\bf Return Type:} 
 
4441
{\tt 
 
4442
void
 
4443
}
 
4444
 
 
4445
 
 
4446
 
 
4447
\vspace{0.3cm}
 
4448
\vspace{0.3cm}
 
4449
\vspace{0.3cm}
 
4450
\subsubsection{RPC name:~remove\_from\_other\_config}
 
4451
 
 
4452
{\bf Overview:} 
 
4453
Remove the given key and its corresponding value from the other\_config
 
4454
field of the given VM.  If the key is not in that Map, then do nothing.
 
4455
 
 
4456
 \noindent {\bf Signature:} 
 
4457
\begin{verbatim} void remove_from_other_config (session_id s, VM ref self, string key)\end{verbatim}
 
4458
 
 
4459
 
 
4460
\noindent{\bf Arguments:}
 
4461
 
 
4462
 
 
4463
\vspace{0.3cm}
 
4464
\begin{tabular}{|c|c|p{7cm}|}
 
4465
 \hline
 
4466
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4467
{\tt VM ref } & self & reference to the object \\ \hline 
 
4468
 
 
4469
{\tt string } & key & Key to remove \\ \hline 
 
4470
 
 
4471
\end{tabular}
 
4472
 
 
4473
\vspace{0.3cm}
 
4474
 
 
4475
 \noindent {\bf Return Type:} 
 
4476
{\tt 
 
4477
void
 
4478
}
 
4479
 
 
4480
 
 
4481
 
 
4482
\vspace{0.3cm}
 
4483
\vspace{0.3cm}
 
4484
\vspace{0.3cm}
 
4485
\subsubsection{RPC name:~get\_domid}
 
4486
 
 
4487
{\bf Overview:} 
 
4488
Get the domid field of the given VM.
 
4489
 
 
4490
 \noindent {\bf Signature:} 
 
4491
\begin{verbatim} int get_domid (session_id s, VM ref self)\end{verbatim}
 
4492
 
 
4493
 
 
4494
\noindent{\bf Arguments:}
 
4495
 
 
4496
 
 
4497
\vspace{0.3cm}
 
4498
\begin{tabular}{|c|c|p{7cm}|}
 
4499
 \hline
 
4500
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4501
{\tt VM ref } & self & reference to the object \\ \hline 
 
4502
 
 
4503
\end{tabular}
 
4504
 
 
4505
\vspace{0.3cm}
 
4506
 
 
4507
 \noindent {\bf Return Type:} 
 
4508
{\tt 
 
4509
int
 
4510
}
 
4511
 
 
4512
 
 
4513
value of the field
 
4514
\vspace{0.3cm}
 
4515
\vspace{0.3cm}
 
4516
\vspace{0.3cm}
 
4517
\subsubsection{RPC name:~get\_is\_control\_domain}
 
4518
 
 
4519
{\bf Overview:} 
 
4520
Get the is\_control\_domain field of the given VM.
 
4521
 
 
4522
 \noindent {\bf Signature:} 
 
4523
\begin{verbatim} bool get_is_control_domain (session_id s, VM ref self)\end{verbatim}
 
4524
 
 
4525
 
 
4526
\noindent{\bf Arguments:}
 
4527
 
 
4528
 
 
4529
\vspace{0.3cm}
 
4530
\begin{tabular}{|c|c|p{7cm}|}
 
4531
 \hline
 
4532
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4533
{\tt VM ref } & self & reference to the object \\ \hline 
 
4534
 
 
4535
\end{tabular}
 
4536
 
 
4537
\vspace{0.3cm}
 
4538
 
 
4539
 \noindent {\bf Return Type:} 
 
4540
{\tt 
 
4541
bool
 
4542
}
 
4543
 
 
4544
 
 
4545
value of the field
 
4546
\vspace{0.3cm}
 
4547
\vspace{0.3cm}
 
4548
\vspace{0.3cm}
 
4549
\subsubsection{RPC name:~get\_metrics}
 
4550
 
 
4551
{\bf Overview:} 
 
4552
Get the metrics field of the given VM.
 
4553
 
 
4554
 \noindent {\bf Signature:} 
 
4555
\begin{verbatim} (VM_metrics ref) get_metrics (session_id s, VM ref self)\end{verbatim}
 
4556
 
 
4557
 
 
4558
\noindent{\bf Arguments:}
 
4559
 
 
4560
 
 
4561
\vspace{0.3cm}
 
4562
\begin{tabular}{|c|c|p{7cm}|}
 
4563
 \hline
 
4564
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4565
{\tt VM ref } & self & reference to the object \\ \hline 
 
4566
 
 
4567
\end{tabular}
 
4568
 
 
4569
\vspace{0.3cm}
 
4570
 
 
4571
 \noindent {\bf Return Type:} 
 
4572
{\tt 
 
4573
VM\_metrics ref
 
4574
}
 
4575
 
 
4576
 
 
4577
value of the field
 
4578
\vspace{0.3cm}
 
4579
\vspace{0.3cm}
 
4580
\vspace{0.3cm}
 
4581
\subsubsection{RPC name:~get\_guest\_metrics}
 
4582
 
 
4583
{\bf Overview:} 
 
4584
Get the guest\_metrics field of the given VM.
 
4585
 
 
4586
 \noindent {\bf Signature:} 
 
4587
\begin{verbatim} (VM_guest_metrics ref) get_guest_metrics (session_id s, VM ref self)\end{verbatim}
 
4588
 
 
4589
 
 
4590
\noindent{\bf Arguments:}
 
4591
 
 
4592
 
 
4593
\vspace{0.3cm}
 
4594
\begin{tabular}{|c|c|p{7cm}|}
 
4595
 \hline
 
4596
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4597
{\tt VM ref } & self & reference to the object \\ \hline 
 
4598
 
 
4599
\end{tabular}
 
4600
 
 
4601
\vspace{0.3cm}
 
4602
 
 
4603
 \noindent {\bf Return Type:} 
 
4604
{\tt 
 
4605
VM\_guest\_metrics ref
 
4606
}
 
4607
 
 
4608
 
 
4609
value of the field
 
4610
\vspace{0.3cm}
 
4611
\vspace{0.3cm}
 
4612
\vspace{0.3cm}
 
4613
\subsubsection{RPC name:~get\_security\_label}
 
4614
 
 
4615
{\bf Overview:}
 
4616
Get the security label field of the given VM. Refer to the XSPolicy class
 
4617
for the format of the security label.
 
4618
 
 
4619
 \noindent {\bf Signature:}
 
4620
\begin{verbatim} string get_security_label (session_id s, VM ref self)\end{verbatim}
 
4621
 
 
4622
 
 
4623
\noindent{\bf Arguments:}
 
4624
 
 
4625
 
 
4626
\vspace{0.3cm}
 
4627
\begin{tabular}{|c|c|p{7cm}|}
 
4628
 \hline
 
4629
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4630
{\tt VM ref } & self & reference to the object \\ \hline
 
4631
 
 
4632
\end{tabular}
 
4633
 
 
4634
\vspace{0.3cm}
 
4635
 
 
4636
 \noindent {\bf Return Type:}
 
4637
{\tt
 
4638
string
 
4639
}
 
4640
 
 
4641
 
 
4642
value of the field
 
4643
\vspace{0.3cm}
 
4644
\vspace{0.3cm}
 
4645
\vspace{0.3cm}
 
4646
\subsubsection{RPC name:~set\_security\_label}
 
4647
 
 
4648
{\bf Overview:}
 
4649
Set the security label field of the given VM. Refer to the XSPolicy class
 
4650
for the format of the security label.
 
4651
 
 
4652
 \noindent {\bf Signature:}
 
4653
\begin{verbatim} int set_security_label (session_id s, VM ref self, string
 
4654
security_label, string old_label)\end{verbatim}
 
4655
 
 
4656
 
 
4657
\noindent{\bf Arguments:}
 
4658
 
 
4659
 
 
4660
\vspace{0.3cm}
 
4661
\begin{tabular}{|c|c|p{7cm}|}
 
4662
 \hline
 
4663
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4664
{\tt VM ref } & self & reference to the object \\ \hline
 
4665
{\tt string } & security\_label & security label for the VM \\ \hline
 
4666
{\tt string } & old\_label & Label value that the security label \\
 
4667
& & must currently have for the change to succeed.\\ \hline
 
4668
 
 
4669
\end{tabular}
 
4670
 
 
4671
\vspace{0.3cm}
 
4672
 
 
4673
 \noindent {\bf Return Type:}
 
4674
{\tt
 
4675
int
 
4676
}
 
4677
 
 
4678
 
 
4679
Returns the ssidref in case of an VM that is currently running or
 
4680
paused, zero in case of a dormant VM (halted, suspended).
 
4681
 
 
4682
\vspace{0.3cm}
 
4683
 
 
4684
\noindent{\bf Possible Error Codes:} {\tt SECURITY\_ERROR}
 
4685
 
 
4686
\vspace{0.3cm}
 
4687
\vspace{0.3cm}
 
4688
\vspace{0.3cm}
 
4689
\subsubsection{RPC name:~create}
 
4690
 
 
4691
{\bf Overview:} 
 
4692
Create a new VM instance, and return its handle.
 
4693
 
 
4694
 \noindent {\bf Signature:} 
 
4695
\begin{verbatim} (VM ref) create (session_id s, VM record args)\end{verbatim}
 
4696
 
 
4697
 
 
4698
\noindent{\bf Arguments:}
 
4699
 
 
4700
 
 
4701
\vspace{0.3cm}
 
4702
\begin{tabular}{|c|c|p{7cm}|}
 
4703
 \hline
 
4704
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4705
{\tt VM record } & args & All constructor arguments \\ \hline 
 
4706
 
 
4707
\end{tabular}
 
4708
 
 
4709
\vspace{0.3cm}
 
4710
 
 
4711
 \noindent {\bf Return Type:} 
 
4712
{\tt 
 
4713
VM ref
 
4714
}
 
4715
 
 
4716
 
 
4717
reference to the newly created object
 
4718
\vspace{0.3cm}
 
4719
\vspace{0.3cm}
 
4720
\vspace{0.3cm}
 
4721
\subsubsection{RPC name:~destroy}
 
4722
 
 
4723
{\bf Overview:} 
 
4724
Destroy the specified VM.  The VM is completely removed from the system. 
 
4725
This function can only be called when the VM is in the Halted State.
 
4726
 
 
4727
 \noindent {\bf Signature:} 
 
4728
\begin{verbatim} void destroy (session_id s, VM ref self)\end{verbatim}
 
4729
 
 
4730
 
 
4731
\noindent{\bf Arguments:}
 
4732
 
 
4733
 
 
4734
\vspace{0.3cm}
 
4735
\begin{tabular}{|c|c|p{7cm}|}
 
4736
 \hline
 
4737
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4738
{\tt VM ref } & self & reference to the object \\ \hline 
 
4739
 
 
4740
\end{tabular}
 
4741
 
 
4742
\vspace{0.3cm}
 
4743
 
 
4744
 \noindent {\bf Return Type:} 
 
4745
{\tt 
 
4746
void
 
4747
}
 
4748
 
 
4749
 
 
4750
 
 
4751
\vspace{0.3cm}
 
4752
\vspace{0.3cm}
 
4753
\vspace{0.3cm}
 
4754
\subsubsection{RPC name:~get\_by\_uuid}
 
4755
 
 
4756
{\bf Overview:} 
 
4757
Get a reference to the VM instance with the specified UUID.
 
4758
 
 
4759
 \noindent {\bf Signature:} 
 
4760
\begin{verbatim} (VM ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
4761
 
 
4762
 
 
4763
\noindent{\bf Arguments:}
 
4764
 
 
4765
 
 
4766
\vspace{0.3cm}
 
4767
\begin{tabular}{|c|c|p{7cm}|}
 
4768
 \hline
 
4769
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4770
{\tt string } & uuid & UUID of object to return \\ \hline 
 
4771
 
 
4772
\end{tabular}
 
4773
 
 
4774
\vspace{0.3cm}
 
4775
 
 
4776
 \noindent {\bf Return Type:} 
 
4777
{\tt 
 
4778
VM ref
 
4779
}
 
4780
 
 
4781
 
 
4782
reference to the object
 
4783
\vspace{0.3cm}
 
4784
\vspace{0.3cm}
 
4785
\vspace{0.3cm}
 
4786
\subsubsection{RPC name:~get\_record}
 
4787
 
 
4788
{\bf Overview:} 
 
4789
Get a record containing the current state of the given VM.
 
4790
 
 
4791
 \noindent {\bf Signature:} 
 
4792
\begin{verbatim} (VM record) get_record (session_id s, VM ref self)\end{verbatim}
 
4793
 
 
4794
 
 
4795
\noindent{\bf Arguments:}
 
4796
 
 
4797
 
 
4798
\vspace{0.3cm}
 
4799
\begin{tabular}{|c|c|p{7cm}|}
 
4800
 \hline
 
4801
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4802
{\tt VM ref } & self & reference to the object \\ \hline 
 
4803
 
 
4804
\end{tabular}
 
4805
 
 
4806
\vspace{0.3cm}
 
4807
 
 
4808
 \noindent {\bf Return Type:} 
 
4809
{\tt 
 
4810
VM record
 
4811
}
 
4812
 
 
4813
 
 
4814
all fields from the object
 
4815
\vspace{0.3cm}
 
4816
\vspace{0.3cm}
 
4817
\vspace{0.3cm}
 
4818
\subsubsection{RPC name:~get\_by\_name\_label}
 
4819
 
 
4820
{\bf Overview:} 
 
4821
Get all the VM instances with the given label.
 
4822
 
 
4823
 \noindent {\bf Signature:} 
 
4824
\begin{verbatim} ((VM ref) Set) get_by_name_label (session_id s, string label)\end{verbatim}
 
4825
 
 
4826
 
 
4827
\noindent{\bf Arguments:}
 
4828
 
 
4829
 
 
4830
\vspace{0.3cm}
 
4831
\begin{tabular}{|c|c|p{7cm}|}
 
4832
 \hline
 
4833
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4834
{\tt string } & label & label of object to return \\ \hline 
 
4835
 
 
4836
\end{tabular}
 
4837
 
 
4838
\vspace{0.3cm}
 
4839
 
 
4840
 \noindent {\bf Return Type:} 
 
4841
{\tt 
 
4842
(VM ref) Set
 
4843
}
 
4844
 
 
4845
 
 
4846
references to objects with match names
 
4847
\vspace{0.3cm}
 
4848
\vspace{0.3cm}
 
4849
\vspace{0.3cm}
 
4850
 
 
4851
\vspace{1cm}
 
4852
\newpage
 
4853
\section{Class: VM\_metrics}
 
4854
\subsection{Fields for class: VM\_metrics}
 
4855
\begin{longtable}{|lllp{0.38\textwidth}|}
 
4856
\hline
 
4857
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VM\_metrics} \\
 
4858
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em
 
4859
The metrics associated with a VM.}} \\
 
4860
\hline
 
4861
Quals & Field & Type & Description \\
 
4862
\hline
 
4863
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
4864
$\mathit{RO}_\mathit{run}$ &  {\tt memory/actual} & int & Guest's actual memory (bytes) \\
 
4865
$\mathit{RO}_\mathit{run}$ &  {\tt VCPUs/number} & int & Current number of VCPUs \\
 
4866
$\mathit{RO}_\mathit{run}$ &  {\tt VCPUs/utilisation} & (int $\rightarrow$ float) Map & Utilisation for all of guest's current VCPUs \\
 
4867
$\mathit{RO}_\mathit{run}$ &  {\tt VCPUs/CPU} & (int $\rightarrow$ int) Map & VCPU to PCPU map \\
 
4868
$\mathit{RO}_\mathit{run}$ &  {\tt VCPUs/params} & (string $\rightarrow$ string) Map & The live equivalent to VM.VCPUs\_params \\
 
4869
$\mathit{RO}_\mathit{run}$ &  {\tt VCPUs/flags} & (int $\rightarrow$ string Set) Map & CPU flags (blocked,online,running) \\
 
4870
$\mathit{RO}_\mathit{run}$ &  {\tt state} & string Set & The state of the guest, eg blocked, dying etc \\
 
4871
$\mathit{RO}_\mathit{run}$ &  {\tt start\_time} & datetime & Time at which this VM was last booted \\
 
4872
$\mathit{RO}_\mathit{run}$ &  {\tt last\_updated} & datetime & Time at which this information was last updated \\
 
4873
\hline
 
4874
\end{longtable}
 
4875
\subsection{RPCs associated with class: VM\_metrics}
 
4876
\subsubsection{RPC name:~get\_all}
 
4877
 
 
4878
{\bf Overview:} 
 
4879
Return a list of all the VM\_metrics instances known to the system.
 
4880
 
 
4881
 \noindent {\bf Signature:} 
 
4882
\begin{verbatim} ((VM_metrics ref) Set) get_all (session_id s)\end{verbatim}
 
4883
 
 
4884
 
 
4885
\vspace{0.3cm}
 
4886
 
 
4887
 \noindent {\bf Return Type:} 
 
4888
{\tt 
 
4889
(VM\_metrics ref) Set
 
4890
}
 
4891
 
 
4892
 
 
4893
references to all objects
 
4894
\vspace{0.3cm}
 
4895
\vspace{0.3cm}
 
4896
\vspace{0.3cm}
 
4897
\subsubsection{RPC name:~get\_uuid}
 
4898
 
 
4899
{\bf Overview:} 
 
4900
Get the uuid field of the given VM\_metrics.
 
4901
 
 
4902
 \noindent {\bf Signature:} 
 
4903
\begin{verbatim} string get_uuid (session_id s, VM_metrics ref self)\end{verbatim}
 
4904
 
 
4905
 
 
4906
\noindent{\bf Arguments:}
 
4907
 
 
4908
 
 
4909
\vspace{0.3cm}
 
4910
\begin{tabular}{|c|c|p{7cm}|}
 
4911
 \hline
 
4912
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4913
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
4914
 
 
4915
\end{tabular}
 
4916
 
 
4917
\vspace{0.3cm}
 
4918
 
 
4919
 \noindent {\bf Return Type:} 
 
4920
{\tt 
 
4921
string
 
4922
}
 
4923
 
 
4924
 
 
4925
value of the field
 
4926
\vspace{0.3cm}
 
4927
\vspace{0.3cm}
 
4928
\vspace{0.3cm}
 
4929
\subsubsection{RPC name:~get\_memory\_actual}
 
4930
 
 
4931
{\bf Overview:} 
 
4932
Get the memory/actual field of the given VM\_metrics.
 
4933
 
 
4934
 \noindent {\bf Signature:} 
 
4935
\begin{verbatim} int get_memory_actual (session_id s, VM_metrics ref self)\end{verbatim}
 
4936
 
 
4937
 
 
4938
\noindent{\bf Arguments:}
 
4939
 
 
4940
 
 
4941
\vspace{0.3cm}
 
4942
\begin{tabular}{|c|c|p{7cm}|}
 
4943
 \hline
 
4944
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4945
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
4946
 
 
4947
\end{tabular}
 
4948
 
 
4949
\vspace{0.3cm}
 
4950
 
 
4951
 \noindent {\bf Return Type:} 
 
4952
{\tt 
 
4953
int
 
4954
}
 
4955
 
 
4956
 
 
4957
value of the field
 
4958
\vspace{0.3cm}
 
4959
\vspace{0.3cm}
 
4960
\vspace{0.3cm}
 
4961
\subsubsection{RPC name:~get\_VCPUs\_number}
 
4962
 
 
4963
{\bf Overview:} 
 
4964
Get the VCPUs/number field of the given VM\_metrics.
 
4965
 
 
4966
 \noindent {\bf Signature:} 
 
4967
\begin{verbatim} int get_VCPUs_number (session_id s, VM_metrics ref self)\end{verbatim}
 
4968
 
 
4969
 
 
4970
\noindent{\bf Arguments:}
 
4971
 
 
4972
 
 
4973
\vspace{0.3cm}
 
4974
\begin{tabular}{|c|c|p{7cm}|}
 
4975
 \hline
 
4976
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
4977
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
4978
 
 
4979
\end{tabular}
 
4980
 
 
4981
\vspace{0.3cm}
 
4982
 
 
4983
 \noindent {\bf Return Type:} 
 
4984
{\tt 
 
4985
int
 
4986
}
 
4987
 
 
4988
 
 
4989
value of the field
 
4990
\vspace{0.3cm}
 
4991
\vspace{0.3cm}
 
4992
\vspace{0.3cm}
 
4993
\subsubsection{RPC name:~get\_VCPUs\_utilisation}
 
4994
 
 
4995
{\bf Overview:} 
 
4996
Get the VCPUs/utilisation field of the given VM\_metrics.
 
4997
 
 
4998
 \noindent {\bf Signature:} 
 
4999
\begin{verbatim} ((int -> float) Map) get_VCPUs_utilisation (session_id s, VM_metrics ref self)\end{verbatim}
 
5000
 
 
5001
 
 
5002
\noindent{\bf Arguments:}
 
5003
 
 
5004
 
 
5005
\vspace{0.3cm}
 
5006
\begin{tabular}{|c|c|p{7cm}|}
 
5007
 \hline
 
5008
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5009
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
5010
 
 
5011
\end{tabular}
 
5012
 
 
5013
\vspace{0.3cm}
 
5014
 
 
5015
 \noindent {\bf Return Type:} 
 
5016
{\tt 
 
5017
(int $\rightarrow$ float) Map
 
5018
}
 
5019
 
 
5020
 
 
5021
value of the field
 
5022
\vspace{0.3cm}
 
5023
\vspace{0.3cm}
 
5024
\vspace{0.3cm}
 
5025
\subsubsection{RPC name:~get\_VCPUs\_CPU}
 
5026
 
 
5027
{\bf Overview:} 
 
5028
Get the VCPUs/CPU field of the given VM\_metrics.
 
5029
 
 
5030
 \noindent {\bf Signature:} 
 
5031
\begin{verbatim} ((int -> int) Map) get_VCPUs_CPU (session_id s, VM_metrics ref self)\end{verbatim}
 
5032
 
 
5033
 
 
5034
\noindent{\bf Arguments:}
 
5035
 
 
5036
 
 
5037
\vspace{0.3cm}
 
5038
\begin{tabular}{|c|c|p{7cm}|}
 
5039
 \hline
 
5040
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5041
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
5042
 
 
5043
\end{tabular}
 
5044
 
 
5045
\vspace{0.3cm}
 
5046
 
 
5047
 \noindent {\bf Return Type:} 
 
5048
{\tt 
 
5049
(int $\rightarrow$ int) Map
 
5050
}
 
5051
 
 
5052
 
 
5053
value of the field
 
5054
\vspace{0.3cm}
 
5055
\vspace{0.3cm}
 
5056
\vspace{0.3cm}
 
5057
\subsubsection{RPC name:~get\_VCPUs\_params}
 
5058
 
 
5059
{\bf Overview:} 
 
5060
Get the VCPUs/params field of the given VM\_metrics.
 
5061
 
 
5062
 \noindent {\bf Signature:} 
 
5063
\begin{verbatim} ((string -> string) Map) get_VCPUs_params (session_id s, VM_metrics ref self)\end{verbatim}
 
5064
 
 
5065
 
 
5066
\noindent{\bf Arguments:}
 
5067
 
 
5068
 
 
5069
\vspace{0.3cm}
 
5070
\begin{tabular}{|c|c|p{7cm}|}
 
5071
 \hline
 
5072
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5073
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
5074
 
 
5075
\end{tabular}
 
5076
 
 
5077
\vspace{0.3cm}
 
5078
 
 
5079
 \noindent {\bf Return Type:} 
 
5080
{\tt 
 
5081
(string $\rightarrow$ string) Map
 
5082
}
 
5083
 
 
5084
 
 
5085
value of the field
 
5086
\vspace{0.3cm}
 
5087
\vspace{0.3cm}
 
5088
\vspace{0.3cm}
 
5089
\subsubsection{RPC name:~get\_VCPUs\_flags}
 
5090
 
 
5091
{\bf Overview:} 
 
5092
Get the VCPUs/flags field of the given VM\_metrics.
 
5093
 
 
5094
 \noindent {\bf Signature:} 
 
5095
\begin{verbatim} ((int -> string Set) Map) get_VCPUs_flags (session_id s, VM_metrics ref self)\end{verbatim}
 
5096
 
 
5097
 
 
5098
\noindent{\bf Arguments:}
 
5099
 
 
5100
 
 
5101
\vspace{0.3cm}
 
5102
\begin{tabular}{|c|c|p{7cm}|}
 
5103
 \hline
 
5104
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5105
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
5106
 
 
5107
\end{tabular}
 
5108
 
 
5109
\vspace{0.3cm}
 
5110
 
 
5111
 \noindent {\bf Return Type:} 
 
5112
{\tt 
 
5113
(int $\rightarrow$ string Set) Map
 
5114
}
 
5115
 
 
5116
 
 
5117
value of the field
 
5118
\vspace{0.3cm}
 
5119
\vspace{0.3cm}
 
5120
\vspace{0.3cm}
 
5121
\subsubsection{RPC name:~get\_state}
 
5122
 
 
5123
{\bf Overview:} 
 
5124
Get the state field of the given VM\_metrics.
 
5125
 
 
5126
 \noindent {\bf Signature:} 
 
5127
\begin{verbatim} (string Set) get_state (session_id s, VM_metrics ref self)\end{verbatim}
 
5128
 
 
5129
 
 
5130
\noindent{\bf Arguments:}
 
5131
 
 
5132
 
 
5133
\vspace{0.3cm}
 
5134
\begin{tabular}{|c|c|p{7cm}|}
 
5135
 \hline
 
5136
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5137
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
5138
 
 
5139
\end{tabular}
 
5140
 
 
5141
\vspace{0.3cm}
 
5142
 
 
5143
 \noindent {\bf Return Type:} 
 
5144
{\tt 
 
5145
string Set
 
5146
}
 
5147
 
 
5148
 
 
5149
value of the field
 
5150
\vspace{0.3cm}
 
5151
\vspace{0.3cm}
 
5152
\vspace{0.3cm}
 
5153
\subsubsection{RPC name:~get\_start\_time}
 
5154
 
 
5155
{\bf Overview:} 
 
5156
Get the start\_time field of the given VM\_metrics.
 
5157
 
 
5158
 \noindent {\bf Signature:} 
 
5159
\begin{verbatim} datetime get_start_time (session_id s, VM_metrics ref self)\end{verbatim}
 
5160
 
 
5161
 
 
5162
\noindent{\bf Arguments:}
 
5163
 
 
5164
 
 
5165
\vspace{0.3cm}
 
5166
\begin{tabular}{|c|c|p{7cm}|}
 
5167
 \hline
 
5168
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5169
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
5170
 
 
5171
\end{tabular}
 
5172
 
 
5173
\vspace{0.3cm}
 
5174
 
 
5175
 \noindent {\bf Return Type:} 
 
5176
{\tt 
 
5177
datetime
 
5178
}
 
5179
 
 
5180
 
 
5181
value of the field
 
5182
\vspace{0.3cm}
 
5183
\vspace{0.3cm}
 
5184
\vspace{0.3cm}
 
5185
\subsubsection{RPC name:~get\_last\_updated}
 
5186
 
 
5187
{\bf Overview:} 
 
5188
Get the last\_updated field of the given VM\_metrics.
 
5189
 
 
5190
 \noindent {\bf Signature:} 
 
5191
\begin{verbatim} datetime get_last_updated (session_id s, VM_metrics ref self)\end{verbatim}
 
5192
 
 
5193
 
 
5194
\noindent{\bf Arguments:}
 
5195
 
 
5196
 
 
5197
\vspace{0.3cm}
 
5198
\begin{tabular}{|c|c|p{7cm}|}
 
5199
 \hline
 
5200
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5201
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
5202
 
 
5203
\end{tabular}
 
5204
 
 
5205
\vspace{0.3cm}
 
5206
 
 
5207
 \noindent {\bf Return Type:} 
 
5208
{\tt 
 
5209
datetime
 
5210
}
 
5211
 
 
5212
 
 
5213
value of the field
 
5214
\vspace{0.3cm}
 
5215
\vspace{0.3cm}
 
5216
\vspace{0.3cm}
 
5217
\subsubsection{RPC name:~get\_by\_uuid}
 
5218
 
 
5219
{\bf Overview:} 
 
5220
Get a reference to the VM\_metrics instance with the specified UUID.
 
5221
 
 
5222
 \noindent {\bf Signature:} 
 
5223
\begin{verbatim} (VM_metrics ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
5224
 
 
5225
 
 
5226
\noindent{\bf Arguments:}
 
5227
 
 
5228
 
 
5229
\vspace{0.3cm}
 
5230
\begin{tabular}{|c|c|p{7cm}|}
 
5231
 \hline
 
5232
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5233
{\tt string } & uuid & UUID of object to return \\ \hline 
 
5234
 
 
5235
\end{tabular}
 
5236
 
 
5237
\vspace{0.3cm}
 
5238
 
 
5239
 \noindent {\bf Return Type:} 
 
5240
{\tt 
 
5241
VM\_metrics ref
 
5242
}
 
5243
 
 
5244
 
 
5245
reference to the object
 
5246
\vspace{0.3cm}
 
5247
\vspace{0.3cm}
 
5248
\vspace{0.3cm}
 
5249
\subsubsection{RPC name:~get\_record}
 
5250
 
 
5251
{\bf Overview:} 
 
5252
Get a record containing the current state of the given VM\_metrics.
 
5253
 
 
5254
 \noindent {\bf Signature:} 
 
5255
\begin{verbatim} (VM_metrics record) get_record (session_id s, VM_metrics ref self)\end{verbatim}
 
5256
 
 
5257
 
 
5258
\noindent{\bf Arguments:}
 
5259
 
 
5260
 
 
5261
\vspace{0.3cm}
 
5262
\begin{tabular}{|c|c|p{7cm}|}
 
5263
 \hline
 
5264
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5265
{\tt VM\_metrics ref } & self & reference to the object \\ \hline 
 
5266
 
 
5267
\end{tabular}
 
5268
 
 
5269
\vspace{0.3cm}
 
5270
 
 
5271
 \noindent {\bf Return Type:} 
 
5272
{\tt 
 
5273
VM\_metrics record
 
5274
}
 
5275
 
 
5276
 
 
5277
all fields from the object
 
5278
\vspace{0.3cm}
 
5279
\vspace{0.3cm}
 
5280
\vspace{0.3cm}
 
5281
 
 
5282
\vspace{1cm}
 
5283
\newpage
 
5284
\section{Class: VM\_guest\_metrics}
 
5285
\subsection{Fields for class: VM\_guest\_metrics}
 
5286
\begin{longtable}{|lllp{0.38\textwidth}|}
 
5287
\hline
 
5288
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VM\_guest\_metrics} \\
 
5289
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em
 
5290
The metrics reported by the guest (as opposed to inferred from outside).}} \\
 
5291
\hline
 
5292
Quals & Field & Type & Description \\
 
5293
\hline
 
5294
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
5295
$\mathit{RO}_\mathit{run}$ &  {\tt os\_version} & (string $\rightarrow$ string) Map & version of the OS \\
 
5296
$\mathit{RO}_\mathit{run}$ &  {\tt PV\_drivers\_version} & (string $\rightarrow$ string) Map & version of the PV drivers \\
 
5297
$\mathit{RO}_\mathit{run}$ &  {\tt memory} & (string $\rightarrow$ string) Map & free/used/total memory \\
 
5298
$\mathit{RO}_\mathit{run}$ &  {\tt disks} & (string $\rightarrow$ string) Map & disk configuration/free space \\
 
5299
$\mathit{RO}_\mathit{run}$ &  {\tt networks} & (string $\rightarrow$ string) Map & network configuration \\
 
5300
$\mathit{RO}_\mathit{run}$ &  {\tt other} & (string $\rightarrow$ string) Map & anything else \\
 
5301
$\mathit{RO}_\mathit{run}$ &  {\tt last\_updated} & datetime & Time at which this information was last updated \\
 
5302
\hline
 
5303
\end{longtable}
 
5304
\subsection{RPCs associated with class: VM\_guest\_metrics}
 
5305
\subsubsection{RPC name:~get\_all}
 
5306
 
 
5307
{\bf Overview:} 
 
5308
Return a list of all the VM\_guest\_metrics instances known to the system.
 
5309
 
 
5310
 \noindent {\bf Signature:} 
 
5311
\begin{verbatim} ((VM_guest_metrics ref) Set) get_all (session_id s)\end{verbatim}
 
5312
 
 
5313
 
 
5314
\vspace{0.3cm}
 
5315
 
 
5316
 \noindent {\bf Return Type:} 
 
5317
{\tt 
 
5318
(VM\_guest\_metrics ref) Set
 
5319
}
 
5320
 
 
5321
 
 
5322
references to all objects
 
5323
\vspace{0.3cm}
 
5324
\vspace{0.3cm}
 
5325
\vspace{0.3cm}
 
5326
\subsubsection{RPC name:~get\_uuid}
 
5327
 
 
5328
{\bf Overview:} 
 
5329
Get the uuid field of the given VM\_guest\_metrics.
 
5330
 
 
5331
 \noindent {\bf Signature:} 
 
5332
\begin{verbatim} string get_uuid (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5333
 
 
5334
 
 
5335
\noindent{\bf Arguments:}
 
5336
 
 
5337
 
 
5338
\vspace{0.3cm}
 
5339
\begin{tabular}{|c|c|p{7cm}|}
 
5340
 \hline
 
5341
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5342
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5343
 
 
5344
\end{tabular}
 
5345
 
 
5346
\vspace{0.3cm}
 
5347
 
 
5348
 \noindent {\bf Return Type:} 
 
5349
{\tt 
 
5350
string
 
5351
}
 
5352
 
 
5353
 
 
5354
value of the field
 
5355
\vspace{0.3cm}
 
5356
\vspace{0.3cm}
 
5357
\vspace{0.3cm}
 
5358
\subsubsection{RPC name:~get\_os\_version}
 
5359
 
 
5360
{\bf Overview:} 
 
5361
Get the os\_version field of the given VM\_guest\_metrics.
 
5362
 
 
5363
 \noindent {\bf Signature:} 
 
5364
\begin{verbatim} ((string -> string) Map) get_os_version (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5365
 
 
5366
 
 
5367
\noindent{\bf Arguments:}
 
5368
 
 
5369
 
 
5370
\vspace{0.3cm}
 
5371
\begin{tabular}{|c|c|p{7cm}|}
 
5372
 \hline
 
5373
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5374
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5375
 
 
5376
\end{tabular}
 
5377
 
 
5378
\vspace{0.3cm}
 
5379
 
 
5380
 \noindent {\bf Return Type:} 
 
5381
{\tt 
 
5382
(string $\rightarrow$ string) Map
 
5383
}
 
5384
 
 
5385
 
 
5386
value of the field
 
5387
\vspace{0.3cm}
 
5388
\vspace{0.3cm}
 
5389
\vspace{0.3cm}
 
5390
\subsubsection{RPC name:~get\_PV\_drivers\_version}
 
5391
 
 
5392
{\bf Overview:} 
 
5393
Get the PV\_drivers\_version field of the given VM\_guest\_metrics.
 
5394
 
 
5395
 \noindent {\bf Signature:} 
 
5396
\begin{verbatim} ((string -> string) Map) get_PV_drivers_version (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5397
 
 
5398
 
 
5399
\noindent{\bf Arguments:}
 
5400
 
 
5401
 
 
5402
\vspace{0.3cm}
 
5403
\begin{tabular}{|c|c|p{7cm}|}
 
5404
 \hline
 
5405
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5406
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5407
 
 
5408
\end{tabular}
 
5409
 
 
5410
\vspace{0.3cm}
 
5411
 
 
5412
 \noindent {\bf Return Type:} 
 
5413
{\tt 
 
5414
(string $\rightarrow$ string) Map
 
5415
}
 
5416
 
 
5417
 
 
5418
value of the field
 
5419
\vspace{0.3cm}
 
5420
\vspace{0.3cm}
 
5421
\vspace{0.3cm}
 
5422
\subsubsection{RPC name:~get\_memory}
 
5423
 
 
5424
{\bf Overview:} 
 
5425
Get the memory field of the given VM\_guest\_metrics.
 
5426
 
 
5427
 \noindent {\bf Signature:} 
 
5428
\begin{verbatim} ((string -> string) Map) get_memory (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5429
 
 
5430
 
 
5431
\noindent{\bf Arguments:}
 
5432
 
 
5433
 
 
5434
\vspace{0.3cm}
 
5435
\begin{tabular}{|c|c|p{7cm}|}
 
5436
 \hline
 
5437
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5438
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5439
 
 
5440
\end{tabular}
 
5441
 
 
5442
\vspace{0.3cm}
 
5443
 
 
5444
 \noindent {\bf Return Type:} 
 
5445
{\tt 
 
5446
(string $\rightarrow$ string) Map
 
5447
}
 
5448
 
 
5449
 
 
5450
value of the field
 
5451
\vspace{0.3cm}
 
5452
\vspace{0.3cm}
 
5453
\vspace{0.3cm}
 
5454
\subsubsection{RPC name:~get\_disks}
 
5455
 
 
5456
{\bf Overview:} 
 
5457
Get the disks field of the given VM\_guest\_metrics.
 
5458
 
 
5459
 \noindent {\bf Signature:} 
 
5460
\begin{verbatim} ((string -> string) Map) get_disks (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5461
 
 
5462
 
 
5463
\noindent{\bf Arguments:}
 
5464
 
 
5465
 
 
5466
\vspace{0.3cm}
 
5467
\begin{tabular}{|c|c|p{7cm}|}
 
5468
 \hline
 
5469
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5470
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5471
 
 
5472
\end{tabular}
 
5473
 
 
5474
\vspace{0.3cm}
 
5475
 
 
5476
 \noindent {\bf Return Type:} 
 
5477
{\tt 
 
5478
(string $\rightarrow$ string) Map
 
5479
}
 
5480
 
 
5481
 
 
5482
value of the field
 
5483
\vspace{0.3cm}
 
5484
\vspace{0.3cm}
 
5485
\vspace{0.3cm}
 
5486
\subsubsection{RPC name:~get\_networks}
 
5487
 
 
5488
{\bf Overview:} 
 
5489
Get the networks field of the given VM\_guest\_metrics.
 
5490
 
 
5491
 \noindent {\bf Signature:} 
 
5492
\begin{verbatim} ((string -> string) Map) get_networks (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5493
 
 
5494
 
 
5495
\noindent{\bf Arguments:}
 
5496
 
 
5497
 
 
5498
\vspace{0.3cm}
 
5499
\begin{tabular}{|c|c|p{7cm}|}
 
5500
 \hline
 
5501
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5502
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5503
 
 
5504
\end{tabular}
 
5505
 
 
5506
\vspace{0.3cm}
 
5507
 
 
5508
 \noindent {\bf Return Type:} 
 
5509
{\tt 
 
5510
(string $\rightarrow$ string) Map
 
5511
}
 
5512
 
 
5513
 
 
5514
value of the field
 
5515
\vspace{0.3cm}
 
5516
\vspace{0.3cm}
 
5517
\vspace{0.3cm}
 
5518
\subsubsection{RPC name:~get\_other}
 
5519
 
 
5520
{\bf Overview:} 
 
5521
Get the other field of the given VM\_guest\_metrics.
 
5522
 
 
5523
 \noindent {\bf Signature:} 
 
5524
\begin{verbatim} ((string -> string) Map) get_other (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5525
 
 
5526
 
 
5527
\noindent{\bf Arguments:}
 
5528
 
 
5529
 
 
5530
\vspace{0.3cm}
 
5531
\begin{tabular}{|c|c|p{7cm}|}
 
5532
 \hline
 
5533
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5534
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5535
 
 
5536
\end{tabular}
 
5537
 
 
5538
\vspace{0.3cm}
 
5539
 
 
5540
 \noindent {\bf Return Type:} 
 
5541
{\tt 
 
5542
(string $\rightarrow$ string) Map
 
5543
}
 
5544
 
 
5545
 
 
5546
value of the field
 
5547
\vspace{0.3cm}
 
5548
\vspace{0.3cm}
 
5549
\vspace{0.3cm}
 
5550
\subsubsection{RPC name:~get\_last\_updated}
 
5551
 
 
5552
{\bf Overview:} 
 
5553
Get the last\_updated field of the given VM\_guest\_metrics.
 
5554
 
 
5555
 \noindent {\bf Signature:} 
 
5556
\begin{verbatim} datetime get_last_updated (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5557
 
 
5558
 
 
5559
\noindent{\bf Arguments:}
 
5560
 
 
5561
 
 
5562
\vspace{0.3cm}
 
5563
\begin{tabular}{|c|c|p{7cm}|}
 
5564
 \hline
 
5565
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5566
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5567
 
 
5568
\end{tabular}
 
5569
 
 
5570
\vspace{0.3cm}
 
5571
 
 
5572
 \noindent {\bf Return Type:} 
 
5573
{\tt 
 
5574
datetime
 
5575
}
 
5576
 
 
5577
 
 
5578
value of the field
 
5579
\vspace{0.3cm}
 
5580
\vspace{0.3cm}
 
5581
\vspace{0.3cm}
 
5582
\subsubsection{RPC name:~get\_by\_uuid}
 
5583
 
 
5584
{\bf Overview:} 
 
5585
Get a reference to the VM\_guest\_metrics instance with the specified UUID.
 
5586
 
 
5587
 \noindent {\bf Signature:} 
 
5588
\begin{verbatim} (VM_guest_metrics ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
5589
 
 
5590
 
 
5591
\noindent{\bf Arguments:}
 
5592
 
 
5593
 
 
5594
\vspace{0.3cm}
 
5595
\begin{tabular}{|c|c|p{7cm}|}
 
5596
 \hline
 
5597
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5598
{\tt string } & uuid & UUID of object to return \\ \hline 
 
5599
 
 
5600
\end{tabular}
 
5601
 
 
5602
\vspace{0.3cm}
 
5603
 
 
5604
 \noindent {\bf Return Type:} 
 
5605
{\tt 
 
5606
VM\_guest\_metrics ref
 
5607
}
 
5608
 
 
5609
 
 
5610
reference to the object
 
5611
\vspace{0.3cm}
 
5612
\vspace{0.3cm}
 
5613
\vspace{0.3cm}
 
5614
\subsubsection{RPC name:~get\_record}
 
5615
 
 
5616
{\bf Overview:} 
 
5617
Get a record containing the current state of the given VM\_guest\_metrics.
 
5618
 
 
5619
 \noindent {\bf Signature:} 
 
5620
\begin{verbatim} (VM_guest_metrics record) get_record (session_id s, VM_guest_metrics ref self)\end{verbatim}
 
5621
 
 
5622
 
 
5623
\noindent{\bf Arguments:}
 
5624
 
 
5625
 
 
5626
\vspace{0.3cm}
 
5627
\begin{tabular}{|c|c|p{7cm}|}
 
5628
 \hline
 
5629
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5630
{\tt VM\_guest\_metrics ref } & self & reference to the object \\ \hline 
 
5631
 
 
5632
\end{tabular}
 
5633
 
 
5634
\vspace{0.3cm}
 
5635
 
 
5636
 \noindent {\bf Return Type:} 
 
5637
{\tt 
 
5638
VM\_guest\_metrics record
 
5639
}
 
5640
 
 
5641
 
 
5642
all fields from the object
 
5643
\vspace{0.3cm}
 
5644
\vspace{0.3cm}
 
5645
\vspace{0.3cm}
 
5646
 
 
5647
\vspace{1cm}
 
5648
\newpage
 
5649
\section{Class: host}
 
5650
\subsection{Fields for class: host}
 
5651
\begin{longtable}{|lllp{0.38\textwidth}|}
 
5652
\hline
 
5653
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf host} \\
 
5654
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
5655
physical host.}} \\
 
5656
\hline
 
5657
Quals & Field & Type & Description \\
 
5658
\hline
 
5659
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
5660
$\mathit{RW}$ &  {\tt name/label} & string & a human-readable name \\
 
5661
$\mathit{RW}$ &  {\tt name/description} & string & a notes field containg human-readable description \\
 
5662
$\mathit{RO}_\mathit{run}$ &  {\tt API\_version/major} & int & major version number \\
 
5663
$\mathit{RO}_\mathit{run}$ &  {\tt API\_version/minor} & int & minor version number \\
 
5664
$\mathit{RO}_\mathit{run}$ &  {\tt API\_version/vendor} & string & identification of vendor \\
 
5665
$\mathit{RO}_\mathit{run}$ &  {\tt API\_version/vendor\_implementation} & (string $\rightarrow$ string) Map & details of vendor implementation \\
 
5666
$\mathit{RO}_\mathit{run}$ &  {\tt enabled} & bool & True if the host is currently enabled \\
 
5667
$\mathit{RO}_\mathit{run}$ &  {\tt software\_version} & (string $\rightarrow$ string) Map & version strings \\
 
5668
$\mathit{RW}$ &  {\tt other\_config} & (string $\rightarrow$ string) Map & additional configuration \\
 
5669
$\mathit{RO}_\mathit{run}$ &  {\tt capabilities} & string Set & Xen capabilities \\
 
5670
$\mathit{RO}_\mathit{run}$ &  {\tt cpu\_configuration} & (string $\rightarrow$ string) Map & The CPU configuration on this host.  May contain keys such as ``nr\_nodes'', ``sockets\_per\_node'', ``cores\_per\_socket'', or ``threads\_per\_core'' \\
 
5671
$\mathit{RO}_\mathit{run}$ &  {\tt sched\_policy} & string & Scheduler policy currently in force on this host \\
 
5672
$\mathit{RO}_\mathit{run}$ &  {\tt supported\_bootloaders} & string Set & a list of the bootloaders installed on the machine \\
 
5673
$\mathit{RO}_\mathit{run}$ &  {\tt resident\_VMs} & (VM ref) Set & list of VMs currently resident on host \\
 
5674
$\mathit{RW}$ &  {\tt logging} & (string $\rightarrow$ string) Map & logging configuration \\
 
5675
$\mathit{RO}_\mathit{run}$ &  {\tt PIFs} & (PIF ref) Set & physical network interfaces \\
 
5676
$\mathit{RW}$ &  {\tt suspend\_image\_sr} & SR ref & The SR in which VDIs for suspend images are created \\
 
5677
$\mathit{RW}$ &  {\tt crash\_dump\_sr} & SR ref & The SR in which VDIs for crash dumps are created \\
 
5678
$\mathit{RO}_\mathit{run}$ &  {\tt PBDs} & (PBD ref) Set & physical blockdevices \\
 
5679
$\mathit{RO}_\mathit{run}$ &  {\tt PPCIs} & (PPCI ref) Set & physical PCI devices \\
 
5680
$\mathit{RO}_\mathit{run}$ &  {\tt PSCSIs} & (PSCSI ref) Set & physical SCSI devices \\
 
5681
$\mathit{RO}_\mathit{run}$ &  {\tt PSCSI\_HBAs} & (PSCSI\_HBA ref) Set & physical SCSI host bus adapters \\
 
5682
$\mathit{RO}_\mathit{run}$ &  {\tt host\_CPUs} & (host\_cpu ref) Set & The physical CPUs on this host \\
 
5683
$\mathit{RO}_\mathit{run}$ &  {\tt metrics} & host\_metrics ref & metrics associated with this host \\
 
5684
\hline
 
5685
\end{longtable}
 
5686
\subsection{RPCs associated with class: host}
 
5687
\subsubsection{RPC name:~disable}
 
5688
 
 
5689
{\bf Overview:} 
 
5690
Puts the host into a state in which no new VMs can be started. Currently
 
5691
active VMs on the host continue to execute.
 
5692
 
 
5693
 \noindent {\bf Signature:} 
 
5694
\begin{verbatim} void disable (session_id s, host ref host)\end{verbatim}
 
5695
 
 
5696
 
 
5697
\noindent{\bf Arguments:}
 
5698
 
 
5699
 
 
5700
\vspace{0.3cm}
 
5701
\begin{tabular}{|c|c|p{7cm}|}
 
5702
 \hline
 
5703
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5704
{\tt host ref } & host & The Host to disable \\ \hline 
 
5705
 
 
5706
\end{tabular}
 
5707
 
 
5708
\vspace{0.3cm}
 
5709
 
 
5710
 \noindent {\bf Return Type:} 
 
5711
{\tt 
 
5712
void
 
5713
}
 
5714
 
 
5715
 
 
5716
 
 
5717
\vspace{0.3cm}
 
5718
\vspace{0.3cm}
 
5719
\vspace{0.3cm}
 
5720
\subsubsection{RPC name:~enable}
 
5721
 
 
5722
{\bf Overview:} 
 
5723
Puts the host into a state in which new VMs can be started.
 
5724
 
 
5725
 \noindent {\bf Signature:} 
 
5726
\begin{verbatim} void enable (session_id s, host ref host)\end{verbatim}
 
5727
 
 
5728
 
 
5729
\noindent{\bf Arguments:}
 
5730
 
 
5731
 
 
5732
\vspace{0.3cm}
 
5733
\begin{tabular}{|c|c|p{7cm}|}
 
5734
 \hline
 
5735
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5736
{\tt host ref } & host & The Host to enable \\ \hline 
 
5737
 
 
5738
\end{tabular}
 
5739
 
 
5740
\vspace{0.3cm}
 
5741
 
 
5742
 \noindent {\bf Return Type:} 
 
5743
{\tt 
 
5744
void
 
5745
}
 
5746
 
 
5747
 
 
5748
 
 
5749
\vspace{0.3cm}
 
5750
\vspace{0.3cm}
 
5751
\vspace{0.3cm}
 
5752
\subsubsection{RPC name:~shutdown}
 
5753
 
 
5754
{\bf Overview:} 
 
5755
Shutdown the host. (This function can only be called if there are no
 
5756
currently running VMs on the host and it is disabled.).
 
5757
 
 
5758
 \noindent {\bf Signature:} 
 
5759
\begin{verbatim} void shutdown (session_id s, host ref host)\end{verbatim}
 
5760
 
 
5761
 
 
5762
\noindent{\bf Arguments:}
 
5763
 
 
5764
 
 
5765
\vspace{0.3cm}
 
5766
\begin{tabular}{|c|c|p{7cm}|}
 
5767
 \hline
 
5768
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5769
{\tt host ref } & host & The Host to shutdown \\ \hline 
 
5770
 
 
5771
\end{tabular}
 
5772
 
 
5773
\vspace{0.3cm}
 
5774
 
 
5775
 \noindent {\bf Return Type:} 
 
5776
{\tt 
 
5777
void
 
5778
}
 
5779
 
 
5780
 
 
5781
 
 
5782
\vspace{0.3cm}
 
5783
\vspace{0.3cm}
 
5784
\vspace{0.3cm}
 
5785
\subsubsection{RPC name:~reboot}
 
5786
 
 
5787
{\bf Overview:} 
 
5788
Reboot the host. (This function can only be called if there are no
 
5789
currently running VMs on the host and it is disabled.).
 
5790
 
 
5791
 \noindent {\bf Signature:} 
 
5792
\begin{verbatim} void reboot (session_id s, host ref host)\end{verbatim}
 
5793
 
 
5794
 
 
5795
\noindent{\bf Arguments:}
 
5796
 
 
5797
 
 
5798
\vspace{0.3cm}
 
5799
\begin{tabular}{|c|c|p{7cm}|}
 
5800
 \hline
 
5801
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5802
{\tt host ref } & host & The Host to reboot \\ \hline 
 
5803
 
 
5804
\end{tabular}
 
5805
 
 
5806
\vspace{0.3cm}
 
5807
 
 
5808
 \noindent {\bf Return Type:} 
 
5809
{\tt 
 
5810
void
 
5811
}
 
5812
 
 
5813
 
 
5814
 
 
5815
\vspace{0.3cm}
 
5816
\vspace{0.3cm}
 
5817
\vspace{0.3cm}
 
5818
\subsubsection{RPC name:~dmesg}
 
5819
 
 
5820
{\bf Overview:} 
 
5821
Get the host xen dmesg.
 
5822
 
 
5823
 \noindent {\bf Signature:} 
 
5824
\begin{verbatim} string dmesg (session_id s, host ref host)\end{verbatim}
 
5825
 
 
5826
 
 
5827
\noindent{\bf Arguments:}
 
5828
 
 
5829
 
 
5830
\vspace{0.3cm}
 
5831
\begin{tabular}{|c|c|p{7cm}|}
 
5832
 \hline
 
5833
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5834
{\tt host ref } & host & The Host to query \\ \hline 
 
5835
 
 
5836
\end{tabular}
 
5837
 
 
5838
\vspace{0.3cm}
 
5839
 
 
5840
 \noindent {\bf Return Type:} 
 
5841
{\tt 
 
5842
string
 
5843
}
 
5844
 
 
5845
 
 
5846
dmesg string
 
5847
\vspace{0.3cm}
 
5848
\vspace{0.3cm}
 
5849
\vspace{0.3cm}
 
5850
\subsubsection{RPC name:~dmesg\_clear}
 
5851
 
 
5852
{\bf Overview:} 
 
5853
Get the host xen dmesg, and clear the buffer.
 
5854
 
 
5855
 \noindent {\bf Signature:} 
 
5856
\begin{verbatim} string dmesg_clear (session_id s, host ref host)\end{verbatim}
 
5857
 
 
5858
 
 
5859
\noindent{\bf Arguments:}
 
5860
 
 
5861
 
 
5862
\vspace{0.3cm}
 
5863
\begin{tabular}{|c|c|p{7cm}|}
 
5864
 \hline
 
5865
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5866
{\tt host ref } & host & The Host to query \\ \hline 
 
5867
 
 
5868
\end{tabular}
 
5869
 
 
5870
\vspace{0.3cm}
 
5871
 
 
5872
 \noindent {\bf Return Type:} 
 
5873
{\tt 
 
5874
string
 
5875
}
 
5876
 
 
5877
 
 
5878
dmesg string
 
5879
\vspace{0.3cm}
 
5880
\vspace{0.3cm}
 
5881
\vspace{0.3cm}
 
5882
\subsubsection{RPC name:~get\_log}
 
5883
 
 
5884
{\bf Overview:} 
 
5885
Get the host's log file.
 
5886
 
 
5887
 \noindent {\bf Signature:} 
 
5888
\begin{verbatim} string get_log (session_id s, host ref host)\end{verbatim}
 
5889
 
 
5890
 
 
5891
\noindent{\bf Arguments:}
 
5892
 
 
5893
 
 
5894
\vspace{0.3cm}
 
5895
\begin{tabular}{|c|c|p{7cm}|}
 
5896
 \hline
 
5897
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5898
{\tt host ref } & host & The Host to query \\ \hline 
 
5899
 
 
5900
\end{tabular}
 
5901
 
 
5902
\vspace{0.3cm}
 
5903
 
 
5904
 \noindent {\bf Return Type:} 
 
5905
{\tt 
 
5906
string
 
5907
}
 
5908
 
 
5909
 
 
5910
The contents of the host's primary log file
 
5911
\vspace{0.3cm}
 
5912
\vspace{0.3cm}
 
5913
\vspace{0.3cm}
 
5914
\subsubsection{RPC name:~send\_debug\_keys}
 
5915
 
 
5916
{\bf Overview:} 
 
5917
Inject the given string as debugging keys into Xen.
 
5918
 
 
5919
 \noindent {\bf Signature:} 
 
5920
\begin{verbatim} void send_debug_keys (session_id s, host ref host, string keys)\end{verbatim}
 
5921
 
 
5922
 
 
5923
\noindent{\bf Arguments:}
 
5924
 
 
5925
 
 
5926
\vspace{0.3cm}
 
5927
\begin{tabular}{|c|c|p{7cm}|}
 
5928
 \hline
 
5929
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
5930
{\tt host ref } & host & The host \\ \hline 
 
5931
 
 
5932
{\tt string } & keys & The keys to send \\ \hline 
 
5933
 
 
5934
\end{tabular}
 
5935
 
 
5936
\vspace{0.3cm}
 
5937
 
 
5938
 \noindent {\bf Return Type:} 
 
5939
{\tt 
 
5940
void
 
5941
}
 
5942
 
 
5943
 
 
5944
 
 
5945
\vspace{0.3cm}
 
5946
\vspace{0.3cm}
 
5947
\vspace{0.3cm}
 
5948
\subsubsection{RPC name:~list\_methods}
 
5949
 
 
5950
{\bf Overview:} 
 
5951
List all supported methods.
 
5952
 
 
5953
 \noindent {\bf Signature:} 
 
5954
\begin{verbatim} (string Set) list_methods (session_id s)\end{verbatim}
 
5955
 
 
5956
 
 
5957
\vspace{0.3cm}
 
5958
 
 
5959
 \noindent {\bf Return Type:} 
 
5960
{\tt 
 
5961
string Set
 
5962
}
 
5963
 
 
5964
 
 
5965
The name of every supported method.
 
5966
\vspace{0.3cm}
 
5967
\vspace{0.3cm}
 
5968
\vspace{0.3cm}
 
5969
\subsubsection{RPC name:~get\_all}
 
5970
 
 
5971
{\bf Overview:} 
 
5972
Return a list of all the hosts known to the system.
 
5973
 
 
5974
 \noindent {\bf Signature:} 
 
5975
\begin{verbatim} ((host ref) Set) get_all (session_id s)\end{verbatim}
 
5976
 
 
5977
 
 
5978
\vspace{0.3cm}
 
5979
 
 
5980
 \noindent {\bf Return Type:} 
 
5981
{\tt 
 
5982
(host ref) Set
 
5983
}
 
5984
 
 
5985
 
 
5986
A list of all the IDs of all the hosts
 
5987
\vspace{0.3cm}
 
5988
\vspace{0.3cm}
 
5989
\vspace{0.3cm}
 
5990
\subsubsection{RPC name:~get\_uuid}
 
5991
 
 
5992
{\bf Overview:} 
 
5993
Get the uuid field of the given host.
 
5994
 
 
5995
 \noindent {\bf Signature:} 
 
5996
\begin{verbatim} string get_uuid (session_id s, host ref self)\end{verbatim}
 
5997
 
 
5998
 
 
5999
\noindent{\bf Arguments:}
 
6000
 
 
6001
 
 
6002
\vspace{0.3cm}
 
6003
\begin{tabular}{|c|c|p{7cm}|}
 
6004
 \hline
 
6005
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6006
{\tt host ref } & self & reference to the object \\ \hline 
 
6007
 
 
6008
\end{tabular}
 
6009
 
 
6010
\vspace{0.3cm}
 
6011
 
 
6012
 \noindent {\bf Return Type:} 
 
6013
{\tt 
 
6014
string
 
6015
}
 
6016
 
 
6017
 
 
6018
value of the field
 
6019
\vspace{0.3cm}
 
6020
\vspace{0.3cm}
 
6021
\vspace{0.3cm}
 
6022
\subsubsection{RPC name:~get\_name\_label}
 
6023
 
 
6024
{\bf Overview:} 
 
6025
Get the name/label field of the given host.
 
6026
 
 
6027
 \noindent {\bf Signature:} 
 
6028
\begin{verbatim} string get_name_label (session_id s, host ref self)\end{verbatim}
 
6029
 
 
6030
 
 
6031
\noindent{\bf Arguments:}
 
6032
 
 
6033
 
 
6034
\vspace{0.3cm}
 
6035
\begin{tabular}{|c|c|p{7cm}|}
 
6036
 \hline
 
6037
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6038
{\tt host ref } & self & reference to the object \\ \hline 
 
6039
 
 
6040
\end{tabular}
 
6041
 
 
6042
\vspace{0.3cm}
 
6043
 
 
6044
 \noindent {\bf Return Type:} 
 
6045
{\tt 
 
6046
string
 
6047
}
 
6048
 
 
6049
 
 
6050
value of the field
 
6051
\vspace{0.3cm}
 
6052
\vspace{0.3cm}
 
6053
\vspace{0.3cm}
 
6054
\subsubsection{RPC name:~set\_name\_label}
 
6055
 
 
6056
{\bf Overview:} 
 
6057
Set the name/label field of the given host.
 
6058
 
 
6059
 \noindent {\bf Signature:} 
 
6060
\begin{verbatim} void set_name_label (session_id s, host ref self, string value)\end{verbatim}
 
6061
 
 
6062
 
 
6063
\noindent{\bf Arguments:}
 
6064
 
 
6065
 
 
6066
\vspace{0.3cm}
 
6067
\begin{tabular}{|c|c|p{7cm}|}
 
6068
 \hline
 
6069
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6070
{\tt host ref } & self & reference to the object \\ \hline 
 
6071
 
 
6072
{\tt string } & value & New value to set \\ \hline 
 
6073
 
 
6074
\end{tabular}
 
6075
 
 
6076
\vspace{0.3cm}
 
6077
 
 
6078
 \noindent {\bf Return Type:} 
 
6079
{\tt 
 
6080
void
 
6081
}
 
6082
 
 
6083
 
 
6084
 
 
6085
\vspace{0.3cm}
 
6086
\vspace{0.3cm}
 
6087
\vspace{0.3cm}
 
6088
\subsubsection{RPC name:~get\_name\_description}
 
6089
 
 
6090
{\bf Overview:} 
 
6091
Get the name/description field of the given host.
 
6092
 
 
6093
 \noindent {\bf Signature:} 
 
6094
\begin{verbatim} string get_name_description (session_id s, host ref self)\end{verbatim}
 
6095
 
 
6096
 
 
6097
\noindent{\bf Arguments:}
 
6098
 
 
6099
 
 
6100
\vspace{0.3cm}
 
6101
\begin{tabular}{|c|c|p{7cm}|}
 
6102
 \hline
 
6103
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6104
{\tt host ref } & self & reference to the object \\ \hline 
 
6105
 
 
6106
\end{tabular}
 
6107
 
 
6108
\vspace{0.3cm}
 
6109
 
 
6110
 \noindent {\bf Return Type:} 
 
6111
{\tt 
 
6112
string
 
6113
}
 
6114
 
 
6115
 
 
6116
value of the field
 
6117
\vspace{0.3cm}
 
6118
\vspace{0.3cm}
 
6119
\vspace{0.3cm}
 
6120
\subsubsection{RPC name:~set\_name\_description}
 
6121
 
 
6122
{\bf Overview:} 
 
6123
Set the name/description field of the given host.
 
6124
 
 
6125
 \noindent {\bf Signature:} 
 
6126
\begin{verbatim} void set_name_description (session_id s, host ref self, string value)\end{verbatim}
 
6127
 
 
6128
 
 
6129
\noindent{\bf Arguments:}
 
6130
 
 
6131
 
 
6132
\vspace{0.3cm}
 
6133
\begin{tabular}{|c|c|p{7cm}|}
 
6134
 \hline
 
6135
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6136
{\tt host ref } & self & reference to the object \\ \hline 
 
6137
 
 
6138
{\tt string } & value & New value to set \\ \hline 
 
6139
 
 
6140
\end{tabular}
 
6141
 
 
6142
\vspace{0.3cm}
 
6143
 
 
6144
 \noindent {\bf Return Type:} 
 
6145
{\tt 
 
6146
void
 
6147
}
 
6148
 
 
6149
 
 
6150
 
 
6151
\vspace{0.3cm}
 
6152
\vspace{0.3cm}
 
6153
\vspace{0.3cm}
 
6154
\subsubsection{RPC name:~get\_API\_version\_major}
 
6155
 
 
6156
{\bf Overview:} 
 
6157
Get the API\_version/major field of the given host.
 
6158
 
 
6159
 \noindent {\bf Signature:} 
 
6160
\begin{verbatim} int get_API_version_major (session_id s, host ref self)\end{verbatim}
 
6161
 
 
6162
 
 
6163
\noindent{\bf Arguments:}
 
6164
 
 
6165
 
 
6166
\vspace{0.3cm}
 
6167
\begin{tabular}{|c|c|p{7cm}|}
 
6168
 \hline
 
6169
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6170
{\tt host ref } & self & reference to the object \\ \hline 
 
6171
 
 
6172
\end{tabular}
 
6173
 
 
6174
\vspace{0.3cm}
 
6175
 
 
6176
 \noindent {\bf Return Type:} 
 
6177
{\tt 
 
6178
int
 
6179
}
 
6180
 
 
6181
 
 
6182
value of the field
 
6183
\vspace{0.3cm}
 
6184
\vspace{0.3cm}
 
6185
\vspace{0.3cm}
 
6186
\subsubsection{RPC name:~get\_API\_version\_minor}
 
6187
 
 
6188
{\bf Overview:} 
 
6189
Get the API\_version/minor field of the given host.
 
6190
 
 
6191
 \noindent {\bf Signature:} 
 
6192
\begin{verbatim} int get_API_version_minor (session_id s, host ref self)\end{verbatim}
 
6193
 
 
6194
 
 
6195
\noindent{\bf Arguments:}
 
6196
 
 
6197
 
 
6198
\vspace{0.3cm}
 
6199
\begin{tabular}{|c|c|p{7cm}|}
 
6200
 \hline
 
6201
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6202
{\tt host ref } & self & reference to the object \\ \hline 
 
6203
 
 
6204
\end{tabular}
 
6205
 
 
6206
\vspace{0.3cm}
 
6207
 
 
6208
 \noindent {\bf Return Type:} 
 
6209
{\tt 
 
6210
int
 
6211
}
 
6212
 
 
6213
 
 
6214
value of the field
 
6215
\vspace{0.3cm}
 
6216
\vspace{0.3cm}
 
6217
\vspace{0.3cm}
 
6218
\subsubsection{RPC name:~get\_API\_version\_vendor}
 
6219
 
 
6220
{\bf Overview:} 
 
6221
Get the API\_version/vendor field of the given host.
 
6222
 
 
6223
 \noindent {\bf Signature:} 
 
6224
\begin{verbatim} string get_API_version_vendor (session_id s, host ref self)\end{verbatim}
 
6225
 
 
6226
 
 
6227
\noindent{\bf Arguments:}
 
6228
 
 
6229
 
 
6230
\vspace{0.3cm}
 
6231
\begin{tabular}{|c|c|p{7cm}|}
 
6232
 \hline
 
6233
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6234
{\tt host ref } & self & reference to the object \\ \hline 
 
6235
 
 
6236
\end{tabular}
 
6237
 
 
6238
\vspace{0.3cm}
 
6239
 
 
6240
 \noindent {\bf Return Type:} 
 
6241
{\tt 
 
6242
string
 
6243
}
 
6244
 
 
6245
 
 
6246
value of the field
 
6247
\vspace{0.3cm}
 
6248
\vspace{0.3cm}
 
6249
\vspace{0.3cm}
 
6250
\subsubsection{RPC name:~get\_API\_version\_vendor\_implementation}
 
6251
 
 
6252
{\bf Overview:} 
 
6253
Get the API\_version/vendor\_implementation field of the given host.
 
6254
 
 
6255
 \noindent {\bf Signature:} 
 
6256
\begin{verbatim} ((string -> string) Map) get_API_version_vendor_implementation (session_id s, host ref self)\end{verbatim}
 
6257
 
 
6258
 
 
6259
\noindent{\bf Arguments:}
 
6260
 
 
6261
 
 
6262
\vspace{0.3cm}
 
6263
\begin{tabular}{|c|c|p{7cm}|}
 
6264
 \hline
 
6265
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6266
{\tt host ref } & self & reference to the object \\ \hline 
 
6267
 
 
6268
\end{tabular}
 
6269
 
 
6270
\vspace{0.3cm}
 
6271
 
 
6272
 \noindent {\bf Return Type:} 
 
6273
{\tt 
 
6274
(string $\rightarrow$ string) Map
 
6275
}
 
6276
 
 
6277
 
 
6278
value of the field
 
6279
\vspace{0.3cm}
 
6280
\vspace{0.3cm}
 
6281
\vspace{0.3cm}
 
6282
\subsubsection{RPC name:~get\_enabled}
 
6283
 
 
6284
{\bf Overview:} 
 
6285
Get the enabled field of the given host.
 
6286
 
 
6287
 \noindent {\bf Signature:} 
 
6288
\begin{verbatim} bool get_enabled (session_id s, host ref self)\end{verbatim}
 
6289
 
 
6290
 
 
6291
\noindent{\bf Arguments:}
 
6292
 
 
6293
 
 
6294
\vspace{0.3cm}
 
6295
\begin{tabular}{|c|c|p{7cm}|}
 
6296
 \hline
 
6297
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6298
{\tt host ref } & self & reference to the object \\ \hline 
 
6299
 
 
6300
\end{tabular}
 
6301
 
 
6302
\vspace{0.3cm}
 
6303
 
 
6304
 \noindent {\bf Return Type:} 
 
6305
{\tt 
 
6306
bool
 
6307
}
 
6308
 
 
6309
 
 
6310
value of the field
 
6311
\vspace{0.3cm}
 
6312
\vspace{0.3cm}
 
6313
\vspace{0.3cm}
 
6314
\subsubsection{RPC name:~get\_software\_version}
 
6315
 
 
6316
{\bf Overview:} 
 
6317
Get the software\_version field of the given host.
 
6318
 
 
6319
 \noindent {\bf Signature:} 
 
6320
\begin{verbatim} ((string -> string) Map) get_software_version (session_id s, host ref self)\end{verbatim}
 
6321
 
 
6322
 
 
6323
\noindent{\bf Arguments:}
 
6324
 
 
6325
 
 
6326
\vspace{0.3cm}
 
6327
\begin{tabular}{|c|c|p{7cm}|}
 
6328
 \hline
 
6329
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6330
{\tt host ref } & self & reference to the object \\ \hline 
 
6331
 
 
6332
\end{tabular}
 
6333
 
 
6334
\vspace{0.3cm}
 
6335
 
 
6336
 \noindent {\bf Return Type:} 
 
6337
{\tt 
 
6338
(string $\rightarrow$ string) Map
 
6339
}
 
6340
 
 
6341
 
 
6342
value of the field
 
6343
\vspace{0.3cm}
 
6344
\vspace{0.3cm}
 
6345
\vspace{0.3cm}
 
6346
\subsubsection{RPC name:~get\_other\_config}
 
6347
 
 
6348
{\bf Overview:} 
 
6349
Get the other\_config field of the given host.
 
6350
 
 
6351
 \noindent {\bf Signature:} 
 
6352
\begin{verbatim} ((string -> string) Map) get_other_config (session_id s, host ref self)\end{verbatim}
 
6353
 
 
6354
 
 
6355
\noindent{\bf Arguments:}
 
6356
 
 
6357
 
 
6358
\vspace{0.3cm}
 
6359
\begin{tabular}{|c|c|p{7cm}|}
 
6360
 \hline
 
6361
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6362
{\tt host ref } & self & reference to the object \\ \hline 
 
6363
 
 
6364
\end{tabular}
 
6365
 
 
6366
\vspace{0.3cm}
 
6367
 
 
6368
 \noindent {\bf Return Type:} 
 
6369
{\tt 
 
6370
(string $\rightarrow$ string) Map
 
6371
}
 
6372
 
 
6373
 
 
6374
value of the field
 
6375
\vspace{0.3cm}
 
6376
\vspace{0.3cm}
 
6377
\vspace{0.3cm}
 
6378
\subsubsection{RPC name:~set\_other\_config}
 
6379
 
 
6380
{\bf Overview:} 
 
6381
Set the other\_config field of the given host.
 
6382
 
 
6383
 \noindent {\bf Signature:} 
 
6384
\begin{verbatim} void set_other_config (session_id s, host ref self, (string -> string) Map value)\end{verbatim}
 
6385
 
 
6386
 
 
6387
\noindent{\bf Arguments:}
 
6388
 
 
6389
 
 
6390
\vspace{0.3cm}
 
6391
\begin{tabular}{|c|c|p{7cm}|}
 
6392
 \hline
 
6393
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6394
{\tt host ref } & self & reference to the object \\ \hline 
 
6395
 
 
6396
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
6397
 
 
6398
\end{tabular}
 
6399
 
 
6400
\vspace{0.3cm}
 
6401
 
 
6402
 \noindent {\bf Return Type:} 
 
6403
{\tt 
 
6404
void
 
6405
}
 
6406
 
 
6407
 
 
6408
 
 
6409
\vspace{0.3cm}
 
6410
\vspace{0.3cm}
 
6411
\vspace{0.3cm}
 
6412
\subsubsection{RPC name:~add\_to\_other\_config}
 
6413
 
 
6414
{\bf Overview:} 
 
6415
Add the given key-value pair to the other\_config field of the given host.
 
6416
 
 
6417
 \noindent {\bf Signature:} 
 
6418
\begin{verbatim} void add_to_other_config (session_id s, host ref self, string key, string value)\end{verbatim}
 
6419
 
 
6420
 
 
6421
\noindent{\bf Arguments:}
 
6422
 
 
6423
 
 
6424
\vspace{0.3cm}
 
6425
\begin{tabular}{|c|c|p{7cm}|}
 
6426
 \hline
 
6427
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6428
{\tt host ref } & self & reference to the object \\ \hline 
 
6429
 
 
6430
{\tt string } & key & Key to add \\ \hline 
 
6431
 
 
6432
{\tt string } & value & Value to add \\ \hline 
 
6433
 
 
6434
\end{tabular}
 
6435
 
 
6436
\vspace{0.3cm}
 
6437
 
 
6438
 \noindent {\bf Return Type:} 
 
6439
{\tt 
 
6440
void
 
6441
}
 
6442
 
 
6443
 
 
6444
 
 
6445
\vspace{0.3cm}
 
6446
\vspace{0.3cm}
 
6447
\vspace{0.3cm}
 
6448
\subsubsection{RPC name:~remove\_from\_other\_config}
 
6449
 
 
6450
{\bf Overview:} 
 
6451
Remove the given key and its corresponding value from the other\_config
 
6452
field of the given host.  If the key is not in that Map, then do nothing.
 
6453
 
 
6454
 \noindent {\bf Signature:} 
 
6455
\begin{verbatim} void remove_from_other_config (session_id s, host ref self, string key)\end{verbatim}
 
6456
 
 
6457
 
 
6458
\noindent{\bf Arguments:}
 
6459
 
 
6460
 
 
6461
\vspace{0.3cm}
 
6462
\begin{tabular}{|c|c|p{7cm}|}
 
6463
 \hline
 
6464
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6465
{\tt host ref } & self & reference to the object \\ \hline 
 
6466
 
 
6467
{\tt string } & key & Key to remove \\ \hline 
 
6468
 
 
6469
\end{tabular}
 
6470
 
 
6471
\vspace{0.3cm}
 
6472
 
 
6473
 \noindent {\bf Return Type:} 
 
6474
{\tt 
 
6475
void
 
6476
}
 
6477
 
 
6478
 
 
6479
 
 
6480
\vspace{0.3cm}
 
6481
\vspace{0.3cm}
 
6482
\vspace{0.3cm}
 
6483
\subsubsection{RPC name:~get\_capabilities}
 
6484
 
 
6485
{\bf Overview:} 
 
6486
Get the capabilities field of the given host.
 
6487
 
 
6488
 \noindent {\bf Signature:} 
 
6489
\begin{verbatim} (string Set) get_capabilities (session_id s, host ref self)\end{verbatim}
 
6490
 
 
6491
 
 
6492
\noindent{\bf Arguments:}
 
6493
 
 
6494
 
 
6495
\vspace{0.3cm}
 
6496
\begin{tabular}{|c|c|p{7cm}|}
 
6497
 \hline
 
6498
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6499
{\tt host ref } & self & reference to the object \\ \hline 
 
6500
 
 
6501
\end{tabular}
 
6502
 
 
6503
\vspace{0.3cm}
 
6504
 
 
6505
 \noindent {\bf Return Type:} 
 
6506
{\tt 
 
6507
string Set
 
6508
}
 
6509
 
 
6510
 
 
6511
value of the field
 
6512
\vspace{0.3cm}
 
6513
\vspace{0.3cm}
 
6514
\vspace{0.3cm}
 
6515
\subsubsection{RPC name:~get\_cpu\_configuration}
 
6516
 
 
6517
{\bf Overview:} 
 
6518
Get the cpu\_configuration field of the given host.
 
6519
 
 
6520
 \noindent {\bf Signature:} 
 
6521
\begin{verbatim} ((string -> string) Map) get_cpu_configuration (session_id s, host ref self)\end{verbatim}
 
6522
 
 
6523
 
 
6524
\noindent{\bf Arguments:}
 
6525
 
 
6526
 
 
6527
\vspace{0.3cm}
 
6528
\begin{tabular}{|c|c|p{7cm}|}
 
6529
 \hline
 
6530
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6531
{\tt host ref } & self & reference to the object \\ \hline 
 
6532
 
 
6533
\end{tabular}
 
6534
 
 
6535
\vspace{0.3cm}
 
6536
 
 
6537
 \noindent {\bf Return Type:} 
 
6538
{\tt 
 
6539
(string $\rightarrow$ string) Map
 
6540
}
 
6541
 
 
6542
 
 
6543
value of the field
 
6544
\vspace{0.3cm}
 
6545
\vspace{0.3cm}
 
6546
\vspace{0.3cm}
 
6547
\subsubsection{RPC name:~get\_sched\_policy}
 
6548
 
 
6549
{\bf Overview:} 
 
6550
Get the sched\_policy field of the given host.
 
6551
 
 
6552
 \noindent {\bf Signature:} 
 
6553
\begin{verbatim} string get_sched_policy (session_id s, host ref self)\end{verbatim}
 
6554
 
 
6555
 
 
6556
\noindent{\bf Arguments:}
 
6557
 
 
6558
 
 
6559
\vspace{0.3cm}
 
6560
\begin{tabular}{|c|c|p{7cm}|}
 
6561
 \hline
 
6562
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6563
{\tt host ref } & self & reference to the object \\ \hline 
 
6564
 
 
6565
\end{tabular}
 
6566
 
 
6567
\vspace{0.3cm}
 
6568
 
 
6569
 \noindent {\bf Return Type:} 
 
6570
{\tt 
 
6571
string
 
6572
}
 
6573
 
 
6574
 
 
6575
value of the field
 
6576
\vspace{0.3cm}
 
6577
\vspace{0.3cm}
 
6578
\vspace{0.3cm}
 
6579
\subsubsection{RPC name:~get\_supported\_bootloaders}
 
6580
 
 
6581
{\bf Overview:} 
 
6582
Get the supported\_bootloaders field of the given host.
 
6583
 
 
6584
 \noindent {\bf Signature:} 
 
6585
\begin{verbatim} (string Set) get_supported_bootloaders (session_id s, host ref self)\end{verbatim}
 
6586
 
 
6587
 
 
6588
\noindent{\bf Arguments:}
 
6589
 
 
6590
 
 
6591
\vspace{0.3cm}
 
6592
\begin{tabular}{|c|c|p{7cm}|}
 
6593
 \hline
 
6594
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6595
{\tt host ref } & self & reference to the object \\ \hline 
 
6596
 
 
6597
\end{tabular}
 
6598
 
 
6599
\vspace{0.3cm}
 
6600
 
 
6601
 \noindent {\bf Return Type:} 
 
6602
{\tt 
 
6603
string Set
 
6604
}
 
6605
 
 
6606
 
 
6607
value of the field
 
6608
\vspace{0.3cm}
 
6609
\vspace{0.3cm}
 
6610
\vspace{0.3cm}
 
6611
\subsubsection{RPC name:~get\_resident\_VMs}
 
6612
 
 
6613
{\bf Overview:} 
 
6614
Get the resident\_VMs field of the given host.
 
6615
 
 
6616
 \noindent {\bf Signature:} 
 
6617
\begin{verbatim} ((VM ref) Set) get_resident_VMs (session_id s, host ref self)\end{verbatim}
 
6618
 
 
6619
 
 
6620
\noindent{\bf Arguments:}
 
6621
 
 
6622
 
 
6623
\vspace{0.3cm}
 
6624
\begin{tabular}{|c|c|p{7cm}|}
 
6625
 \hline
 
6626
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6627
{\tt host ref } & self & reference to the object \\ \hline 
 
6628
 
 
6629
\end{tabular}
 
6630
 
 
6631
\vspace{0.3cm}
 
6632
 
 
6633
 \noindent {\bf Return Type:} 
 
6634
{\tt 
 
6635
(VM ref) Set
 
6636
}
 
6637
 
 
6638
 
 
6639
value of the field
 
6640
\vspace{0.3cm}
 
6641
\vspace{0.3cm}
 
6642
\vspace{0.3cm}
 
6643
\subsubsection{RPC name:~get\_logging}
 
6644
 
 
6645
{\bf Overview:} 
 
6646
Get the logging field of the given host.
 
6647
 
 
6648
 \noindent {\bf Signature:} 
 
6649
\begin{verbatim} ((string -> string) Map) get_logging (session_id s, host ref self)\end{verbatim}
 
6650
 
 
6651
 
 
6652
\noindent{\bf Arguments:}
 
6653
 
 
6654
 
 
6655
\vspace{0.3cm}
 
6656
\begin{tabular}{|c|c|p{7cm}|}
 
6657
 \hline
 
6658
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6659
{\tt host ref } & self & reference to the object \\ \hline 
 
6660
 
 
6661
\end{tabular}
 
6662
 
 
6663
\vspace{0.3cm}
 
6664
 
 
6665
 \noindent {\bf Return Type:} 
 
6666
{\tt 
 
6667
(string $\rightarrow$ string) Map
 
6668
}
 
6669
 
 
6670
 
 
6671
value of the field
 
6672
\vspace{0.3cm}
 
6673
\vspace{0.3cm}
 
6674
\vspace{0.3cm}
 
6675
\subsubsection{RPC name:~set\_logging}
 
6676
 
 
6677
{\bf Overview:} 
 
6678
Set the logging field of the given host.
 
6679
 
 
6680
 \noindent {\bf Signature:} 
 
6681
\begin{verbatim} void set_logging (session_id s, host ref self, (string -> string) Map value)\end{verbatim}
 
6682
 
 
6683
 
 
6684
\noindent{\bf Arguments:}
 
6685
 
 
6686
 
 
6687
\vspace{0.3cm}
 
6688
\begin{tabular}{|c|c|p{7cm}|}
 
6689
 \hline
 
6690
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6691
{\tt host ref } & self & reference to the object \\ \hline 
 
6692
 
 
6693
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
6694
 
 
6695
\end{tabular}
 
6696
 
 
6697
\vspace{0.3cm}
 
6698
 
 
6699
 \noindent {\bf Return Type:} 
 
6700
{\tt 
 
6701
void
 
6702
}
 
6703
 
 
6704
 
 
6705
 
 
6706
\vspace{0.3cm}
 
6707
\vspace{0.3cm}
 
6708
\vspace{0.3cm}
 
6709
\subsubsection{RPC name:~add\_to\_logging}
 
6710
 
 
6711
{\bf Overview:} 
 
6712
Add the given key-value pair to the logging field of the given host.
 
6713
 
 
6714
 \noindent {\bf Signature:} 
 
6715
\begin{verbatim} void add_to_logging (session_id s, host ref self, string key, string value)\end{verbatim}
 
6716
 
 
6717
 
 
6718
\noindent{\bf Arguments:}
 
6719
 
 
6720
 
 
6721
\vspace{0.3cm}
 
6722
\begin{tabular}{|c|c|p{7cm}|}
 
6723
 \hline
 
6724
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6725
{\tt host ref } & self & reference to the object \\ \hline 
 
6726
 
 
6727
{\tt string } & key & Key to add \\ \hline 
 
6728
 
 
6729
{\tt string } & value & Value to add \\ \hline 
 
6730
 
 
6731
\end{tabular}
 
6732
 
 
6733
\vspace{0.3cm}
 
6734
 
 
6735
 \noindent {\bf Return Type:} 
 
6736
{\tt 
 
6737
void
 
6738
}
 
6739
 
 
6740
 
 
6741
 
 
6742
\vspace{0.3cm}
 
6743
\vspace{0.3cm}
 
6744
\vspace{0.3cm}
 
6745
\subsubsection{RPC name:~remove\_from\_logging}
 
6746
 
 
6747
{\bf Overview:} 
 
6748
Remove the given key and its corresponding value from the logging field of
 
6749
the given host.  If the key is not in that Map, then do nothing.
 
6750
 
 
6751
 \noindent {\bf Signature:} 
 
6752
\begin{verbatim} void remove_from_logging (session_id s, host ref self, string key)\end{verbatim}
 
6753
 
 
6754
 
 
6755
\noindent{\bf Arguments:}
 
6756
 
 
6757
 
 
6758
\vspace{0.3cm}
 
6759
\begin{tabular}{|c|c|p{7cm}|}
 
6760
 \hline
 
6761
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6762
{\tt host ref } & self & reference to the object \\ \hline 
 
6763
 
 
6764
{\tt string } & key & Key to remove \\ \hline 
 
6765
 
 
6766
\end{tabular}
 
6767
 
 
6768
\vspace{0.3cm}
 
6769
 
 
6770
 \noindent {\bf Return Type:} 
 
6771
{\tt 
 
6772
void
 
6773
}
 
6774
 
 
6775
 
 
6776
 
 
6777
\vspace{0.3cm}
 
6778
\vspace{0.3cm}
 
6779
\vspace{0.3cm}
 
6780
\subsubsection{RPC name:~get\_PIFs}
 
6781
 
 
6782
{\bf Overview:} 
 
6783
Get the PIFs field of the given host.
 
6784
 
 
6785
 \noindent {\bf Signature:} 
 
6786
\begin{verbatim} ((PIF ref) Set) get_PIFs (session_id s, host ref self)\end{verbatim}
 
6787
 
 
6788
 
 
6789
\noindent{\bf Arguments:}
 
6790
 
 
6791
 
 
6792
\vspace{0.3cm}
 
6793
\begin{tabular}{|c|c|p{7cm}|}
 
6794
 \hline
 
6795
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6796
{\tt host ref } & self & reference to the object \\ \hline 
 
6797
 
 
6798
\end{tabular}
 
6799
 
 
6800
\vspace{0.3cm}
 
6801
 
 
6802
 \noindent {\bf Return Type:} 
 
6803
{\tt 
 
6804
(PIF ref) Set
 
6805
}
 
6806
 
 
6807
 
 
6808
value of the field
 
6809
\vspace{0.3cm}
 
6810
\vspace{0.3cm}
 
6811
\vspace{0.3cm}
 
6812
\subsubsection{RPC name:~get\_suspend\_image\_sr}
 
6813
 
 
6814
{\bf Overview:} 
 
6815
Get the suspend\_image\_sr field of the given host.
 
6816
 
 
6817
 \noindent {\bf Signature:} 
 
6818
\begin{verbatim} (SR ref) get_suspend_image_sr (session_id s, host ref self)\end{verbatim}
 
6819
 
 
6820
 
 
6821
\noindent{\bf Arguments:}
 
6822
 
 
6823
 
 
6824
\vspace{0.3cm}
 
6825
\begin{tabular}{|c|c|p{7cm}|}
 
6826
 \hline
 
6827
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6828
{\tt host ref } & self & reference to the object \\ \hline 
 
6829
 
 
6830
\end{tabular}
 
6831
 
 
6832
\vspace{0.3cm}
 
6833
 
 
6834
 \noindent {\bf Return Type:} 
 
6835
{\tt 
 
6836
SR ref
 
6837
}
 
6838
 
 
6839
 
 
6840
value of the field
 
6841
\vspace{0.3cm}
 
6842
\vspace{0.3cm}
 
6843
\vspace{0.3cm}
 
6844
\subsubsection{RPC name:~set\_suspend\_image\_sr}
 
6845
 
 
6846
{\bf Overview:} 
 
6847
Set the suspend\_image\_sr field of the given host.
 
6848
 
 
6849
 \noindent {\bf Signature:} 
 
6850
\begin{verbatim} void set_suspend_image_sr (session_id s, host ref self, SR ref value)\end{verbatim}
 
6851
 
 
6852
 
 
6853
\noindent{\bf Arguments:}
 
6854
 
 
6855
 
 
6856
\vspace{0.3cm}
 
6857
\begin{tabular}{|c|c|p{7cm}|}
 
6858
 \hline
 
6859
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6860
{\tt host ref } & self & reference to the object \\ \hline 
 
6861
 
 
6862
{\tt SR ref } & value & New value to set \\ \hline 
 
6863
 
 
6864
\end{tabular}
 
6865
 
 
6866
\vspace{0.3cm}
 
6867
 
 
6868
 \noindent {\bf Return Type:} 
 
6869
{\tt 
 
6870
void
 
6871
}
 
6872
 
 
6873
 
 
6874
 
 
6875
\vspace{0.3cm}
 
6876
\vspace{0.3cm}
 
6877
\vspace{0.3cm}
 
6878
\subsubsection{RPC name:~get\_crash\_dump\_sr}
 
6879
 
 
6880
{\bf Overview:} 
 
6881
Get the crash\_dump\_sr field of the given host.
 
6882
 
 
6883
 \noindent {\bf Signature:} 
 
6884
\begin{verbatim} (SR ref) get_crash_dump_sr (session_id s, host ref self)\end{verbatim}
 
6885
 
 
6886
 
 
6887
\noindent{\bf Arguments:}
 
6888
 
 
6889
 
 
6890
\vspace{0.3cm}
 
6891
\begin{tabular}{|c|c|p{7cm}|}
 
6892
 \hline
 
6893
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6894
{\tt host ref } & self & reference to the object \\ \hline 
 
6895
 
 
6896
\end{tabular}
 
6897
 
 
6898
\vspace{0.3cm}
 
6899
 
 
6900
 \noindent {\bf Return Type:} 
 
6901
{\tt 
 
6902
SR ref
 
6903
}
 
6904
 
 
6905
 
 
6906
value of the field
 
6907
\vspace{0.3cm}
 
6908
\vspace{0.3cm}
 
6909
\vspace{0.3cm}
 
6910
\subsubsection{RPC name:~set\_crash\_dump\_sr}
 
6911
 
 
6912
{\bf Overview:} 
 
6913
Set the crash\_dump\_sr field of the given host.
 
6914
 
 
6915
 \noindent {\bf Signature:} 
 
6916
\begin{verbatim} void set_crash_dump_sr (session_id s, host ref self, SR ref value)\end{verbatim}
 
6917
 
 
6918
 
 
6919
\noindent{\bf Arguments:}
 
6920
 
 
6921
 
 
6922
\vspace{0.3cm}
 
6923
\begin{tabular}{|c|c|p{7cm}|}
 
6924
 \hline
 
6925
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6926
{\tt host ref } & self & reference to the object \\ \hline 
 
6927
 
 
6928
{\tt SR ref } & value & New value to set \\ \hline 
 
6929
 
 
6930
\end{tabular}
 
6931
 
 
6932
\vspace{0.3cm}
 
6933
 
 
6934
 \noindent {\bf Return Type:} 
 
6935
{\tt 
 
6936
void
 
6937
}
 
6938
 
 
6939
 
 
6940
 
 
6941
\vspace{0.3cm}
 
6942
\vspace{0.3cm}
 
6943
\vspace{0.3cm}
 
6944
\subsubsection{RPC name:~get\_PBDs}
 
6945
 
 
6946
{\bf Overview:} 
 
6947
Get the PBDs field of the given host.
 
6948
 
 
6949
 \noindent {\bf Signature:} 
 
6950
\begin{verbatim} ((PBD ref) Set) get_PBDs (session_id s, host ref self)\end{verbatim}
 
6951
 
 
6952
 
 
6953
\noindent{\bf Arguments:}
 
6954
 
 
6955
 
 
6956
\vspace{0.3cm}
 
6957
\begin{tabular}{|c|c|p{7cm}|}
 
6958
 \hline
 
6959
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6960
{\tt host ref } & self & reference to the object \\ \hline 
 
6961
 
 
6962
\end{tabular}
 
6963
 
 
6964
\vspace{0.3cm}
 
6965
 
 
6966
 \noindent {\bf Return Type:} 
 
6967
{\tt 
 
6968
(PBD ref) Set
 
6969
}
 
6970
 
 
6971
 
 
6972
value of the field
 
6973
\vspace{0.3cm}
 
6974
\vspace{0.3cm}
 
6975
\vspace{0.3cm}
 
6976
\subsubsection{RPC name:~get\_PPCIs}
 
6977
 
 
6978
{\bf Overview:} 
 
6979
Get the PPCIs field of the given host.
 
6980
 
 
6981
 \noindent {\bf Signature:} 
 
6982
\begin{verbatim} ((PPCI ref) Set) get_PPCIs (session_id s, host ref self)\end{verbatim}
 
6983
 
 
6984
 
 
6985
\noindent{\bf Arguments:}
 
6986
 
 
6987
 
 
6988
\vspace{0.3cm}
 
6989
\begin{tabular}{|c|c|p{7cm}|}
 
6990
 \hline
 
6991
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
6992
{\tt host ref } & self & reference to the object \\ \hline 
 
6993
 
 
6994
\end{tabular}
 
6995
 
 
6996
\vspace{0.3cm}
 
6997
 
 
6998
 \noindent {\bf Return Type:} 
 
6999
{\tt 
 
7000
(PPCI ref) Set
 
7001
}
 
7002
 
 
7003
 
 
7004
value of the field
 
7005
\vspace{0.3cm}
 
7006
\vspace{0.3cm}
 
7007
\vspace{0.3cm}
 
7008
\subsubsection{RPC name:~get\_PSCSIs}
 
7009
 
 
7010
{\bf Overview:} 
 
7011
Get the PSCSIs field of the given host.
 
7012
 
 
7013
 \noindent {\bf Signature:} 
 
7014
\begin{verbatim} ((PSCSI ref) Set) get_PSCSIs (session_id s, host ref self)\end{verbatim}
 
7015
 
 
7016
 
 
7017
\noindent{\bf Arguments:}
 
7018
 
 
7019
 
 
7020
\vspace{0.3cm}
 
7021
\begin{tabular}{|c|c|p{7cm}|}
 
7022
 \hline
 
7023
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7024
{\tt host ref } & self & reference to the object \\ \hline 
 
7025
 
 
7026
\end{tabular}
 
7027
 
 
7028
\vspace{0.3cm}
 
7029
 
 
7030
 \noindent {\bf Return Type:} 
 
7031
{\tt 
 
7032
(PSCSI ref) Set
 
7033
}
 
7034
 
 
7035
 
 
7036
value of the field
 
7037
\vspace{0.3cm}
 
7038
\vspace{0.3cm}
 
7039
\vspace{0.3cm}
 
7040
\subsubsection{RPC name:~get\_PSCSI\_HBAs}
 
7041
 
 
7042
{\bf Overview:} 
 
7043
Get the PSCSI\_HBAs field of the given host.
 
7044
 
 
7045
 \noindent {\bf Signature:} 
 
7046
\begin{verbatim} ((PSCSI_HBA ref) Set) get_PSCSI_HBAs (session_id s, host ref self)\end{verbatim}
 
7047
 
 
7048
 
 
7049
\noindent{\bf Arguments:}
 
7050
 
 
7051
 
 
7052
\vspace{0.3cm}
 
7053
\begin{tabular}{|c|c|p{7cm}|}
 
7054
 \hline
 
7055
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7056
{\tt host ref } & self & reference to the object \\ \hline 
 
7057
 
 
7058
\end{tabular}
 
7059
 
 
7060
\vspace{0.3cm}
 
7061
 
 
7062
 \noindent {\bf Return Type:} 
 
7063
{\tt 
 
7064
(PSCSI\_HBA ref) Set
 
7065
}
 
7066
 
 
7067
 
 
7068
value of the field
 
7069
\vspace{0.3cm}
 
7070
\vspace{0.3cm}
 
7071
\vspace{0.3cm}
 
7072
\subsubsection{RPC name:~get\_host\_CPUs}
 
7073
 
 
7074
{\bf Overview:} 
 
7075
Get the host\_CPUs field of the given host.
 
7076
 
 
7077
 \noindent {\bf Signature:} 
 
7078
\begin{verbatim} ((host_cpu ref) Set) get_host_CPUs (session_id s, host ref self)\end{verbatim}
 
7079
 
 
7080
 
 
7081
\noindent{\bf Arguments:}
 
7082
 
 
7083
 
 
7084
\vspace{0.3cm}
 
7085
\begin{tabular}{|c|c|p{7cm}|}
 
7086
 \hline
 
7087
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7088
{\tt host ref } & self & reference to the object \\ \hline 
 
7089
 
 
7090
\end{tabular}
 
7091
 
 
7092
\vspace{0.3cm}
 
7093
 
 
7094
 \noindent {\bf Return Type:} 
 
7095
{\tt 
 
7096
(host\_cpu ref) Set
 
7097
}
 
7098
 
 
7099
 
 
7100
value of the field
 
7101
\vspace{0.3cm}
 
7102
\vspace{0.3cm}
 
7103
\vspace{0.3cm}
 
7104
\subsubsection{RPC name:~get\_metrics}
 
7105
 
 
7106
{\bf Overview:} 
 
7107
Get the metrics field of the given host.
 
7108
 
 
7109
 \noindent {\bf Signature:} 
 
7110
\begin{verbatim} (host_metrics ref) get_metrics (session_id s, host ref self)\end{verbatim}
 
7111
 
 
7112
 
 
7113
\noindent{\bf Arguments:}
 
7114
 
 
7115
 
 
7116
\vspace{0.3cm}
 
7117
\begin{tabular}{|c|c|p{7cm}|}
 
7118
 \hline
 
7119
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7120
{\tt host ref } & self & reference to the object \\ \hline 
 
7121
 
 
7122
\end{tabular}
 
7123
 
 
7124
\vspace{0.3cm}
 
7125
 
 
7126
 \noindent {\bf Return Type:} 
 
7127
{\tt 
 
7128
host\_metrics ref
 
7129
}
 
7130
 
 
7131
 
 
7132
value of the field
 
7133
\vspace{0.3cm}
 
7134
\vspace{0.3cm}
 
7135
\vspace{0.3cm}
 
7136
\subsubsection{RPC name:~get\_by\_uuid}
 
7137
 
 
7138
{\bf Overview:} 
 
7139
Get a reference to the host instance with the specified UUID.
 
7140
 
 
7141
 \noindent {\bf Signature:} 
 
7142
\begin{verbatim} (host ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
7143
 
 
7144
 
 
7145
\noindent{\bf Arguments:}
 
7146
 
 
7147
 
 
7148
\vspace{0.3cm}
 
7149
\begin{tabular}{|c|c|p{7cm}|}
 
7150
 \hline
 
7151
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7152
{\tt string } & uuid & UUID of object to return \\ \hline 
 
7153
 
 
7154
\end{tabular}
 
7155
 
 
7156
\vspace{0.3cm}
 
7157
 
 
7158
 \noindent {\bf Return Type:} 
 
7159
{\tt 
 
7160
host ref
 
7161
}
 
7162
 
 
7163
 
 
7164
reference to the object
 
7165
\vspace{0.3cm}
 
7166
\vspace{0.3cm}
 
7167
\vspace{0.3cm}
 
7168
\subsubsection{RPC name:~get\_record}
 
7169
 
 
7170
{\bf Overview:} 
 
7171
Get a record containing the current state of the given host.
 
7172
 
 
7173
 \noindent {\bf Signature:} 
 
7174
\begin{verbatim} (host record) get_record (session_id s, host ref self)\end{verbatim}
 
7175
 
 
7176
 
 
7177
\noindent{\bf Arguments:}
 
7178
 
 
7179
 
 
7180
\vspace{0.3cm}
 
7181
\begin{tabular}{|c|c|p{7cm}|}
 
7182
 \hline
 
7183
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7184
{\tt host ref } & self & reference to the object \\ \hline 
 
7185
 
 
7186
\end{tabular}
 
7187
 
 
7188
\vspace{0.3cm}
 
7189
 
 
7190
 \noindent {\bf Return Type:} 
 
7191
{\tt 
 
7192
host record
 
7193
}
 
7194
 
 
7195
 
 
7196
all fields from the object
 
7197
\vspace{0.3cm}
 
7198
\vspace{0.3cm}
 
7199
\vspace{0.3cm}
 
7200
\subsubsection{RPC name:~get\_by\_name\_label}
 
7201
 
 
7202
{\bf Overview:} 
 
7203
Get all the host instances with the given label.
 
7204
 
 
7205
 \noindent {\bf Signature:} 
 
7206
\begin{verbatim} ((host ref) Set) get_by_name_label (session_id s, string label)\end{verbatim}
 
7207
 
 
7208
 
 
7209
\noindent{\bf Arguments:}
 
7210
 
 
7211
 
 
7212
\vspace{0.3cm}
 
7213
\begin{tabular}{|c|c|p{7cm}|}
 
7214
 \hline
 
7215
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7216
{\tt string } & label & label of object to return \\ \hline 
 
7217
 
 
7218
\end{tabular}
 
7219
 
 
7220
\vspace{0.3cm}
 
7221
 
 
7222
 \noindent {\bf Return Type:} 
 
7223
{\tt 
 
7224
(host ref) Set
 
7225
}
 
7226
 
 
7227
 
 
7228
references to objects with match names
 
7229
\vspace{0.3cm}
 
7230
\vspace{0.3cm}
 
7231
\vspace{0.3cm}
 
7232
 
 
7233
\vspace{1cm}
 
7234
\newpage
 
7235
\section{Class: host\_metrics}
 
7236
\subsection{Fields for class: host\_metrics}
 
7237
\begin{longtable}{|lllp{0.38\textwidth}|}
 
7238
\hline
 
7239
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf host\_metrics} \\
 
7240
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em
 
7241
The metrics associated with a host.}} \\
 
7242
\hline
 
7243
Quals & Field & Type & Description \\
 
7244
\hline
 
7245
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
7246
$\mathit{RO}_\mathit{run}$ &  {\tt memory/total} & int & Host's total memory (bytes) \\
 
7247
$\mathit{RO}_\mathit{run}$ &  {\tt memory/free} & int & Host's free memory (bytes) \\
 
7248
$\mathit{RO}_\mathit{run}$ &  {\tt last\_updated} & datetime & Time at which this information was last updated \\
 
7249
\hline
 
7250
\end{longtable}
 
7251
\subsection{RPCs associated with class: host\_metrics}
 
7252
\subsubsection{RPC name:~get\_all}
 
7253
 
 
7254
{\bf Overview:} 
 
7255
Return a list of all the host\_metrics instances known to the system.
 
7256
 
 
7257
 \noindent {\bf Signature:} 
 
7258
\begin{verbatim} ((host_metrics ref) Set) get_all (session_id s)\end{verbatim}
 
7259
 
 
7260
 
 
7261
\vspace{0.3cm}
 
7262
 
 
7263
 \noindent {\bf Return Type:} 
 
7264
{\tt 
 
7265
(host\_metrics ref) Set
 
7266
}
 
7267
 
 
7268
 
 
7269
references to all objects
 
7270
\vspace{0.3cm}
 
7271
\vspace{0.3cm}
 
7272
\vspace{0.3cm}
 
7273
\subsubsection{RPC name:~get\_uuid}
 
7274
 
 
7275
{\bf Overview:} 
 
7276
Get the uuid field of the given host\_metrics.
 
7277
 
 
7278
 \noindent {\bf Signature:} 
 
7279
\begin{verbatim} string get_uuid (session_id s, host_metrics ref self)\end{verbatim}
 
7280
 
 
7281
 
 
7282
\noindent{\bf Arguments:}
 
7283
 
 
7284
 
 
7285
\vspace{0.3cm}
 
7286
\begin{tabular}{|c|c|p{7cm}|}
 
7287
 \hline
 
7288
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7289
{\tt host\_metrics ref } & self & reference to the object \\ \hline 
 
7290
 
 
7291
\end{tabular}
 
7292
 
 
7293
\vspace{0.3cm}
 
7294
 
 
7295
 \noindent {\bf Return Type:} 
 
7296
{\tt 
 
7297
string
 
7298
}
 
7299
 
 
7300
 
 
7301
value of the field
 
7302
\vspace{0.3cm}
 
7303
\vspace{0.3cm}
 
7304
\vspace{0.3cm}
 
7305
\subsubsection{RPC name:~get\_memory\_total}
 
7306
 
 
7307
{\bf Overview:} 
 
7308
Get the memory/total field of the given host\_metrics.
 
7309
 
 
7310
 \noindent {\bf Signature:} 
 
7311
\begin{verbatim} int get_memory_total (session_id s, host_metrics ref self)\end{verbatim}
 
7312
 
 
7313
 
 
7314
\noindent{\bf Arguments:}
 
7315
 
 
7316
 
 
7317
\vspace{0.3cm}
 
7318
\begin{tabular}{|c|c|p{7cm}|}
 
7319
 \hline
 
7320
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7321
{\tt host\_metrics ref } & self & reference to the object \\ \hline 
 
7322
 
 
7323
\end{tabular}
 
7324
 
 
7325
\vspace{0.3cm}
 
7326
 
 
7327
 \noindent {\bf Return Type:} 
 
7328
{\tt 
 
7329
int
 
7330
}
 
7331
 
 
7332
 
 
7333
value of the field
 
7334
\vspace{0.3cm}
 
7335
\vspace{0.3cm}
 
7336
\vspace{0.3cm}
 
7337
\subsubsection{RPC name:~get\_memory\_free}
 
7338
 
 
7339
{\bf Overview:} 
 
7340
Get the memory/free field of the given host\_metrics.
 
7341
 
 
7342
 \noindent {\bf Signature:} 
 
7343
\begin{verbatim} int get_memory_free (session_id s, host_metrics ref self)\end{verbatim}
 
7344
 
 
7345
 
 
7346
\noindent{\bf Arguments:}
 
7347
 
 
7348
 
 
7349
\vspace{0.3cm}
 
7350
\begin{tabular}{|c|c|p{7cm}|}
 
7351
 \hline
 
7352
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7353
{\tt host\_metrics ref } & self & reference to the object \\ \hline 
 
7354
 
 
7355
\end{tabular}
 
7356
 
 
7357
\vspace{0.3cm}
 
7358
 
 
7359
 \noindent {\bf Return Type:} 
 
7360
{\tt 
 
7361
int
 
7362
}
 
7363
 
 
7364
 
 
7365
value of the field
 
7366
\vspace{0.3cm}
 
7367
\vspace{0.3cm}
 
7368
\vspace{0.3cm}
 
7369
\subsubsection{RPC name:~get\_last\_updated}
 
7370
 
 
7371
{\bf Overview:} 
 
7372
Get the last\_updated field of the given host\_metrics.
 
7373
 
 
7374
 \noindent {\bf Signature:} 
 
7375
\begin{verbatim} datetime get_last_updated (session_id s, host_metrics ref self)\end{verbatim}
 
7376
 
 
7377
 
 
7378
\noindent{\bf Arguments:}
 
7379
 
 
7380
 
 
7381
\vspace{0.3cm}
 
7382
\begin{tabular}{|c|c|p{7cm}|}
 
7383
 \hline
 
7384
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7385
{\tt host\_metrics ref } & self & reference to the object \\ \hline 
 
7386
 
 
7387
\end{tabular}
 
7388
 
 
7389
\vspace{0.3cm}
 
7390
 
 
7391
 \noindent {\bf Return Type:} 
 
7392
{\tt 
 
7393
datetime
 
7394
}
 
7395
 
 
7396
 
 
7397
value of the field
 
7398
\vspace{0.3cm}
 
7399
\vspace{0.3cm}
 
7400
\vspace{0.3cm}
 
7401
\subsubsection{RPC name:~get\_by\_uuid}
 
7402
 
 
7403
{\bf Overview:} 
 
7404
Get a reference to the host\_metrics instance with the specified UUID.
 
7405
 
 
7406
 \noindent {\bf Signature:} 
 
7407
\begin{verbatim} (host_metrics ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
7408
 
 
7409
 
 
7410
\noindent{\bf Arguments:}
 
7411
 
 
7412
 
 
7413
\vspace{0.3cm}
 
7414
\begin{tabular}{|c|c|p{7cm}|}
 
7415
 \hline
 
7416
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7417
{\tt string } & uuid & UUID of object to return \\ \hline 
 
7418
 
 
7419
\end{tabular}
 
7420
 
 
7421
\vspace{0.3cm}
 
7422
 
 
7423
 \noindent {\bf Return Type:} 
 
7424
{\tt 
 
7425
host\_metrics ref
 
7426
}
 
7427
 
 
7428
 
 
7429
reference to the object
 
7430
\vspace{0.3cm}
 
7431
\vspace{0.3cm}
 
7432
\vspace{0.3cm}
 
7433
\subsubsection{RPC name:~get\_record}
 
7434
 
 
7435
{\bf Overview:} 
 
7436
Get a record containing the current state of the given host\_metrics.
 
7437
 
 
7438
 \noindent {\bf Signature:} 
 
7439
\begin{verbatim} (host_metrics record) get_record (session_id s, host_metrics ref self)\end{verbatim}
 
7440
 
 
7441
 
 
7442
\noindent{\bf Arguments:}
 
7443
 
 
7444
 
 
7445
\vspace{0.3cm}
 
7446
\begin{tabular}{|c|c|p{7cm}|}
 
7447
 \hline
 
7448
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7449
{\tt host\_metrics ref } & self & reference to the object \\ \hline 
 
7450
 
 
7451
\end{tabular}
 
7452
 
 
7453
\vspace{0.3cm}
 
7454
 
 
7455
 \noindent {\bf Return Type:} 
 
7456
{\tt 
 
7457
host\_metrics record
 
7458
}
 
7459
 
 
7460
 
 
7461
all fields from the object
 
7462
\vspace{0.3cm}
 
7463
\vspace{0.3cm}
 
7464
\vspace{0.3cm}
 
7465
 
 
7466
\vspace{1cm}
 
7467
\newpage
 
7468
\section{Class: host\_cpu}
 
7469
\subsection{Fields for class: host\_cpu}
 
7470
\begin{longtable}{|lllp{0.38\textwidth}|}
 
7471
\hline
 
7472
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf host\_cpu} \\
 
7473
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A physical CPU}} \\
 
7474
\hline
 
7475
Quals & Field & Type & Description \\
 
7476
\hline
 
7477
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
7478
$\mathit{RO}_\mathit{run}$ &  {\tt host} & host ref & the host the CPU is in \\
 
7479
$\mathit{RO}_\mathit{run}$ &  {\tt number} & int & the number of the physical CPU within the host \\
 
7480
$\mathit{RO}_\mathit{run}$ &  {\tt vendor} & string & the vendor of the physical CPU \\
 
7481
$\mathit{RO}_\mathit{run}$ &  {\tt speed} & int & the speed of the physical CPU \\
 
7482
$\mathit{RO}_\mathit{run}$ &  {\tt modelname} & string & the model name of the physical CPU \\
 
7483
$\mathit{RO}_\mathit{run}$ &  {\tt stepping} & string & the stepping of the physical CPU \\
 
7484
$\mathit{RO}_\mathit{run}$ &  {\tt flags} & string & the flags of the physical CPU (a decoded version of the features field) \\
 
7485
$\mathit{RO}_\mathit{run}$ &  {\tt features} & string & the physical CPU feature bitmap \\
 
7486
$\mathit{RO}_\mathit{run}$ &  {\tt utilisation} & float & the current CPU utilisation \\
 
7487
\hline
 
7488
\end{longtable}
 
7489
\subsection{RPCs associated with class: host\_cpu}
 
7490
\subsubsection{RPC name:~get\_all}
 
7491
 
 
7492
{\bf Overview:} 
 
7493
Return a list of all the host\_cpus known to the system.
 
7494
 
 
7495
 \noindent {\bf Signature:} 
 
7496
\begin{verbatim} ((host_cpu ref) Set) get_all (session_id s)\end{verbatim}
 
7497
 
 
7498
 
 
7499
\vspace{0.3cm}
 
7500
 
 
7501
 \noindent {\bf Return Type:} 
 
7502
{\tt 
 
7503
(host\_cpu ref) Set
 
7504
}
 
7505
 
 
7506
 
 
7507
references to all objects
 
7508
\vspace{0.3cm}
 
7509
\vspace{0.3cm}
 
7510
\vspace{0.3cm}
 
7511
\subsubsection{RPC name:~get\_uuid}
 
7512
 
 
7513
{\bf Overview:} 
 
7514
Get the uuid field of the given host\_cpu.
 
7515
 
 
7516
 \noindent {\bf Signature:} 
 
7517
\begin{verbatim} string get_uuid (session_id s, host_cpu ref self)\end{verbatim}
 
7518
 
 
7519
 
 
7520
\noindent{\bf Arguments:}
 
7521
 
 
7522
 
 
7523
\vspace{0.3cm}
 
7524
\begin{tabular}{|c|c|p{7cm}|}
 
7525
 \hline
 
7526
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7527
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7528
 
 
7529
\end{tabular}
 
7530
 
 
7531
\vspace{0.3cm}
 
7532
 
 
7533
 \noindent {\bf Return Type:} 
 
7534
{\tt 
 
7535
string
 
7536
}
 
7537
 
 
7538
 
 
7539
value of the field
 
7540
\vspace{0.3cm}
 
7541
\vspace{0.3cm}
 
7542
\vspace{0.3cm}
 
7543
\subsubsection{RPC name:~get\_host}
 
7544
 
 
7545
{\bf Overview:} 
 
7546
Get the host field of the given host\_cpu.
 
7547
 
 
7548
 \noindent {\bf Signature:} 
 
7549
\begin{verbatim} (host ref) get_host (session_id s, host_cpu ref self)\end{verbatim}
 
7550
 
 
7551
 
 
7552
\noindent{\bf Arguments:}
 
7553
 
 
7554
 
 
7555
\vspace{0.3cm}
 
7556
\begin{tabular}{|c|c|p{7cm}|}
 
7557
 \hline
 
7558
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7559
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7560
 
 
7561
\end{tabular}
 
7562
 
 
7563
\vspace{0.3cm}
 
7564
 
 
7565
 \noindent {\bf Return Type:} 
 
7566
{\tt 
 
7567
host ref
 
7568
}
 
7569
 
 
7570
 
 
7571
value of the field
 
7572
\vspace{0.3cm}
 
7573
\vspace{0.3cm}
 
7574
\vspace{0.3cm}
 
7575
\subsubsection{RPC name:~get\_number}
 
7576
 
 
7577
{\bf Overview:} 
 
7578
Get the number field of the given host\_cpu.
 
7579
 
 
7580
 \noindent {\bf Signature:} 
 
7581
\begin{verbatim} int get_number (session_id s, host_cpu ref self)\end{verbatim}
 
7582
 
 
7583
 
 
7584
\noindent{\bf Arguments:}
 
7585
 
 
7586
 
 
7587
\vspace{0.3cm}
 
7588
\begin{tabular}{|c|c|p{7cm}|}
 
7589
 \hline
 
7590
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7591
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7592
 
 
7593
\end{tabular}
 
7594
 
 
7595
\vspace{0.3cm}
 
7596
 
 
7597
 \noindent {\bf Return Type:} 
 
7598
{\tt 
 
7599
int
 
7600
}
 
7601
 
 
7602
 
 
7603
value of the field
 
7604
\vspace{0.3cm}
 
7605
\vspace{0.3cm}
 
7606
\vspace{0.3cm}
 
7607
\subsubsection{RPC name:~get\_vendor}
 
7608
 
 
7609
{\bf Overview:} 
 
7610
Get the vendor field of the given host\_cpu.
 
7611
 
 
7612
 \noindent {\bf Signature:} 
 
7613
\begin{verbatim} string get_vendor (session_id s, host_cpu ref self)\end{verbatim}
 
7614
 
 
7615
 
 
7616
\noindent{\bf Arguments:}
 
7617
 
 
7618
 
 
7619
\vspace{0.3cm}
 
7620
\begin{tabular}{|c|c|p{7cm}|}
 
7621
 \hline
 
7622
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7623
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7624
 
 
7625
\end{tabular}
 
7626
 
 
7627
\vspace{0.3cm}
 
7628
 
 
7629
 \noindent {\bf Return Type:} 
 
7630
{\tt 
 
7631
string
 
7632
}
 
7633
 
 
7634
 
 
7635
value of the field
 
7636
\vspace{0.3cm}
 
7637
\vspace{0.3cm}
 
7638
\vspace{0.3cm}
 
7639
\subsubsection{RPC name:~get\_speed}
 
7640
 
 
7641
{\bf Overview:} 
 
7642
Get the speed field of the given host\_cpu.
 
7643
 
 
7644
 \noindent {\bf Signature:} 
 
7645
\begin{verbatim} int get_speed (session_id s, host_cpu ref self)\end{verbatim}
 
7646
 
 
7647
 
 
7648
\noindent{\bf Arguments:}
 
7649
 
 
7650
 
 
7651
\vspace{0.3cm}
 
7652
\begin{tabular}{|c|c|p{7cm}|}
 
7653
 \hline
 
7654
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7655
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7656
 
 
7657
\end{tabular}
 
7658
 
 
7659
\vspace{0.3cm}
 
7660
 
 
7661
 \noindent {\bf Return Type:} 
 
7662
{\tt 
 
7663
int
 
7664
}
 
7665
 
 
7666
 
 
7667
value of the field
 
7668
\vspace{0.3cm}
 
7669
\vspace{0.3cm}
 
7670
\vspace{0.3cm}
 
7671
\subsubsection{RPC name:~get\_modelname}
 
7672
 
 
7673
{\bf Overview:} 
 
7674
Get the modelname field of the given host\_cpu.
 
7675
 
 
7676
 \noindent {\bf Signature:} 
 
7677
\begin{verbatim} string get_modelname (session_id s, host_cpu ref self)\end{verbatim}
 
7678
 
 
7679
 
 
7680
\noindent{\bf Arguments:}
 
7681
 
 
7682
 
 
7683
\vspace{0.3cm}
 
7684
\begin{tabular}{|c|c|p{7cm}|}
 
7685
 \hline
 
7686
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7687
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7688
 
 
7689
\end{tabular}
 
7690
 
 
7691
\vspace{0.3cm}
 
7692
 
 
7693
 \noindent {\bf Return Type:} 
 
7694
{\tt 
 
7695
string
 
7696
}
 
7697
 
 
7698
 
 
7699
value of the field
 
7700
\vspace{0.3cm}
 
7701
\vspace{0.3cm}
 
7702
\vspace{0.3cm}
 
7703
\subsubsection{RPC name:~get\_stepping}
 
7704
 
 
7705
{\bf Overview:} 
 
7706
Get the stepping field of the given host\_cpu.
 
7707
 
 
7708
 \noindent {\bf Signature:} 
 
7709
\begin{verbatim} string get_stepping (session_id s, host_cpu ref self)\end{verbatim}
 
7710
 
 
7711
 
 
7712
\noindent{\bf Arguments:}
 
7713
 
 
7714
 
 
7715
\vspace{0.3cm}
 
7716
\begin{tabular}{|c|c|p{7cm}|}
 
7717
 \hline
 
7718
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7719
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7720
 
 
7721
\end{tabular}
 
7722
 
 
7723
\vspace{0.3cm}
 
7724
 
 
7725
 \noindent {\bf Return Type:} 
 
7726
{\tt 
 
7727
string
 
7728
}
 
7729
 
 
7730
 
 
7731
value of the field
 
7732
\vspace{0.3cm}
 
7733
\vspace{0.3cm}
 
7734
\vspace{0.3cm}
 
7735
\subsubsection{RPC name:~get\_flags}
 
7736
 
 
7737
{\bf Overview:} 
 
7738
Get the flags field of the given host\_cpu.  As of this version of the
 
7739
API, the semantics of the returned string are explicitly unspecified,
 
7740
and may change in the future.
 
7741
 
 
7742
 \noindent {\bf Signature:} 
 
7743
\begin{verbatim} string get_flags (session_id s, host_cpu ref self)\end{verbatim}
 
7744
 
 
7745
 
 
7746
\noindent{\bf Arguments:}
 
7747
 
 
7748
 
 
7749
\vspace{0.3cm}
 
7750
\begin{tabular}{|c|c|p{7cm}|}
 
7751
 \hline
 
7752
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7753
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7754
 
 
7755
\end{tabular}
 
7756
 
 
7757
\vspace{0.3cm}
 
7758
 
 
7759
 \noindent {\bf Return Type:} 
 
7760
{\tt 
 
7761
string
 
7762
}
 
7763
 
 
7764
 
 
7765
value of the field
 
7766
\vspace{0.3cm}
 
7767
\vspace{0.3cm}
 
7768
\vspace{0.3cm}
 
7769
\subsubsection{RPC name:~get\_features}
 
7770
 
 
7771
{\bf Overview:} 
 
7772
Get the features field of the given host\_cpu. As of this version of the
 
7773
API, the semantics of the returned string are explicitly unspecified,
 
7774
and may change in the future.
 
7775
 
 
7776
 \noindent {\bf Signature:} 
 
7777
\begin{verbatim} string get_features (session_id s, host_cpu ref self)\end{verbatim}
 
7778
 
 
7779
 
 
7780
\noindent{\bf Arguments:}
 
7781
 
 
7782
 
 
7783
\vspace{0.3cm}
 
7784
\begin{tabular}{|c|c|p{7cm}|}
 
7785
 \hline
 
7786
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7787
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7788
 
 
7789
\end{tabular}
 
7790
 
 
7791
\vspace{0.3cm}
 
7792
 
 
7793
 \noindent {\bf Return Type:} 
 
7794
{\tt 
 
7795
string
 
7796
}
 
7797
 
 
7798
 
 
7799
value of the field
 
7800
\vspace{0.3cm}
 
7801
\vspace{0.3cm}
 
7802
\vspace{0.3cm}
 
7803
\subsubsection{RPC name:~get\_utilisation}
 
7804
 
 
7805
{\bf Overview:} 
 
7806
Get the utilisation field of the given host\_cpu.
 
7807
 
 
7808
 \noindent {\bf Signature:} 
 
7809
\begin{verbatim} float get_utilisation (session_id s, host_cpu ref self)\end{verbatim}
 
7810
 
 
7811
 
 
7812
\noindent{\bf Arguments:}
 
7813
 
 
7814
 
 
7815
\vspace{0.3cm}
 
7816
\begin{tabular}{|c|c|p{7cm}|}
 
7817
 \hline
 
7818
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7819
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7820
 
 
7821
\end{tabular}
 
7822
 
 
7823
\vspace{0.3cm}
 
7824
 
 
7825
 \noindent {\bf Return Type:} 
 
7826
{\tt 
 
7827
float
 
7828
}
 
7829
 
 
7830
 
 
7831
value of the field
 
7832
\vspace{0.3cm}
 
7833
\vspace{0.3cm}
 
7834
\vspace{0.3cm}
 
7835
\subsubsection{RPC name:~get\_by\_uuid}
 
7836
 
 
7837
{\bf Overview:} 
 
7838
Get a reference to the host\_cpu instance with the specified UUID.
 
7839
 
 
7840
 \noindent {\bf Signature:} 
 
7841
\begin{verbatim} (host_cpu ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
7842
 
 
7843
 
 
7844
\noindent{\bf Arguments:}
 
7845
 
 
7846
 
 
7847
\vspace{0.3cm}
 
7848
\begin{tabular}{|c|c|p{7cm}|}
 
7849
 \hline
 
7850
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7851
{\tt string } & uuid & UUID of object to return \\ \hline 
 
7852
 
 
7853
\end{tabular}
 
7854
 
 
7855
\vspace{0.3cm}
 
7856
 
 
7857
 \noindent {\bf Return Type:} 
 
7858
{\tt 
 
7859
host\_cpu ref
 
7860
}
 
7861
 
 
7862
 
 
7863
reference to the object
 
7864
\vspace{0.3cm}
 
7865
\vspace{0.3cm}
 
7866
\vspace{0.3cm}
 
7867
\subsubsection{RPC name:~get\_record}
 
7868
 
 
7869
{\bf Overview:} 
 
7870
Get a record containing the current state of the given host\_cpu.
 
7871
 
 
7872
 \noindent {\bf Signature:} 
 
7873
\begin{verbatim} (host_cpu record) get_record (session_id s, host_cpu ref self)\end{verbatim}
 
7874
 
 
7875
 
 
7876
\noindent{\bf Arguments:}
 
7877
 
 
7878
 
 
7879
\vspace{0.3cm}
 
7880
\begin{tabular}{|c|c|p{7cm}|}
 
7881
 \hline
 
7882
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7883
{\tt host\_cpu ref } & self & reference to the object \\ \hline 
 
7884
 
 
7885
\end{tabular}
 
7886
 
 
7887
\vspace{0.3cm}
 
7888
 
 
7889
 \noindent {\bf Return Type:} 
 
7890
{\tt 
 
7891
host\_cpu record
 
7892
}
 
7893
 
 
7894
 
 
7895
all fields from the object
 
7896
\vspace{0.3cm}
 
7897
\vspace{0.3cm}
 
7898
\vspace{0.3cm}
 
7899
 
 
7900
\vspace{1cm}
 
7901
\newpage
 
7902
\section{Class: network}
 
7903
\subsection{Fields for class: network}
 
7904
\begin{longtable}{|lllp{0.38\textwidth}|}
 
7905
\hline
 
7906
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf network} \\
 
7907
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
7908
virtual network.}} \\
 
7909
\hline
 
7910
Quals & Field & Type & Description \\
 
7911
\hline
 
7912
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
7913
$\mathit{RW}$ &  {\tt name/label} & string & a human-readable name \\
 
7914
$\mathit{RW}$ &  {\tt name/description} & string & a notes field containg human-readable description \\
 
7915
$\mathit{RO}_\mathit{run}$ &  {\tt VIFs} & (VIF ref) Set & list of connected vifs \\
 
7916
$\mathit{RO}_\mathit{run}$ &  {\tt PIFs} & (PIF ref) Set & list of connected pifs \\
 
7917
$\mathit{RW}$ &  {\tt default\_gateway} & string & default gateway \\
 
7918
$\mathit{RW}$ &  {\tt default\_netmask} & string & default netmask \\
 
7919
$\mathit{RW}$ &  {\tt other\_config} & (string $\rightarrow$ string) Map & additional configuration \\
 
7920
\hline
 
7921
\end{longtable}
 
7922
\subsection{RPCs associated with class: network}
 
7923
\subsubsection{RPC name:~get\_all}
 
7924
 
 
7925
{\bf Overview:} 
 
7926
Return a list of all the networks known to the system
 
7927
 
 
7928
 \noindent {\bf Signature:} 
 
7929
\begin{verbatim} ((network ref) Set) get_all (session_id s)\end{verbatim}
 
7930
 
 
7931
 
 
7932
\vspace{0.3cm}
 
7933
 
 
7934
 \noindent {\bf Return Type:} 
 
7935
{\tt 
 
7936
(network ref) Set
 
7937
}
 
7938
 
 
7939
 
 
7940
A list of all the IDs of all the networks
 
7941
\vspace{0.3cm}
 
7942
\vspace{0.3cm}
 
7943
\vspace{0.3cm}
 
7944
\subsubsection{RPC name:~get\_uuid}
 
7945
 
 
7946
{\bf Overview:} 
 
7947
Get the uuid field of the given network.
 
7948
 
 
7949
 \noindent {\bf Signature:} 
 
7950
\begin{verbatim} string get_uuid (session_id s, network ref self)\end{verbatim}
 
7951
 
 
7952
 
 
7953
\noindent{\bf Arguments:}
 
7954
 
 
7955
 
 
7956
\vspace{0.3cm}
 
7957
\begin{tabular}{|c|c|p{7cm}|}
 
7958
 \hline
 
7959
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7960
{\tt network ref } & self & reference to the object \\ \hline 
 
7961
 
 
7962
\end{tabular}
 
7963
 
 
7964
\vspace{0.3cm}
 
7965
 
 
7966
 \noindent {\bf Return Type:} 
 
7967
{\tt 
 
7968
string
 
7969
}
 
7970
 
 
7971
 
 
7972
value of the field
 
7973
\vspace{0.3cm}
 
7974
\vspace{0.3cm}
 
7975
\vspace{0.3cm}
 
7976
\subsubsection{RPC name:~get\_name\_label}
 
7977
 
 
7978
{\bf Overview:} 
 
7979
Get the name/label field of the given network.
 
7980
 
 
7981
 \noindent {\bf Signature:} 
 
7982
\begin{verbatim} string get_name_label (session_id s, network ref self)\end{verbatim}
 
7983
 
 
7984
 
 
7985
\noindent{\bf Arguments:}
 
7986
 
 
7987
 
 
7988
\vspace{0.3cm}
 
7989
\begin{tabular}{|c|c|p{7cm}|}
 
7990
 \hline
 
7991
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
7992
{\tt network ref } & self & reference to the object \\ \hline 
 
7993
 
 
7994
\end{tabular}
 
7995
 
 
7996
\vspace{0.3cm}
 
7997
 
 
7998
 \noindent {\bf Return Type:} 
 
7999
{\tt 
 
8000
string
 
8001
}
 
8002
 
 
8003
 
 
8004
value of the field
 
8005
\vspace{0.3cm}
 
8006
\vspace{0.3cm}
 
8007
\vspace{0.3cm}
 
8008
\subsubsection{RPC name:~set\_name\_label}
 
8009
 
 
8010
{\bf Overview:} 
 
8011
Set the name/label field of the given network.
 
8012
 
 
8013
 \noindent {\bf Signature:} 
 
8014
\begin{verbatim} void set_name_label (session_id s, network ref self, string value)\end{verbatim}
 
8015
 
 
8016
 
 
8017
\noindent{\bf Arguments:}
 
8018
 
 
8019
 
 
8020
\vspace{0.3cm}
 
8021
\begin{tabular}{|c|c|p{7cm}|}
 
8022
 \hline
 
8023
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8024
{\tt network ref } & self & reference to the object \\ \hline 
 
8025
 
 
8026
{\tt string } & value & New value to set \\ \hline 
 
8027
 
 
8028
\end{tabular}
 
8029
 
 
8030
\vspace{0.3cm}
 
8031
 
 
8032
 \noindent {\bf Return Type:} 
 
8033
{\tt 
 
8034
void
 
8035
}
 
8036
 
 
8037
 
 
8038
 
 
8039
\vspace{0.3cm}
 
8040
\vspace{0.3cm}
 
8041
\vspace{0.3cm}
 
8042
\subsubsection{RPC name:~get\_name\_description}
 
8043
 
 
8044
{\bf Overview:} 
 
8045
Get the name/description field of the given network.
 
8046
 
 
8047
 \noindent {\bf Signature:} 
 
8048
\begin{verbatim} string get_name_description (session_id s, network ref self)\end{verbatim}
 
8049
 
 
8050
 
 
8051
\noindent{\bf Arguments:}
 
8052
 
 
8053
 
 
8054
\vspace{0.3cm}
 
8055
\begin{tabular}{|c|c|p{7cm}|}
 
8056
 \hline
 
8057
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8058
{\tt network ref } & self & reference to the object \\ \hline 
 
8059
 
 
8060
\end{tabular}
 
8061
 
 
8062
\vspace{0.3cm}
 
8063
 
 
8064
 \noindent {\bf Return Type:} 
 
8065
{\tt 
 
8066
string
 
8067
}
 
8068
 
 
8069
 
 
8070
value of the field
 
8071
\vspace{0.3cm}
 
8072
\vspace{0.3cm}
 
8073
\vspace{0.3cm}
 
8074
\subsubsection{RPC name:~set\_name\_description}
 
8075
 
 
8076
{\bf Overview:} 
 
8077
Set the name/description field of the given network.
 
8078
 
 
8079
 \noindent {\bf Signature:} 
 
8080
\begin{verbatim} void set_name_description (session_id s, network ref self, string value)\end{verbatim}
 
8081
 
 
8082
 
 
8083
\noindent{\bf Arguments:}
 
8084
 
 
8085
 
 
8086
\vspace{0.3cm}
 
8087
\begin{tabular}{|c|c|p{7cm}|}
 
8088
 \hline
 
8089
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8090
{\tt network ref } & self & reference to the object \\ \hline 
 
8091
 
 
8092
{\tt string } & value & New value to set \\ \hline 
 
8093
 
 
8094
\end{tabular}
 
8095
 
 
8096
\vspace{0.3cm}
 
8097
 
 
8098
 \noindent {\bf Return Type:} 
 
8099
{\tt 
 
8100
void
 
8101
}
 
8102
 
 
8103
 
 
8104
 
 
8105
\vspace{0.3cm}
 
8106
\vspace{0.3cm}
 
8107
\vspace{0.3cm}
 
8108
\subsubsection{RPC name:~get\_VIFs}
 
8109
 
 
8110
{\bf Overview:} 
 
8111
Get the VIFs field of the given network.
 
8112
 
 
8113
 \noindent {\bf Signature:} 
 
8114
\begin{verbatim} ((VIF ref) Set) get_VIFs (session_id s, network ref self)\end{verbatim}
 
8115
 
 
8116
 
 
8117
\noindent{\bf Arguments:}
 
8118
 
 
8119
 
 
8120
\vspace{0.3cm}
 
8121
\begin{tabular}{|c|c|p{7cm}|}
 
8122
 \hline
 
8123
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8124
{\tt network ref } & self & reference to the object \\ \hline 
 
8125
 
 
8126
\end{tabular}
 
8127
 
 
8128
\vspace{0.3cm}
 
8129
 
 
8130
 \noindent {\bf Return Type:} 
 
8131
{\tt 
 
8132
(VIF ref) Set
 
8133
}
 
8134
 
 
8135
 
 
8136
value of the field
 
8137
\vspace{0.3cm}
 
8138
\vspace{0.3cm}
 
8139
\vspace{0.3cm}
 
8140
\subsubsection{RPC name:~get\_PIFs}
 
8141
 
 
8142
{\bf Overview:} 
 
8143
Get the PIFs field of the given network.
 
8144
 
 
8145
 \noindent {\bf Signature:} 
 
8146
\begin{verbatim} ((PIF ref) Set) get_PIFs (session_id s, network ref self)\end{verbatim}
 
8147
 
 
8148
 
 
8149
\noindent{\bf Arguments:}
 
8150
 
 
8151
 
 
8152
\vspace{0.3cm}
 
8153
\begin{tabular}{|c|c|p{7cm}|}
 
8154
 \hline
 
8155
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8156
{\tt network ref } & self & reference to the object \\ \hline 
 
8157
 
 
8158
\end{tabular}
 
8159
 
 
8160
\vspace{0.3cm}
 
8161
 
 
8162
 \noindent {\bf Return Type:} 
 
8163
{\tt 
 
8164
(PIF ref) Set
 
8165
}
 
8166
 
 
8167
 
 
8168
value of the field
 
8169
\vspace{0.3cm}
 
8170
\vspace{0.3cm}
 
8171
\vspace{0.3cm}
 
8172
\subsubsection{RPC name:~get\_default\_gateway}
 
8173
 
 
8174
{\bf Overview:} 
 
8175
Get the default\_gateway field of the given network.
 
8176
 
 
8177
 \noindent {\bf Signature:} 
 
8178
\begin{verbatim} string get_default_gateway (session_id s, network ref self)\end{verbatim}
 
8179
 
 
8180
 
 
8181
\noindent{\bf Arguments:}
 
8182
 
 
8183
 
 
8184
\vspace{0.3cm}
 
8185
\begin{tabular}{|c|c|p{7cm}|}
 
8186
 \hline
 
8187
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8188
{\tt network ref } & self & reference to the object \\ \hline 
 
8189
 
 
8190
\end{tabular}
 
8191
 
 
8192
\vspace{0.3cm}
 
8193
 
 
8194
 \noindent {\bf Return Type:} 
 
8195
{\tt 
 
8196
string
 
8197
}
 
8198
 
 
8199
 
 
8200
value of the field
 
8201
\vspace{0.3cm}
 
8202
\vspace{0.3cm}
 
8203
\vspace{0.3cm}
 
8204
\subsubsection{RPC name:~set\_default\_gateway}
 
8205
 
 
8206
{\bf Overview:} 
 
8207
Set the default\_gateway field of the given network.
 
8208
 
 
8209
 \noindent {\bf Signature:} 
 
8210
\begin{verbatim} void set_default_gateway (session_id s, network ref self, string value)\end{verbatim}
 
8211
 
 
8212
 
 
8213
\noindent{\bf Arguments:}
 
8214
 
 
8215
 
 
8216
\vspace{0.3cm}
 
8217
\begin{tabular}{|c|c|p{7cm}|}
 
8218
 \hline
 
8219
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8220
{\tt network ref } & self & reference to the object \\ \hline 
 
8221
 
 
8222
{\tt string } & value & New value to set \\ \hline 
 
8223
 
 
8224
\end{tabular}
 
8225
 
 
8226
\vspace{0.3cm}
 
8227
 
 
8228
 \noindent {\bf Return Type:} 
 
8229
{\tt 
 
8230
void
 
8231
}
 
8232
 
 
8233
 
 
8234
 
 
8235
\vspace{0.3cm}
 
8236
\vspace{0.3cm}
 
8237
\vspace{0.3cm}
 
8238
\subsubsection{RPC name:~get\_default\_netmask}
 
8239
 
 
8240
{\bf Overview:} 
 
8241
Get the default\_netmask field of the given network.
 
8242
 
 
8243
 \noindent {\bf Signature:} 
 
8244
\begin{verbatim} string get_default_netmask (session_id s, network ref self)\end{verbatim}
 
8245
 
 
8246
 
 
8247
\noindent{\bf Arguments:}
 
8248
 
 
8249
 
 
8250
\vspace{0.3cm}
 
8251
\begin{tabular}{|c|c|p{7cm}|}
 
8252
 \hline
 
8253
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8254
{\tt network ref } & self & reference to the object \\ \hline 
 
8255
 
 
8256
\end{tabular}
 
8257
 
 
8258
\vspace{0.3cm}
 
8259
 
 
8260
 \noindent {\bf Return Type:} 
 
8261
{\tt 
 
8262
string
 
8263
}
 
8264
 
 
8265
 
 
8266
value of the field
 
8267
\vspace{0.3cm}
 
8268
\vspace{0.3cm}
 
8269
\vspace{0.3cm}
 
8270
\subsubsection{RPC name:~set\_default\_netmask}
 
8271
 
 
8272
{\bf Overview:} 
 
8273
Set the default\_netmask field of the given network.
 
8274
 
 
8275
 \noindent {\bf Signature:} 
 
8276
\begin{verbatim} void set_default_netmask (session_id s, network ref self, string value)\end{verbatim}
 
8277
 
 
8278
 
 
8279
\noindent{\bf Arguments:}
 
8280
 
 
8281
 
 
8282
\vspace{0.3cm}
 
8283
\begin{tabular}{|c|c|p{7cm}|}
 
8284
 \hline
 
8285
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8286
{\tt network ref } & self & reference to the object \\ \hline 
 
8287
 
 
8288
{\tt string } & value & New value to set \\ \hline 
 
8289
 
 
8290
\end{tabular}
 
8291
 
 
8292
\vspace{0.3cm}
 
8293
 
 
8294
 \noindent {\bf Return Type:} 
 
8295
{\tt 
 
8296
void
 
8297
}
 
8298
 
 
8299
 
 
8300
 
 
8301
\vspace{0.3cm}
 
8302
\vspace{0.3cm}
 
8303
\vspace{0.3cm}
 
8304
\subsubsection{RPC name:~get\_other\_config}
 
8305
 
 
8306
{\bf Overview:} 
 
8307
Get the other\_config field of the given network.
 
8308
 
 
8309
 \noindent {\bf Signature:} 
 
8310
\begin{verbatim} ((string -> string) Map) get_other_config (session_id s, network ref self)\end{verbatim}
 
8311
 
 
8312
 
 
8313
\noindent{\bf Arguments:}
 
8314
 
 
8315
 
 
8316
\vspace{0.3cm}
 
8317
\begin{tabular}{|c|c|p{7cm}|}
 
8318
 \hline
 
8319
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8320
{\tt network ref } & self & reference to the object \\ \hline 
 
8321
 
 
8322
\end{tabular}
 
8323
 
 
8324
\vspace{0.3cm}
 
8325
 
 
8326
 \noindent {\bf Return Type:} 
 
8327
{\tt 
 
8328
(string $\rightarrow$ string) Map
 
8329
}
 
8330
 
 
8331
 
 
8332
value of the field
 
8333
\vspace{0.3cm}
 
8334
\vspace{0.3cm}
 
8335
\vspace{0.3cm}
 
8336
\subsubsection{RPC name:~set\_other\_config}
 
8337
 
 
8338
{\bf Overview:} 
 
8339
Set the other\_config field of the given network.
 
8340
 
 
8341
 \noindent {\bf Signature:} 
 
8342
\begin{verbatim} void set_other_config (session_id s, network ref self, (string -> string) Map value)\end{verbatim}
 
8343
 
 
8344
 
 
8345
\noindent{\bf Arguments:}
 
8346
 
 
8347
 
 
8348
\vspace{0.3cm}
 
8349
\begin{tabular}{|c|c|p{7cm}|}
 
8350
 \hline
 
8351
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8352
{\tt network ref } & self & reference to the object \\ \hline 
 
8353
 
 
8354
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
8355
 
 
8356
\end{tabular}
 
8357
 
 
8358
\vspace{0.3cm}
 
8359
 
 
8360
 \noindent {\bf Return Type:} 
 
8361
{\tt 
 
8362
void
 
8363
}
 
8364
 
 
8365
 
 
8366
 
 
8367
\vspace{0.3cm}
 
8368
\vspace{0.3cm}
 
8369
\vspace{0.3cm}
 
8370
\subsubsection{RPC name:~add\_to\_other\_config}
 
8371
 
 
8372
{\bf Overview:} 
 
8373
Add the given key-value pair to the other\_config field of the given
 
8374
network.
 
8375
 
 
8376
 \noindent {\bf Signature:} 
 
8377
\begin{verbatim} void add_to_other_config (session_id s, network ref self, string key, string value)\end{verbatim}
 
8378
 
 
8379
 
 
8380
\noindent{\bf Arguments:}
 
8381
 
 
8382
 
 
8383
\vspace{0.3cm}
 
8384
\begin{tabular}{|c|c|p{7cm}|}
 
8385
 \hline
 
8386
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8387
{\tt network ref } & self & reference to the object \\ \hline 
 
8388
 
 
8389
{\tt string } & key & Key to add \\ \hline 
 
8390
 
 
8391
{\tt string } & value & Value to add \\ \hline 
 
8392
 
 
8393
\end{tabular}
 
8394
 
 
8395
\vspace{0.3cm}
 
8396
 
 
8397
 \noindent {\bf Return Type:} 
 
8398
{\tt 
 
8399
void
 
8400
}
 
8401
 
 
8402
 
 
8403
 
 
8404
\vspace{0.3cm}
 
8405
\vspace{0.3cm}
 
8406
\vspace{0.3cm}
 
8407
\subsubsection{RPC name:~remove\_from\_other\_config}
 
8408
 
 
8409
{\bf Overview:} 
 
8410
Remove the given key and its corresponding value from the other\_config
 
8411
field of the given network.  If the key is not in that Map, then do
 
8412
nothing.
 
8413
 
 
8414
 \noindent {\bf Signature:} 
 
8415
\begin{verbatim} void remove_from_other_config (session_id s, network ref self, string key)\end{verbatim}
 
8416
 
 
8417
 
 
8418
\noindent{\bf Arguments:}
 
8419
 
 
8420
 
 
8421
\vspace{0.3cm}
 
8422
\begin{tabular}{|c|c|p{7cm}|}
 
8423
 \hline
 
8424
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8425
{\tt network ref } & self & reference to the object \\ \hline 
 
8426
 
 
8427
{\tt string } & key & Key to remove \\ \hline 
 
8428
 
 
8429
\end{tabular}
 
8430
 
 
8431
\vspace{0.3cm}
 
8432
 
 
8433
 \noindent {\bf Return Type:} 
 
8434
{\tt 
 
8435
void
 
8436
}
 
8437
 
 
8438
 
 
8439
 
 
8440
\vspace{0.3cm}
 
8441
\vspace{0.3cm}
 
8442
\vspace{0.3cm}
 
8443
\subsubsection{RPC name:~create}
 
8444
 
 
8445
{\bf Overview:} 
 
8446
Create a new network instance, and return its handle.
 
8447
 
 
8448
 \noindent {\bf Signature:} 
 
8449
\begin{verbatim} (network ref) create (session_id s, network record args)\end{verbatim}
 
8450
 
 
8451
 
 
8452
\noindent{\bf Arguments:}
 
8453
 
 
8454
 
 
8455
\vspace{0.3cm}
 
8456
\begin{tabular}{|c|c|p{7cm}|}
 
8457
 \hline
 
8458
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8459
{\tt network record } & args & All constructor arguments \\ \hline 
 
8460
 
 
8461
\end{tabular}
 
8462
 
 
8463
\vspace{0.3cm}
 
8464
 
 
8465
 \noindent {\bf Return Type:} 
 
8466
{\tt 
 
8467
network ref
 
8468
}
 
8469
 
 
8470
 
 
8471
reference to the newly created object
 
8472
\vspace{0.3cm}
 
8473
\vspace{0.3cm}
 
8474
\vspace{0.3cm}
 
8475
\subsubsection{RPC name:~destroy}
 
8476
 
 
8477
{\bf Overview:} 
 
8478
Destroy the specified network instance.
 
8479
 
 
8480
 \noindent {\bf Signature:} 
 
8481
\begin{verbatim} void destroy (session_id s, network ref self)\end{verbatim}
 
8482
 
 
8483
 
 
8484
\noindent{\bf Arguments:}
 
8485
 
 
8486
 
 
8487
\vspace{0.3cm}
 
8488
\begin{tabular}{|c|c|p{7cm}|}
 
8489
 \hline
 
8490
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8491
{\tt network ref } & self & reference to the object \\ \hline 
 
8492
 
 
8493
\end{tabular}
 
8494
 
 
8495
\vspace{0.3cm}
 
8496
 
 
8497
 \noindent {\bf Return Type:} 
 
8498
{\tt 
 
8499
void
 
8500
}
 
8501
 
 
8502
 
 
8503
 
 
8504
\vspace{0.3cm}
 
8505
\vspace{0.3cm}
 
8506
\vspace{0.3cm}
 
8507
\subsubsection{RPC name:~get\_by\_uuid}
 
8508
 
 
8509
{\bf Overview:} 
 
8510
Get a reference to the network instance with the specified UUID.
 
8511
 
 
8512
 \noindent {\bf Signature:} 
 
8513
\begin{verbatim} (network ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
8514
 
 
8515
 
 
8516
\noindent{\bf Arguments:}
 
8517
 
 
8518
 
 
8519
\vspace{0.3cm}
 
8520
\begin{tabular}{|c|c|p{7cm}|}
 
8521
 \hline
 
8522
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8523
{\tt string } & uuid & UUID of object to return \\ \hline 
 
8524
 
 
8525
\end{tabular}
 
8526
 
 
8527
\vspace{0.3cm}
 
8528
 
 
8529
 \noindent {\bf Return Type:} 
 
8530
{\tt 
 
8531
network ref
 
8532
}
 
8533
 
 
8534
 
 
8535
reference to the object
 
8536
\vspace{0.3cm}
 
8537
\vspace{0.3cm}
 
8538
\vspace{0.3cm}
 
8539
\subsubsection{RPC name:~get\_record}
 
8540
 
 
8541
{\bf Overview:} 
 
8542
Get a record containing the current state of the given network.
 
8543
 
 
8544
 \noindent {\bf Signature:} 
 
8545
\begin{verbatim} (network record) get_record (session_id s, network ref self)\end{verbatim}
 
8546
 
 
8547
 
 
8548
\noindent{\bf Arguments:}
 
8549
 
 
8550
 
 
8551
\vspace{0.3cm}
 
8552
\begin{tabular}{|c|c|p{7cm}|}
 
8553
 \hline
 
8554
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8555
{\tt network ref } & self & reference to the object \\ \hline 
 
8556
 
 
8557
\end{tabular}
 
8558
 
 
8559
\vspace{0.3cm}
 
8560
 
 
8561
 \noindent {\bf Return Type:} 
 
8562
{\tt 
 
8563
network record
 
8564
}
 
8565
 
 
8566
 
 
8567
all fields from the object
 
8568
\vspace{0.3cm}
 
8569
\vspace{0.3cm}
 
8570
\vspace{0.3cm}
 
8571
\subsubsection{RPC name:~get\_by\_name\_label}
 
8572
 
 
8573
{\bf Overview:} 
 
8574
Get all the network instances with the given label.
 
8575
 
 
8576
 \noindent {\bf Signature:} 
 
8577
\begin{verbatim} ((network ref) Set) get_by_name_label (session_id s, string label)\end{verbatim}
 
8578
 
 
8579
 
 
8580
\noindent{\bf Arguments:}
 
8581
 
 
8582
 
 
8583
\vspace{0.3cm}
 
8584
\begin{tabular}{|c|c|p{7cm}|}
 
8585
 \hline
 
8586
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8587
{\tt string } & label & label of object to return \\ \hline 
 
8588
 
 
8589
\end{tabular}
 
8590
 
 
8591
\vspace{0.3cm}
 
8592
 
 
8593
 \noindent {\bf Return Type:} 
 
8594
{\tt 
 
8595
(network ref) Set
 
8596
}
 
8597
 
 
8598
 
 
8599
references to objects with match names
 
8600
\vspace{0.3cm}
 
8601
\vspace{0.3cm}
 
8602
\vspace{0.3cm}
 
8603
 
 
8604
\vspace{1cm}
 
8605
\newpage
 
8606
\section{Class: VIF}
 
8607
\subsection{Fields for class: VIF}
 
8608
\begin{longtable}{|lllp{0.38\textwidth}|}
 
8609
\hline
 
8610
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VIF} \\
 
8611
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
8612
virtual network interface.}} \\
 
8613
\hline
 
8614
Quals & Field & Type & Description \\
 
8615
\hline
 
8616
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
8617
$\mathit{RW}$ &  {\tt device} & string & name of network device as exposed to guest e.g. eth0 \\
 
8618
$\mathit{RO}_\mathit{ins}$ &  {\tt network} & network ref & virtual network to which this vif is connected \\
 
8619
$\mathit{RO}_\mathit{ins}$ &  {\tt VM} & VM ref & virtual machine to which this vif is connected \\
 
8620
$\mathit{RW}$ &  {\tt MAC} & string & ethernet MAC address of virtual interface, as exposed to guest \\
 
8621
$\mathit{RW}$ &  {\tt MTU} & int & MTU in octets \\
 
8622
$\mathit{RO}_\mathit{run}$ &  {\tt currently\_attached} & bool & is the device currently attached (erased on reboot) \\
 
8623
$\mathit{RO}_\mathit{run}$ &  {\tt status\_code} & int & error/success code associated with last attach-operation (erased on reboot) \\
 
8624
$\mathit{RO}_\mathit{run}$ &  {\tt status\_detail} & string & error/success information associated with last attach-operation status (erased on reboot) \\
 
8625
$\mathit{RO}_\mathit{run}$ &  {\tt runtime\_properties} & (string $\rightarrow$ string) Map & Device runtime properties \\
 
8626
$\mathit{RW}$ &  {\tt qos/algorithm\_type} & string & QoS algorithm to use \\
 
8627
$\mathit{RW}$ &  {\tt qos/algorithm\_params} & (string $\rightarrow$ string) Map & parameters for chosen QoS algorithm \\
 
8628
$\mathit{RO}_\mathit{run}$ &  {\tt qos/supported\_algorithms} & string Set & supported QoS algorithms for this VIF \\
 
8629
$\mathit{RO}_\mathit{run}$ &  {\tt metrics} & VIF\_metrics ref & metrics associated with this VIF \\
 
8630
\hline
 
8631
\end{longtable}
 
8632
\subsection{RPCs associated with class: VIF}
 
8633
\subsubsection{RPC name:~plug}
 
8634
 
 
8635
{\bf Overview:} 
 
8636
Hotplug the specified VIF, dynamically attaching it to the running VM.
 
8637
 
 
8638
 \noindent {\bf Signature:} 
 
8639
\begin{verbatim} void plug (session_id s, VIF ref self)\end{verbatim}
 
8640
 
 
8641
 
 
8642
\noindent{\bf Arguments:}
 
8643
 
 
8644
 
 
8645
\vspace{0.3cm}
 
8646
\begin{tabular}{|c|c|p{7cm}|}
 
8647
 \hline
 
8648
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8649
{\tt VIF ref } & self & The VIF to hotplug \\ \hline 
 
8650
 
 
8651
\end{tabular}
 
8652
 
 
8653
\vspace{0.3cm}
 
8654
 
 
8655
 \noindent {\bf Return Type:} 
 
8656
{\tt 
 
8657
void
 
8658
}
 
8659
 
 
8660
 
 
8661
 
 
8662
\vspace{0.3cm}
 
8663
\vspace{0.3cm}
 
8664
\vspace{0.3cm}
 
8665
\subsubsection{RPC name:~unplug}
 
8666
 
 
8667
{\bf Overview:} 
 
8668
Hot-unplug the specified VIF, dynamically unattaching it from the running
 
8669
VM.
 
8670
 
 
8671
 \noindent {\bf Signature:} 
 
8672
\begin{verbatim} void unplug (session_id s, VIF ref self)\end{verbatim}
 
8673
 
 
8674
 
 
8675
\noindent{\bf Arguments:}
 
8676
 
 
8677
 
 
8678
\vspace{0.3cm}
 
8679
\begin{tabular}{|c|c|p{7cm}|}
 
8680
 \hline
 
8681
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8682
{\tt VIF ref } & self & The VIF to hot-unplug \\ \hline 
 
8683
 
 
8684
\end{tabular}
 
8685
 
 
8686
\vspace{0.3cm}
 
8687
 
 
8688
 \noindent {\bf Return Type:} 
 
8689
{\tt 
 
8690
void
 
8691
}
 
8692
 
 
8693
 
 
8694
 
 
8695
\vspace{0.3cm}
 
8696
\vspace{0.3cm}
 
8697
\vspace{0.3cm}
 
8698
\subsubsection{RPC name:~get\_all}
 
8699
 
 
8700
{\bf Overview:} 
 
8701
Return a list of all the VIFs known to the system.
 
8702
 
 
8703
 \noindent {\bf Signature:} 
 
8704
\begin{verbatim} ((VIF ref) Set) get_all (session_id s)\end{verbatim}
 
8705
 
 
8706
 
 
8707
\vspace{0.3cm}
 
8708
 
 
8709
 \noindent {\bf Return Type:} 
 
8710
{\tt 
 
8711
(VIF ref) Set
 
8712
}
 
8713
 
 
8714
 
 
8715
references to all objects
 
8716
\vspace{0.3cm}
 
8717
\vspace{0.3cm}
 
8718
\vspace{0.3cm}
 
8719
\subsubsection{RPC name:~get\_uuid}
 
8720
 
 
8721
{\bf Overview:} 
 
8722
Get the uuid field of the given VIF.
 
8723
 
 
8724
 \noindent {\bf Signature:} 
 
8725
\begin{verbatim} string get_uuid (session_id s, VIF ref self)\end{verbatim}
 
8726
 
 
8727
 
 
8728
\noindent{\bf Arguments:}
 
8729
 
 
8730
 
 
8731
\vspace{0.3cm}
 
8732
\begin{tabular}{|c|c|p{7cm}|}
 
8733
 \hline
 
8734
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8735
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8736
 
 
8737
\end{tabular}
 
8738
 
 
8739
\vspace{0.3cm}
 
8740
 
 
8741
 \noindent {\bf Return Type:} 
 
8742
{\tt 
 
8743
string
 
8744
}
 
8745
 
 
8746
 
 
8747
value of the field
 
8748
\vspace{0.3cm}
 
8749
\vspace{0.3cm}
 
8750
\vspace{0.3cm}
 
8751
\subsubsection{RPC name:~get\_device}
 
8752
 
 
8753
{\bf Overview:} 
 
8754
Get the device field of the given VIF.
 
8755
 
 
8756
 \noindent {\bf Signature:} 
 
8757
\begin{verbatim} string get_device (session_id s, VIF ref self)\end{verbatim}
 
8758
 
 
8759
 
 
8760
\noindent{\bf Arguments:}
 
8761
 
 
8762
 
 
8763
\vspace{0.3cm}
 
8764
\begin{tabular}{|c|c|p{7cm}|}
 
8765
 \hline
 
8766
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8767
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8768
 
 
8769
\end{tabular}
 
8770
 
 
8771
\vspace{0.3cm}
 
8772
 
 
8773
 \noindent {\bf Return Type:} 
 
8774
{\tt 
 
8775
string
 
8776
}
 
8777
 
 
8778
 
 
8779
value of the field
 
8780
\vspace{0.3cm}
 
8781
\vspace{0.3cm}
 
8782
\vspace{0.3cm}
 
8783
\subsubsection{RPC name:~set\_device}
 
8784
 
 
8785
{\bf Overview:} 
 
8786
Set the device field of the given VIF.
 
8787
 
 
8788
 \noindent {\bf Signature:} 
 
8789
\begin{verbatim} void set_device (session_id s, VIF ref self, string value)\end{verbatim}
 
8790
 
 
8791
 
 
8792
\noindent{\bf Arguments:}
 
8793
 
 
8794
 
 
8795
\vspace{0.3cm}
 
8796
\begin{tabular}{|c|c|p{7cm}|}
 
8797
 \hline
 
8798
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8799
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8800
 
 
8801
{\tt string } & value & New value to set \\ \hline 
 
8802
 
 
8803
\end{tabular}
 
8804
 
 
8805
\vspace{0.3cm}
 
8806
 
 
8807
 \noindent {\bf Return Type:} 
 
8808
{\tt 
 
8809
void
 
8810
}
 
8811
 
 
8812
 
 
8813
 
 
8814
\vspace{0.3cm}
 
8815
\vspace{0.3cm}
 
8816
\vspace{0.3cm}
 
8817
\subsubsection{RPC name:~get\_network}
 
8818
 
 
8819
{\bf Overview:} 
 
8820
Get the network field of the given VIF.
 
8821
 
 
8822
 \noindent {\bf Signature:} 
 
8823
\begin{verbatim} (network ref) get_network (session_id s, VIF ref self)\end{verbatim}
 
8824
 
 
8825
 
 
8826
\noindent{\bf Arguments:}
 
8827
 
 
8828
 
 
8829
\vspace{0.3cm}
 
8830
\begin{tabular}{|c|c|p{7cm}|}
 
8831
 \hline
 
8832
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8833
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8834
 
 
8835
\end{tabular}
 
8836
 
 
8837
\vspace{0.3cm}
 
8838
 
 
8839
 \noindent {\bf Return Type:} 
 
8840
{\tt 
 
8841
network ref
 
8842
}
 
8843
 
 
8844
 
 
8845
value of the field
 
8846
\vspace{0.3cm}
 
8847
\vspace{0.3cm}
 
8848
\vspace{0.3cm}
 
8849
\subsubsection{RPC name:~get\_VM}
 
8850
 
 
8851
{\bf Overview:} 
 
8852
Get the VM field of the given VIF.
 
8853
 
 
8854
 \noindent {\bf Signature:} 
 
8855
\begin{verbatim} (VM ref) get_VM (session_id s, VIF ref self)\end{verbatim}
 
8856
 
 
8857
 
 
8858
\noindent{\bf Arguments:}
 
8859
 
 
8860
 
 
8861
\vspace{0.3cm}
 
8862
\begin{tabular}{|c|c|p{7cm}|}
 
8863
 \hline
 
8864
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8865
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8866
 
 
8867
\end{tabular}
 
8868
 
 
8869
\vspace{0.3cm}
 
8870
 
 
8871
 \noindent {\bf Return Type:} 
 
8872
{\tt 
 
8873
VM ref
 
8874
}
 
8875
 
 
8876
 
 
8877
value of the field
 
8878
\vspace{0.3cm}
 
8879
\vspace{0.3cm}
 
8880
\vspace{0.3cm}
 
8881
\subsubsection{RPC name:~get\_MAC}
 
8882
 
 
8883
{\bf Overview:} 
 
8884
Get the MAC field of the given VIF.
 
8885
 
 
8886
 \noindent {\bf Signature:} 
 
8887
\begin{verbatim} string get_MAC (session_id s, VIF ref self)\end{verbatim}
 
8888
 
 
8889
 
 
8890
\noindent{\bf Arguments:}
 
8891
 
 
8892
 
 
8893
\vspace{0.3cm}
 
8894
\begin{tabular}{|c|c|p{7cm}|}
 
8895
 \hline
 
8896
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8897
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8898
 
 
8899
\end{tabular}
 
8900
 
 
8901
\vspace{0.3cm}
 
8902
 
 
8903
 \noindent {\bf Return Type:} 
 
8904
{\tt 
 
8905
string
 
8906
}
 
8907
 
 
8908
 
 
8909
value of the field
 
8910
\vspace{0.3cm}
 
8911
\vspace{0.3cm}
 
8912
\vspace{0.3cm}
 
8913
\subsubsection{RPC name:~set\_MAC}
 
8914
 
 
8915
{\bf Overview:} 
 
8916
Set the MAC field of the given VIF.
 
8917
 
 
8918
 \noindent {\bf Signature:} 
 
8919
\begin{verbatim} void set_MAC (session_id s, VIF ref self, string value)\end{verbatim}
 
8920
 
 
8921
 
 
8922
\noindent{\bf Arguments:}
 
8923
 
 
8924
 
 
8925
\vspace{0.3cm}
 
8926
\begin{tabular}{|c|c|p{7cm}|}
 
8927
 \hline
 
8928
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8929
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8930
 
 
8931
{\tt string } & value & New value to set \\ \hline 
 
8932
 
 
8933
\end{tabular}
 
8934
 
 
8935
\vspace{0.3cm}
 
8936
 
 
8937
 \noindent {\bf Return Type:} 
 
8938
{\tt 
 
8939
void
 
8940
}
 
8941
 
 
8942
 
 
8943
 
 
8944
\vspace{0.3cm}
 
8945
\vspace{0.3cm}
 
8946
\vspace{0.3cm}
 
8947
\subsubsection{RPC name:~get\_MTU}
 
8948
 
 
8949
{\bf Overview:} 
 
8950
Get the MTU field of the given VIF.
 
8951
 
 
8952
 \noindent {\bf Signature:} 
 
8953
\begin{verbatim} int get_MTU (session_id s, VIF ref self)\end{verbatim}
 
8954
 
 
8955
 
 
8956
\noindent{\bf Arguments:}
 
8957
 
 
8958
 
 
8959
\vspace{0.3cm}
 
8960
\begin{tabular}{|c|c|p{7cm}|}
 
8961
 \hline
 
8962
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8963
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8964
 
 
8965
\end{tabular}
 
8966
 
 
8967
\vspace{0.3cm}
 
8968
 
 
8969
 \noindent {\bf Return Type:} 
 
8970
{\tt 
 
8971
int
 
8972
}
 
8973
 
 
8974
 
 
8975
value of the field
 
8976
\vspace{0.3cm}
 
8977
\vspace{0.3cm}
 
8978
\vspace{0.3cm}
 
8979
\subsubsection{RPC name:~set\_MTU}
 
8980
 
 
8981
{\bf Overview:} 
 
8982
Set the MTU field of the given VIF.
 
8983
 
 
8984
 \noindent {\bf Signature:} 
 
8985
\begin{verbatim} void set_MTU (session_id s, VIF ref self, int value)\end{verbatim}
 
8986
 
 
8987
 
 
8988
\noindent{\bf Arguments:}
 
8989
 
 
8990
 
 
8991
\vspace{0.3cm}
 
8992
\begin{tabular}{|c|c|p{7cm}|}
 
8993
 \hline
 
8994
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
8995
{\tt VIF ref } & self & reference to the object \\ \hline 
 
8996
 
 
8997
{\tt int } & value & New value to set \\ \hline 
 
8998
 
 
8999
\end{tabular}
 
9000
 
 
9001
\vspace{0.3cm}
 
9002
 
 
9003
 \noindent {\bf Return Type:} 
 
9004
{\tt 
 
9005
void
 
9006
}
 
9007
 
 
9008
 
 
9009
 
 
9010
\vspace{0.3cm}
 
9011
\vspace{0.3cm}
 
9012
\vspace{0.3cm}
 
9013
\subsubsection{RPC name:~get\_currently\_attached}
 
9014
 
 
9015
{\bf Overview:} 
 
9016
Get the currently\_attached field of the given VIF.
 
9017
 
 
9018
 \noindent {\bf Signature:} 
 
9019
\begin{verbatim} bool get_currently_attached (session_id s, VIF ref self)\end{verbatim}
 
9020
 
 
9021
 
 
9022
\noindent{\bf Arguments:}
 
9023
 
 
9024
 
 
9025
\vspace{0.3cm}
 
9026
\begin{tabular}{|c|c|p{7cm}|}
 
9027
 \hline
 
9028
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9029
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9030
 
 
9031
\end{tabular}
 
9032
 
 
9033
\vspace{0.3cm}
 
9034
 
 
9035
 \noindent {\bf Return Type:} 
 
9036
{\tt 
 
9037
bool
 
9038
}
 
9039
 
 
9040
 
 
9041
value of the field
 
9042
\vspace{0.3cm}
 
9043
\vspace{0.3cm}
 
9044
\vspace{0.3cm}
 
9045
\subsubsection{RPC name:~get\_status\_code}
 
9046
 
 
9047
{\bf Overview:} 
 
9048
Get the status\_code field of the given VIF.
 
9049
 
 
9050
 \noindent {\bf Signature:} 
 
9051
\begin{verbatim} int get_status_code (session_id s, VIF ref self)\end{verbatim}
 
9052
 
 
9053
 
 
9054
\noindent{\bf Arguments:}
 
9055
 
 
9056
 
 
9057
\vspace{0.3cm}
 
9058
\begin{tabular}{|c|c|p{7cm}|}
 
9059
 \hline
 
9060
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9061
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9062
 
 
9063
\end{tabular}
 
9064
 
 
9065
\vspace{0.3cm}
 
9066
 
 
9067
 \noindent {\bf Return Type:} 
 
9068
{\tt 
 
9069
int
 
9070
}
 
9071
 
 
9072
 
 
9073
value of the field
 
9074
\vspace{0.3cm}
 
9075
\vspace{0.3cm}
 
9076
\vspace{0.3cm}
 
9077
\subsubsection{RPC name:~get\_status\_detail}
 
9078
 
 
9079
{\bf Overview:} 
 
9080
Get the status\_detail field of the given VIF.
 
9081
 
 
9082
 \noindent {\bf Signature:} 
 
9083
\begin{verbatim} string get_status_detail (session_id s, VIF ref self)\end{verbatim}
 
9084
 
 
9085
 
 
9086
\noindent{\bf Arguments:}
 
9087
 
 
9088
 
 
9089
\vspace{0.3cm}
 
9090
\begin{tabular}{|c|c|p{7cm}|}
 
9091
 \hline
 
9092
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9093
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9094
 
 
9095
\end{tabular}
 
9096
 
 
9097
\vspace{0.3cm}
 
9098
 
 
9099
 \noindent {\bf Return Type:} 
 
9100
{\tt 
 
9101
string
 
9102
}
 
9103
 
 
9104
 
 
9105
value of the field
 
9106
\vspace{0.3cm}
 
9107
\vspace{0.3cm}
 
9108
\vspace{0.3cm}
 
9109
\subsubsection{RPC name:~get\_runtime\_properties}
 
9110
 
 
9111
{\bf Overview:} 
 
9112
Get the runtime\_properties field of the given VIF.
 
9113
 
 
9114
 \noindent {\bf Signature:} 
 
9115
\begin{verbatim} ((string -> string) Map) get_runtime_properties (session_id s, VIF ref self)\end{verbatim}
 
9116
 
 
9117
 
 
9118
\noindent{\bf Arguments:}
 
9119
 
 
9120
 
 
9121
\vspace{0.3cm}
 
9122
\begin{tabular}{|c|c|p{7cm}|}
 
9123
 \hline
 
9124
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9125
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9126
 
 
9127
\end{tabular}
 
9128
 
 
9129
\vspace{0.3cm}
 
9130
 
 
9131
 \noindent {\bf Return Type:} 
 
9132
{\tt 
 
9133
(string $\rightarrow$ string) Map
 
9134
}
 
9135
 
 
9136
 
 
9137
value of the field
 
9138
\vspace{0.3cm}
 
9139
\vspace{0.3cm}
 
9140
\vspace{0.3cm}
 
9141
\subsubsection{RPC name:~get\_qos\_algorithm\_type}
 
9142
 
 
9143
{\bf Overview:} 
 
9144
Get the qos/algorithm\_type field of the given VIF.
 
9145
 
 
9146
 \noindent {\bf Signature:} 
 
9147
\begin{verbatim} string get_qos_algorithm_type (session_id s, VIF ref self)\end{verbatim}
 
9148
 
 
9149
 
 
9150
\noindent{\bf Arguments:}
 
9151
 
 
9152
 
 
9153
\vspace{0.3cm}
 
9154
\begin{tabular}{|c|c|p{7cm}|}
 
9155
 \hline
 
9156
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9157
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9158
 
 
9159
\end{tabular}
 
9160
 
 
9161
\vspace{0.3cm}
 
9162
 
 
9163
 \noindent {\bf Return Type:} 
 
9164
{\tt 
 
9165
string
 
9166
}
 
9167
 
 
9168
 
 
9169
value of the field
 
9170
\vspace{0.3cm}
 
9171
\vspace{0.3cm}
 
9172
\vspace{0.3cm}
 
9173
\subsubsection{RPC name:~set\_qos\_algorithm\_type}
 
9174
 
 
9175
{\bf Overview:} 
 
9176
Set the qos/algorithm\_type field of the given VIF.
 
9177
 
 
9178
 \noindent {\bf Signature:} 
 
9179
\begin{verbatim} void set_qos_algorithm_type (session_id s, VIF ref self, string value)\end{verbatim}
 
9180
 
 
9181
 
 
9182
\noindent{\bf Arguments:}
 
9183
 
 
9184
 
 
9185
\vspace{0.3cm}
 
9186
\begin{tabular}{|c|c|p{7cm}|}
 
9187
 \hline
 
9188
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9189
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9190
 
 
9191
{\tt string } & value & New value to set \\ \hline 
 
9192
 
 
9193
\end{tabular}
 
9194
 
 
9195
\vspace{0.3cm}
 
9196
 
 
9197
 \noindent {\bf Return Type:} 
 
9198
{\tt 
 
9199
void
 
9200
}
 
9201
 
 
9202
 
 
9203
 
 
9204
\vspace{0.3cm}
 
9205
\vspace{0.3cm}
 
9206
\vspace{0.3cm}
 
9207
\subsubsection{RPC name:~get\_qos\_algorithm\_params}
 
9208
 
 
9209
{\bf Overview:} 
 
9210
Get the qos/algorithm\_params field of the given VIF.
 
9211
 
 
9212
 \noindent {\bf Signature:} 
 
9213
\begin{verbatim} ((string -> string) Map) get_qos_algorithm_params (session_id s, VIF ref self)\end{verbatim}
 
9214
 
 
9215
 
 
9216
\noindent{\bf Arguments:}
 
9217
 
 
9218
 
 
9219
\vspace{0.3cm}
 
9220
\begin{tabular}{|c|c|p{7cm}|}
 
9221
 \hline
 
9222
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9223
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9224
 
 
9225
\end{tabular}
 
9226
 
 
9227
\vspace{0.3cm}
 
9228
 
 
9229
 \noindent {\bf Return Type:} 
 
9230
{\tt 
 
9231
(string $\rightarrow$ string) Map
 
9232
}
 
9233
 
 
9234
 
 
9235
value of the field
 
9236
\vspace{0.3cm}
 
9237
\vspace{0.3cm}
 
9238
\vspace{0.3cm}
 
9239
\subsubsection{RPC name:~set\_qos\_algorithm\_params}
 
9240
 
 
9241
{\bf Overview:} 
 
9242
Set the qos/algorithm\_params field of the given VIF.
 
9243
 
 
9244
 \noindent {\bf Signature:} 
 
9245
\begin{verbatim} void set_qos_algorithm_params (session_id s, VIF ref self, (string -> string) Map value)\end{verbatim}
 
9246
 
 
9247
 
 
9248
\noindent{\bf Arguments:}
 
9249
 
 
9250
 
 
9251
\vspace{0.3cm}
 
9252
\begin{tabular}{|c|c|p{7cm}|}
 
9253
 \hline
 
9254
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9255
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9256
 
 
9257
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
9258
 
 
9259
\end{tabular}
 
9260
 
 
9261
\vspace{0.3cm}
 
9262
 
 
9263
 \noindent {\bf Return Type:} 
 
9264
{\tt 
 
9265
void
 
9266
}
 
9267
 
 
9268
 
 
9269
 
 
9270
\vspace{0.3cm}
 
9271
\vspace{0.3cm}
 
9272
\vspace{0.3cm}
 
9273
\subsubsection{RPC name:~add\_to\_qos\_algorithm\_params}
 
9274
 
 
9275
{\bf Overview:} 
 
9276
Add the given key-value pair to the qos/algorithm\_params field of the
 
9277
given VIF.
 
9278
 
 
9279
 \noindent {\bf Signature:} 
 
9280
\begin{verbatim} void add_to_qos_algorithm_params (session_id s, VIF ref self, string key, string value)\end{verbatim}
 
9281
 
 
9282
 
 
9283
\noindent{\bf Arguments:}
 
9284
 
 
9285
 
 
9286
\vspace{0.3cm}
 
9287
\begin{tabular}{|c|c|p{7cm}|}
 
9288
 \hline
 
9289
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9290
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9291
 
 
9292
{\tt string } & key & Key to add \\ \hline 
 
9293
 
 
9294
{\tt string } & value & Value to add \\ \hline 
 
9295
 
 
9296
\end{tabular}
 
9297
 
 
9298
\vspace{0.3cm}
 
9299
 
 
9300
 \noindent {\bf Return Type:} 
 
9301
{\tt 
 
9302
void
 
9303
}
 
9304
 
 
9305
 
 
9306
 
 
9307
\vspace{0.3cm}
 
9308
\vspace{0.3cm}
 
9309
\vspace{0.3cm}
 
9310
\subsubsection{RPC name:~remove\_from\_qos\_algorithm\_params}
 
9311
 
 
9312
{\bf Overview:} 
 
9313
Remove the given key and its corresponding value from the
 
9314
qos/algorithm\_params field of the given VIF.  If the key is not in that
 
9315
Map, then do nothing.
 
9316
 
 
9317
 \noindent {\bf Signature:} 
 
9318
\begin{verbatim} void remove_from_qos_algorithm_params (session_id s, VIF ref self, string key)\end{verbatim}
 
9319
 
 
9320
 
 
9321
\noindent{\bf Arguments:}
 
9322
 
 
9323
 
 
9324
\vspace{0.3cm}
 
9325
\begin{tabular}{|c|c|p{7cm}|}
 
9326
 \hline
 
9327
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9328
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9329
 
 
9330
{\tt string } & key & Key to remove \\ \hline 
 
9331
 
 
9332
\end{tabular}
 
9333
 
 
9334
\vspace{0.3cm}
 
9335
 
 
9336
 \noindent {\bf Return Type:} 
 
9337
{\tt 
 
9338
void
 
9339
}
 
9340
 
 
9341
 
 
9342
 
 
9343
\vspace{0.3cm}
 
9344
\vspace{0.3cm}
 
9345
\vspace{0.3cm}
 
9346
\subsubsection{RPC name:~get\_qos\_supported\_algorithms}
 
9347
 
 
9348
{\bf Overview:} 
 
9349
Get the qos/supported\_algorithms field of the given VIF.
 
9350
 
 
9351
 \noindent {\bf Signature:} 
 
9352
\begin{verbatim} (string Set) get_qos_supported_algorithms (session_id s, VIF ref self)\end{verbatim}
 
9353
 
 
9354
 
 
9355
\noindent{\bf Arguments:}
 
9356
 
 
9357
 
 
9358
\vspace{0.3cm}
 
9359
\begin{tabular}{|c|c|p{7cm}|}
 
9360
 \hline
 
9361
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9362
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9363
 
 
9364
\end{tabular}
 
9365
 
 
9366
\vspace{0.3cm}
 
9367
 
 
9368
 \noindent {\bf Return Type:} 
 
9369
{\tt 
 
9370
string Set
 
9371
}
 
9372
 
 
9373
 
 
9374
value of the field
 
9375
\vspace{0.3cm}
 
9376
\vspace{0.3cm}
 
9377
\vspace{0.3cm}
 
9378
\subsubsection{RPC name:~get\_metrics}
 
9379
 
 
9380
{\bf Overview:} 
 
9381
Get the metrics field of the given VIF.
 
9382
 
 
9383
 \noindent {\bf Signature:} 
 
9384
\begin{verbatim} (VIF_metrics ref) get_metrics (session_id s, VIF ref self)\end{verbatim}
 
9385
 
 
9386
 
 
9387
\noindent{\bf Arguments:}
 
9388
 
 
9389
 
 
9390
\vspace{0.3cm}
 
9391
\begin{tabular}{|c|c|p{7cm}|}
 
9392
 \hline
 
9393
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9394
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9395
 
 
9396
\end{tabular}
 
9397
 
 
9398
\vspace{0.3cm}
 
9399
 
 
9400
 \noindent {\bf Return Type:} 
 
9401
{\tt 
 
9402
VIF\_metrics ref
 
9403
}
 
9404
 
 
9405
 
 
9406
value of the field
 
9407
\vspace{0.3cm}
 
9408
\vspace{0.3cm}
 
9409
\vspace{0.3cm}
 
9410
\subsubsection{RPC name:~set\_security\_label}
 
9411
 
 
9412
{\bf Overview:}
 
9413
Set the security label of the given VIF. Refer to the XSPolicy class
 
9414
for the format of the security label.
 
9415
 
 
9416
 \noindent {\bf Signature:}
 
9417
\begin{verbatim} void set_security_label (session_id s, VIF ref self, string
 
9418
security_label, string old_label)\end{verbatim}
 
9419
 
 
9420
 
 
9421
\noindent{\bf Arguments:}
 
9422
 
 
9423
 
 
9424
\vspace{0.3cm}
 
9425
\begin{tabular}{|c|c|p{7cm}|}
 
9426
 \hline
 
9427
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9428
{\tt VIF ref } & self & reference to the object \\ \hline
 
9429
 
 
9430
{\tt string } & security\_label & New value of the security label \\ \hline
 
9431
{\tt string } & old\_label & Label value that the security label \\
 
9432
& & must currently have for the change to succeed.\\ \hline
 
9433
\end{tabular}
 
9434
 
 
9435
\vspace{0.3cm}
 
9436
 
 
9437
 \noindent {\bf Return Type:}
 
9438
{\tt
 
9439
void
 
9440
}
 
9441
 
 
9442
 
 
9443
\vspace{0.3cm}
 
9444
 
 
9445
\noindent{\bf Possible Error Codes:} {\tt SECURITY\_ERROR}
 
9446
 
 
9447
\vspace{0.3cm}
 
9448
\vspace{0.3cm}
 
9449
\vspace{0.3cm}
 
9450
\subsubsection{RPC name:~get\_security\_label}
 
9451
 
 
9452
{\bf Overview:}
 
9453
Get the security label of the given VIF.
 
9454
 
 
9455
 \noindent {\bf Signature:}
 
9456
\begin{verbatim} string get_security_label (session_id s, VIF ref self)\end{verbatim}
 
9457
 
 
9458
 
 
9459
\noindent{\bf Arguments:}
 
9460
 
 
9461
 
 
9462
 
 
9463
\vspace{0.3cm}
 
9464
\begin{tabular}{|c|c|p{7cm}|}
 
9465
 \hline
 
9466
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9467
{\tt VIF ref } & self & reference to the object \\ \hline
 
9468
 
 
9469
\end{tabular}
 
9470
 
 
9471
\vspace{0.3cm}
 
9472
 
 
9473
 \noindent {\bf Return Type:}
 
9474
{\tt
 
9475
string
 
9476
}
 
9477
 
 
9478
 
 
9479
value of the given field
 
9480
\vspace{0.3cm}
 
9481
\vspace{0.3cm}
 
9482
\vspace{0.3cm}
 
9483
\subsubsection{RPC name:~create}
 
9484
 
 
9485
{\bf Overview:} 
 
9486
Create a new VIF instance, and return its handle.
 
9487
 
 
9488
 \noindent {\bf Signature:} 
 
9489
\begin{verbatim} (VIF ref) create (session_id s, VIF record args)\end{verbatim}
 
9490
 
 
9491
 
 
9492
\noindent{\bf Arguments:}
 
9493
 
 
9494
 
 
9495
\vspace{0.3cm}
 
9496
\begin{tabular}{|c|c|p{7cm}|}
 
9497
 \hline
 
9498
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9499
{\tt VIF record } & args & All constructor arguments \\ \hline 
 
9500
 
 
9501
\end{tabular}
 
9502
 
 
9503
\vspace{0.3cm}
 
9504
 
 
9505
 \noindent {\bf Return Type:} 
 
9506
{\tt 
 
9507
VIF ref
 
9508
}
 
9509
 
 
9510
 
 
9511
reference to the newly created object
 
9512
\vspace{0.3cm}
 
9513
\vspace{0.3cm}
 
9514
\vspace{0.3cm}
 
9515
\subsubsection{RPC name:~destroy}
 
9516
 
 
9517
{\bf Overview:} 
 
9518
Destroy the specified VIF instance.
 
9519
 
 
9520
 \noindent {\bf Signature:} 
 
9521
\begin{verbatim} void destroy (session_id s, VIF ref self)\end{verbatim}
 
9522
 
 
9523
 
 
9524
\noindent{\bf Arguments:}
 
9525
 
 
9526
 
 
9527
\vspace{0.3cm}
 
9528
\begin{tabular}{|c|c|p{7cm}|}
 
9529
 \hline
 
9530
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9531
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9532
 
 
9533
\end{tabular}
 
9534
 
 
9535
\vspace{0.3cm}
 
9536
 
 
9537
 \noindent {\bf Return Type:} 
 
9538
{\tt 
 
9539
void
 
9540
}
 
9541
 
 
9542
 
 
9543
 
 
9544
\vspace{0.3cm}
 
9545
\vspace{0.3cm}
 
9546
\vspace{0.3cm}
 
9547
\subsubsection{RPC name:~get\_by\_uuid}
 
9548
 
 
9549
{\bf Overview:} 
 
9550
Get a reference to the VIF instance with the specified UUID.
 
9551
 
 
9552
 \noindent {\bf Signature:} 
 
9553
\begin{verbatim} (VIF ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
9554
 
 
9555
 
 
9556
\noindent{\bf Arguments:}
 
9557
 
 
9558
 
 
9559
\vspace{0.3cm}
 
9560
\begin{tabular}{|c|c|p{7cm}|}
 
9561
 \hline
 
9562
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9563
{\tt string } & uuid & UUID of object to return \\ \hline 
 
9564
 
 
9565
\end{tabular}
 
9566
 
 
9567
\vspace{0.3cm}
 
9568
 
 
9569
 \noindent {\bf Return Type:} 
 
9570
{\tt 
 
9571
VIF ref
 
9572
}
 
9573
 
 
9574
 
 
9575
reference to the object
 
9576
\vspace{0.3cm}
 
9577
\vspace{0.3cm}
 
9578
\vspace{0.3cm}
 
9579
\subsubsection{RPC name:~get\_record}
 
9580
 
 
9581
{\bf Overview:} 
 
9582
Get a record containing the current state of the given VIF.
 
9583
 
 
9584
 \noindent {\bf Signature:} 
 
9585
\begin{verbatim} (VIF record) get_record (session_id s, VIF ref self)\end{verbatim}
 
9586
 
 
9587
 
 
9588
\noindent{\bf Arguments:}
 
9589
 
 
9590
 
 
9591
\vspace{0.3cm}
 
9592
\begin{tabular}{|c|c|p{7cm}|}
 
9593
 \hline
 
9594
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9595
{\tt VIF ref } & self & reference to the object \\ \hline 
 
9596
 
 
9597
\end{tabular}
 
9598
 
 
9599
\vspace{0.3cm}
 
9600
 
 
9601
 \noindent {\bf Return Type:} 
 
9602
{\tt 
 
9603
VIF record
 
9604
}
 
9605
 
 
9606
 
 
9607
all fields from the object
 
9608
\vspace{0.3cm}
 
9609
\vspace{0.3cm}
 
9610
\vspace{0.3cm}
 
9611
 
 
9612
\vspace{1cm}
 
9613
\newpage
 
9614
\section{Class: VIF\_metrics}
 
9615
\subsection{Fields for class: VIF\_metrics}
 
9616
\begin{longtable}{|lllp{0.38\textwidth}|}
 
9617
\hline
 
9618
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VIF\_metrics} \\
 
9619
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em
 
9620
The metrics associated with a virtual network device.}} \\
 
9621
\hline
 
9622
Quals & Field & Type & Description \\
 
9623
\hline
 
9624
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
9625
$\mathit{RO}_\mathit{run}$ &  {\tt io/read\_kbs} & float & Read bandwidth (KiB/s) \\
 
9626
$\mathit{RO}_\mathit{run}$ &  {\tt io/write\_kbs} & float & Write bandwidth (KiB/s) \\
 
9627
$\mathit{RO}_\mathit{run}$ &  {\tt last\_updated} & datetime & Time at which this information was last updated \\
 
9628
\hline
 
9629
\end{longtable}
 
9630
\subsection{RPCs associated with class: VIF\_metrics}
 
9631
\subsubsection{RPC name:~get\_all}
 
9632
 
 
9633
{\bf Overview:} 
 
9634
Return a list of all the VIF\_metrics instances known to the system.
 
9635
 
 
9636
 \noindent {\bf Signature:} 
 
9637
\begin{verbatim} ((VIF_metrics ref) Set) get_all (session_id s)\end{verbatim}
 
9638
 
 
9639
 
 
9640
\vspace{0.3cm}
 
9641
 
 
9642
 \noindent {\bf Return Type:} 
 
9643
{\tt 
 
9644
(VIF\_metrics ref) Set
 
9645
}
 
9646
 
 
9647
 
 
9648
references to all objects
 
9649
\vspace{0.3cm}
 
9650
\vspace{0.3cm}
 
9651
\vspace{0.3cm}
 
9652
\subsubsection{RPC name:~get\_uuid}
 
9653
 
 
9654
{\bf Overview:} 
 
9655
Get the uuid field of the given VIF\_metrics.
 
9656
 
 
9657
 \noindent {\bf Signature:} 
 
9658
\begin{verbatim} string get_uuid (session_id s, VIF_metrics ref self)\end{verbatim}
 
9659
 
 
9660
 
 
9661
\noindent{\bf Arguments:}
 
9662
 
 
9663
 
 
9664
\vspace{0.3cm}
 
9665
\begin{tabular}{|c|c|p{7cm}|}
 
9666
 \hline
 
9667
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9668
{\tt VIF\_metrics ref } & self & reference to the object \\ \hline 
 
9669
 
 
9670
\end{tabular}
 
9671
 
 
9672
\vspace{0.3cm}
 
9673
 
 
9674
 \noindent {\bf Return Type:} 
 
9675
{\tt 
 
9676
string
 
9677
}
 
9678
 
 
9679
 
 
9680
value of the field
 
9681
\vspace{0.3cm}
 
9682
\vspace{0.3cm}
 
9683
\vspace{0.3cm}
 
9684
\subsubsection{RPC name:~get\_io\_read\_kbs}
 
9685
 
 
9686
{\bf Overview:} 
 
9687
Get the io/read\_kbs field of the given VIF\_metrics.
 
9688
 
 
9689
 \noindent {\bf Signature:} 
 
9690
\begin{verbatim} float get_io_read_kbs (session_id s, VIF_metrics ref self)\end{verbatim}
 
9691
 
 
9692
 
 
9693
\noindent{\bf Arguments:}
 
9694
 
 
9695
 
 
9696
\vspace{0.3cm}
 
9697
\begin{tabular}{|c|c|p{7cm}|}
 
9698
 \hline
 
9699
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9700
{\tt VIF\_metrics ref } & self & reference to the object \\ \hline 
 
9701
 
 
9702
\end{tabular}
 
9703
 
 
9704
\vspace{0.3cm}
 
9705
 
 
9706
 \noindent {\bf Return Type:} 
 
9707
{\tt 
 
9708
float
 
9709
}
 
9710
 
 
9711
 
 
9712
value of the field
 
9713
\vspace{0.3cm}
 
9714
\vspace{0.3cm}
 
9715
\vspace{0.3cm}
 
9716
\subsubsection{RPC name:~get\_io\_write\_kbs}
 
9717
 
 
9718
{\bf Overview:} 
 
9719
Get the io/write\_kbs field of the given VIF\_metrics.
 
9720
 
 
9721
 \noindent {\bf Signature:} 
 
9722
\begin{verbatim} float get_io_write_kbs (session_id s, VIF_metrics ref self)\end{verbatim}
 
9723
 
 
9724
 
 
9725
\noindent{\bf Arguments:}
 
9726
 
 
9727
 
 
9728
\vspace{0.3cm}
 
9729
\begin{tabular}{|c|c|p{7cm}|}
 
9730
 \hline
 
9731
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9732
{\tt VIF\_metrics ref } & self & reference to the object \\ \hline 
 
9733
 
 
9734
\end{tabular}
 
9735
 
 
9736
\vspace{0.3cm}
 
9737
 
 
9738
 \noindent {\bf Return Type:} 
 
9739
{\tt 
 
9740
float
 
9741
}
 
9742
 
 
9743
 
 
9744
value of the field
 
9745
\vspace{0.3cm}
 
9746
\vspace{0.3cm}
 
9747
\vspace{0.3cm}
 
9748
\subsubsection{RPC name:~get\_last\_updated}
 
9749
 
 
9750
{\bf Overview:} 
 
9751
Get the last\_updated field of the given VIF\_metrics.
 
9752
 
 
9753
 \noindent {\bf Signature:} 
 
9754
\begin{verbatim} datetime get_last_updated (session_id s, VIF_metrics ref self)\end{verbatim}
 
9755
 
 
9756
 
 
9757
\noindent{\bf Arguments:}
 
9758
 
 
9759
 
 
9760
\vspace{0.3cm}
 
9761
\begin{tabular}{|c|c|p{7cm}|}
 
9762
 \hline
 
9763
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9764
{\tt VIF\_metrics ref } & self & reference to the object \\ \hline 
 
9765
 
 
9766
\end{tabular}
 
9767
 
 
9768
\vspace{0.3cm}
 
9769
 
 
9770
 \noindent {\bf Return Type:} 
 
9771
{\tt 
 
9772
datetime
 
9773
}
 
9774
 
 
9775
 
 
9776
value of the field
 
9777
\vspace{0.3cm}
 
9778
\vspace{0.3cm}
 
9779
\vspace{0.3cm}
 
9780
\subsubsection{RPC name:~get\_by\_uuid}
 
9781
 
 
9782
{\bf Overview:} 
 
9783
Get a reference to the VIF\_metrics instance with the specified UUID.
 
9784
 
 
9785
 \noindent {\bf Signature:} 
 
9786
\begin{verbatim} (VIF_metrics ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
9787
 
 
9788
 
 
9789
\noindent{\bf Arguments:}
 
9790
 
 
9791
 
 
9792
\vspace{0.3cm}
 
9793
\begin{tabular}{|c|c|p{7cm}|}
 
9794
 \hline
 
9795
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9796
{\tt string } & uuid & UUID of object to return \\ \hline 
 
9797
 
 
9798
\end{tabular}
 
9799
 
 
9800
\vspace{0.3cm}
 
9801
 
 
9802
 \noindent {\bf Return Type:} 
 
9803
{\tt 
 
9804
VIF\_metrics ref
 
9805
}
 
9806
 
 
9807
 
 
9808
reference to the object
 
9809
\vspace{0.3cm}
 
9810
\vspace{0.3cm}
 
9811
\vspace{0.3cm}
 
9812
\subsubsection{RPC name:~get\_record}
 
9813
 
 
9814
{\bf Overview:} 
 
9815
Get a record containing the current state of the given VIF\_metrics.
 
9816
 
 
9817
 \noindent {\bf Signature:} 
 
9818
\begin{verbatim} (VIF_metrics record) get_record (session_id s, VIF_metrics ref self)\end{verbatim}
 
9819
 
 
9820
 
 
9821
\noindent{\bf Arguments:}
 
9822
 
 
9823
 
 
9824
\vspace{0.3cm}
 
9825
\begin{tabular}{|c|c|p{7cm}|}
 
9826
 \hline
 
9827
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9828
{\tt VIF\_metrics ref } & self & reference to the object \\ \hline 
 
9829
 
 
9830
\end{tabular}
 
9831
 
 
9832
\vspace{0.3cm}
 
9833
 
 
9834
 \noindent {\bf Return Type:} 
 
9835
{\tt 
 
9836
VIF\_metrics record
 
9837
}
 
9838
 
 
9839
 
 
9840
all fields from the object
 
9841
\vspace{0.3cm}
 
9842
\vspace{0.3cm}
 
9843
\vspace{0.3cm}
 
9844
 
 
9845
\vspace{1cm}
 
9846
\newpage
 
9847
\section{Class: PIF}
 
9848
\subsection{Fields for class: PIF}
 
9849
\begin{longtable}{|lllp{0.38\textwidth}|}
 
9850
\hline
 
9851
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf PIF} \\
 
9852
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
9853
physical network interface (note separate VLANs are represented as several
 
9854
PIFs).}} \\
 
9855
\hline
 
9856
Quals & Field & Type & Description \\
 
9857
\hline
 
9858
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
9859
$\mathit{RW}$ &  {\tt device} & string & machine-readable name of the interface (e.g. eth0) \\
 
9860
$\mathit{RO}_\mathit{ins}$ &  {\tt network} & network ref & virtual network to which this pif is connected \\
 
9861
$\mathit{RO}_\mathit{ins}$ &  {\tt host} & host ref & physical machine to which this pif is connected \\
 
9862
$\mathit{RW}$ &  {\tt MAC} & string & ethernet MAC address of physical interface \\
 
9863
$\mathit{RW}$ &  {\tt MTU} & int & MTU in octets \\
 
9864
$\mathit{RW}$ &  {\tt VLAN} & int & VLAN tag for all traffic passing through this interface \\
 
9865
$\mathit{RO}_\mathit{run}$ &  {\tt metrics} & PIF\_metrics ref & metrics associated with this PIF \\
 
9866
\hline
 
9867
\end{longtable}
 
9868
\subsection{RPCs associated with class: PIF}
 
9869
\subsubsection{RPC name:~create\_VLAN}
 
9870
 
 
9871
{\bf Overview:} 
 
9872
Create a VLAN interface from an existing physical interface.
 
9873
 
 
9874
 \noindent {\bf Signature:} 
 
9875
\begin{verbatim} (PIF ref) create_VLAN (session_id s, string device, network ref network, host ref host, int VLAN)\end{verbatim}
 
9876
 
 
9877
 
 
9878
\noindent{\bf Arguments:}
 
9879
 
 
9880
 
 
9881
\vspace{0.3cm}
 
9882
\begin{tabular}{|c|c|p{7cm}|}
 
9883
 \hline
 
9884
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9885
{\tt string } & device & physical interface on which to crate the VLAN interface \\ \hline 
 
9886
 
 
9887
{\tt network ref } & network & network to which this interface should be connected \\ \hline 
 
9888
 
 
9889
{\tt host ref } & host & physical machine to which this PIF is connected \\ \hline 
 
9890
 
 
9891
{\tt int } & VLAN & VLAN tag for the new interface \\ \hline 
 
9892
 
 
9893
\end{tabular}
 
9894
 
 
9895
\vspace{0.3cm}
 
9896
 
 
9897
 \noindent {\bf Return Type:} 
 
9898
{\tt 
 
9899
PIF ref
 
9900
}
 
9901
 
 
9902
 
 
9903
The reference of the created PIF object
 
9904
\vspace{0.3cm}
 
9905
 
 
9906
\noindent{\bf Possible Error Codes:} {\tt VLAN\_TAG\_INVALID}
 
9907
 
 
9908
\vspace{0.6cm}
 
9909
\subsubsection{RPC name:~destroy}
 
9910
 
 
9911
{\bf Overview:} 
 
9912
Destroy the interface (provided it is a synthetic interface like a VLAN;
 
9913
fail if it is a physical interface).
 
9914
 
 
9915
 \noindent {\bf Signature:} 
 
9916
\begin{verbatim} void destroy (session_id s, PIF ref self)\end{verbatim}
 
9917
 
 
9918
 
 
9919
\noindent{\bf Arguments:}
 
9920
 
 
9921
 
 
9922
\vspace{0.3cm}
 
9923
\begin{tabular}{|c|c|p{7cm}|}
 
9924
 \hline
 
9925
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9926
{\tt PIF ref } & self & the PIF object to destroy \\ \hline 
 
9927
 
 
9928
\end{tabular}
 
9929
 
 
9930
\vspace{0.3cm}
 
9931
 
 
9932
 \noindent {\bf Return Type:} 
 
9933
{\tt 
 
9934
void
 
9935
}
 
9936
 
 
9937
 
 
9938
 
 
9939
\vspace{0.3cm}
 
9940
 
 
9941
\noindent{\bf Possible Error Codes:} {\tt PIF\_IS\_PHYSICAL}
 
9942
 
 
9943
\vspace{0.6cm}
 
9944
\subsubsection{RPC name:~get\_all}
 
9945
 
 
9946
{\bf Overview:} 
 
9947
Return a list of all the PIFs known to the system.
 
9948
 
 
9949
 \noindent {\bf Signature:} 
 
9950
\begin{verbatim} ((PIF ref) Set) get_all (session_id s)\end{verbatim}
 
9951
 
 
9952
 
 
9953
\vspace{0.3cm}
 
9954
 
 
9955
 \noindent {\bf Return Type:} 
 
9956
{\tt 
 
9957
(PIF ref) Set
 
9958
}
 
9959
 
 
9960
 
 
9961
references to all objects
 
9962
\vspace{0.3cm}
 
9963
\vspace{0.3cm}
 
9964
\vspace{0.3cm}
 
9965
\subsubsection{RPC name:~get\_uuid}
 
9966
 
 
9967
{\bf Overview:} 
 
9968
Get the uuid field of the given PIF.
 
9969
 
 
9970
 \noindent {\bf Signature:} 
 
9971
\begin{verbatim} string get_uuid (session_id s, PIF ref self)\end{verbatim}
 
9972
 
 
9973
 
 
9974
\noindent{\bf Arguments:}
 
9975
 
 
9976
 
 
9977
\vspace{0.3cm}
 
9978
\begin{tabular}{|c|c|p{7cm}|}
 
9979
 \hline
 
9980
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
9981
{\tt PIF ref } & self & reference to the object \\ \hline 
 
9982
 
 
9983
\end{tabular}
 
9984
 
 
9985
\vspace{0.3cm}
 
9986
 
 
9987
 \noindent {\bf Return Type:} 
 
9988
{\tt 
 
9989
string
 
9990
}
 
9991
 
 
9992
 
 
9993
value of the field
 
9994
\vspace{0.3cm}
 
9995
\vspace{0.3cm}
 
9996
\vspace{0.3cm}
 
9997
\subsubsection{RPC name:~get\_device}
 
9998
 
 
9999
{\bf Overview:} 
 
10000
Get the device field of the given PIF.
 
10001
 
 
10002
 \noindent {\bf Signature:} 
 
10003
\begin{verbatim} string get_device (session_id s, PIF ref self)\end{verbatim}
 
10004
 
 
10005
 
 
10006
\noindent{\bf Arguments:}
 
10007
 
 
10008
 
 
10009
\vspace{0.3cm}
 
10010
\begin{tabular}{|c|c|p{7cm}|}
 
10011
 \hline
 
10012
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10013
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10014
 
 
10015
\end{tabular}
 
10016
 
 
10017
\vspace{0.3cm}
 
10018
 
 
10019
 \noindent {\bf Return Type:} 
 
10020
{\tt 
 
10021
string
 
10022
}
 
10023
 
 
10024
 
 
10025
value of the field
 
10026
\vspace{0.3cm}
 
10027
\vspace{0.3cm}
 
10028
\vspace{0.3cm}
 
10029
\subsubsection{RPC name:~set\_device}
 
10030
 
 
10031
{\bf Overview:} 
 
10032
Set the device field of the given PIF.
 
10033
 
 
10034
 \noindent {\bf Signature:} 
 
10035
\begin{verbatim} void set_device (session_id s, PIF ref self, string value)\end{verbatim}
 
10036
 
 
10037
 
 
10038
\noindent{\bf Arguments:}
 
10039
 
 
10040
 
 
10041
\vspace{0.3cm}
 
10042
\begin{tabular}{|c|c|p{7cm}|}
 
10043
 \hline
 
10044
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10045
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10046
 
 
10047
{\tt string } & value & New value to set \\ \hline 
 
10048
 
 
10049
\end{tabular}
 
10050
 
 
10051
\vspace{0.3cm}
 
10052
 
 
10053
 \noindent {\bf Return Type:} 
 
10054
{\tt 
 
10055
void
 
10056
}
 
10057
 
 
10058
 
 
10059
 
 
10060
\vspace{0.3cm}
 
10061
\vspace{0.3cm}
 
10062
\vspace{0.3cm}
 
10063
\subsubsection{RPC name:~get\_network}
 
10064
 
 
10065
{\bf Overview:} 
 
10066
Get the network field of the given PIF.
 
10067
 
 
10068
 \noindent {\bf Signature:} 
 
10069
\begin{verbatim} (network ref) get_network (session_id s, PIF ref self)\end{verbatim}
 
10070
 
 
10071
 
 
10072
\noindent{\bf Arguments:}
 
10073
 
 
10074
 
 
10075
\vspace{0.3cm}
 
10076
\begin{tabular}{|c|c|p{7cm}|}
 
10077
 \hline
 
10078
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10079
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10080
 
 
10081
\end{tabular}
 
10082
 
 
10083
\vspace{0.3cm}
 
10084
 
 
10085
 \noindent {\bf Return Type:} 
 
10086
{\tt 
 
10087
network ref
 
10088
}
 
10089
 
 
10090
 
 
10091
value of the field
 
10092
\vspace{0.3cm}
 
10093
\vspace{0.3cm}
 
10094
\vspace{0.3cm}
 
10095
\subsubsection{RPC name:~get\_host}
 
10096
 
 
10097
{\bf Overview:} 
 
10098
Get the host field of the given PIF.
 
10099
 
 
10100
 \noindent {\bf Signature:} 
 
10101
\begin{verbatim} (host ref) get_host (session_id s, PIF ref self)\end{verbatim}
 
10102
 
 
10103
 
 
10104
\noindent{\bf Arguments:}
 
10105
 
 
10106
 
 
10107
\vspace{0.3cm}
 
10108
\begin{tabular}{|c|c|p{7cm}|}
 
10109
 \hline
 
10110
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10111
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10112
 
 
10113
\end{tabular}
 
10114
 
 
10115
\vspace{0.3cm}
 
10116
 
 
10117
 \noindent {\bf Return Type:} 
 
10118
{\tt 
 
10119
host ref
 
10120
}
 
10121
 
 
10122
 
 
10123
value of the field
 
10124
\vspace{0.3cm}
 
10125
\vspace{0.3cm}
 
10126
\vspace{0.3cm}
 
10127
\subsubsection{RPC name:~get\_MAC}
 
10128
 
 
10129
{\bf Overview:} 
 
10130
Get the MAC field of the given PIF.
 
10131
 
 
10132
 \noindent {\bf Signature:} 
 
10133
\begin{verbatim} string get_MAC (session_id s, PIF ref self)\end{verbatim}
 
10134
 
 
10135
 
 
10136
\noindent{\bf Arguments:}
 
10137
 
 
10138
 
 
10139
\vspace{0.3cm}
 
10140
\begin{tabular}{|c|c|p{7cm}|}
 
10141
 \hline
 
10142
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10143
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10144
 
 
10145
\end{tabular}
 
10146
 
 
10147
\vspace{0.3cm}
 
10148
 
 
10149
 \noindent {\bf Return Type:} 
 
10150
{\tt 
 
10151
string
 
10152
}
 
10153
 
 
10154
 
 
10155
value of the field
 
10156
\vspace{0.3cm}
 
10157
\vspace{0.3cm}
 
10158
\vspace{0.3cm}
 
10159
\subsubsection{RPC name:~set\_MAC}
 
10160
 
 
10161
{\bf Overview:} 
 
10162
Set the MAC field of the given PIF.
 
10163
 
 
10164
 \noindent {\bf Signature:} 
 
10165
\begin{verbatim} void set_MAC (session_id s, PIF ref self, string value)\end{verbatim}
 
10166
 
 
10167
 
 
10168
\noindent{\bf Arguments:}
 
10169
 
 
10170
 
 
10171
\vspace{0.3cm}
 
10172
\begin{tabular}{|c|c|p{7cm}|}
 
10173
 \hline
 
10174
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10175
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10176
 
 
10177
{\tt string } & value & New value to set \\ \hline 
 
10178
 
 
10179
\end{tabular}
 
10180
 
 
10181
\vspace{0.3cm}
 
10182
 
 
10183
 \noindent {\bf Return Type:} 
 
10184
{\tt 
 
10185
void
 
10186
}
 
10187
 
 
10188
 
 
10189
 
 
10190
\vspace{0.3cm}
 
10191
\vspace{0.3cm}
 
10192
\vspace{0.3cm}
 
10193
\subsubsection{RPC name:~get\_MTU}
 
10194
 
 
10195
{\bf Overview:} 
 
10196
Get the MTU field of the given PIF.
 
10197
 
 
10198
 \noindent {\bf Signature:} 
 
10199
\begin{verbatim} int get_MTU (session_id s, PIF ref self)\end{verbatim}
 
10200
 
 
10201
 
 
10202
\noindent{\bf Arguments:}
 
10203
 
 
10204
 
 
10205
\vspace{0.3cm}
 
10206
\begin{tabular}{|c|c|p{7cm}|}
 
10207
 \hline
 
10208
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10209
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10210
 
 
10211
\end{tabular}
 
10212
 
 
10213
\vspace{0.3cm}
 
10214
 
 
10215
 \noindent {\bf Return Type:} 
 
10216
{\tt 
 
10217
int
 
10218
}
 
10219
 
 
10220
 
 
10221
value of the field
 
10222
\vspace{0.3cm}
 
10223
\vspace{0.3cm}
 
10224
\vspace{0.3cm}
 
10225
\subsubsection{RPC name:~set\_MTU}
 
10226
 
 
10227
{\bf Overview:} 
 
10228
Set the MTU field of the given PIF.
 
10229
 
 
10230
 \noindent {\bf Signature:} 
 
10231
\begin{verbatim} void set_MTU (session_id s, PIF ref self, int value)\end{verbatim}
 
10232
 
 
10233
 
 
10234
\noindent{\bf Arguments:}
 
10235
 
 
10236
 
 
10237
\vspace{0.3cm}
 
10238
\begin{tabular}{|c|c|p{7cm}|}
 
10239
 \hline
 
10240
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10241
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10242
 
 
10243
{\tt int } & value & New value to set \\ \hline 
 
10244
 
 
10245
\end{tabular}
 
10246
 
 
10247
\vspace{0.3cm}
 
10248
 
 
10249
 \noindent {\bf Return Type:} 
 
10250
{\tt 
 
10251
void
 
10252
}
 
10253
 
 
10254
 
 
10255
 
 
10256
\vspace{0.3cm}
 
10257
\vspace{0.3cm}
 
10258
\vspace{0.3cm}
 
10259
\subsubsection{RPC name:~get\_VLAN}
 
10260
 
 
10261
{\bf Overview:} 
 
10262
Get the VLAN field of the given PIF.
 
10263
 
 
10264
 \noindent {\bf Signature:} 
 
10265
\begin{verbatim} int get_VLAN (session_id s, PIF ref self)\end{verbatim}
 
10266
 
 
10267
 
 
10268
\noindent{\bf Arguments:}
 
10269
 
 
10270
 
 
10271
\vspace{0.3cm}
 
10272
\begin{tabular}{|c|c|p{7cm}|}
 
10273
 \hline
 
10274
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10275
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10276
 
 
10277
\end{tabular}
 
10278
 
 
10279
\vspace{0.3cm}
 
10280
 
 
10281
 \noindent {\bf Return Type:} 
 
10282
{\tt 
 
10283
int
 
10284
}
 
10285
 
 
10286
 
 
10287
value of the field
 
10288
\vspace{0.3cm}
 
10289
\vspace{0.3cm}
 
10290
\vspace{0.3cm}
 
10291
\subsubsection{RPC name:~set\_VLAN}
 
10292
 
 
10293
{\bf Overview:} 
 
10294
Set the VLAN field of the given PIF.
 
10295
 
 
10296
 \noindent {\bf Signature:} 
 
10297
\begin{verbatim} void set_VLAN (session_id s, PIF ref self, int value)\end{verbatim}
 
10298
 
 
10299
 
 
10300
\noindent{\bf Arguments:}
 
10301
 
 
10302
 
 
10303
\vspace{0.3cm}
 
10304
\begin{tabular}{|c|c|p{7cm}|}
 
10305
 \hline
 
10306
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10307
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10308
 
 
10309
{\tt int } & value & New value to set \\ \hline 
 
10310
 
 
10311
\end{tabular}
 
10312
 
 
10313
\vspace{0.3cm}
 
10314
 
 
10315
 \noindent {\bf Return Type:} 
 
10316
{\tt 
 
10317
void
 
10318
}
 
10319
 
 
10320
 
 
10321
 
 
10322
\vspace{0.3cm}
 
10323
\vspace{0.3cm}
 
10324
\vspace{0.3cm}
 
10325
\subsubsection{RPC name:~get\_metrics}
 
10326
 
 
10327
{\bf Overview:} 
 
10328
Get the metrics field of the given PIF.
 
10329
 
 
10330
 \noindent {\bf Signature:} 
 
10331
\begin{verbatim} (PIF_metrics ref) get_metrics (session_id s, PIF ref self)\end{verbatim}
 
10332
 
 
10333
 
 
10334
\noindent{\bf Arguments:}
 
10335
 
 
10336
 
 
10337
\vspace{0.3cm}
 
10338
\begin{tabular}{|c|c|p{7cm}|}
 
10339
 \hline
 
10340
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10341
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10342
 
 
10343
\end{tabular}
 
10344
 
 
10345
\vspace{0.3cm}
 
10346
 
 
10347
 \noindent {\bf Return Type:} 
 
10348
{\tt 
 
10349
PIF\_metrics ref
 
10350
}
 
10351
 
 
10352
 
 
10353
value of the field
 
10354
\vspace{0.3cm}
 
10355
\vspace{0.3cm}
 
10356
\vspace{0.3cm}
 
10357
\subsubsection{RPC name:~get\_by\_uuid}
 
10358
 
 
10359
{\bf Overview:} 
 
10360
Get a reference to the PIF instance with the specified UUID.
 
10361
 
 
10362
 \noindent {\bf Signature:} 
 
10363
\begin{verbatim} (PIF ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
10364
 
 
10365
 
 
10366
\noindent{\bf Arguments:}
 
10367
 
 
10368
 
 
10369
\vspace{0.3cm}
 
10370
\begin{tabular}{|c|c|p{7cm}|}
 
10371
 \hline
 
10372
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10373
{\tt string } & uuid & UUID of object to return \\ \hline 
 
10374
 
 
10375
\end{tabular}
 
10376
 
 
10377
\vspace{0.3cm}
 
10378
 
 
10379
 \noindent {\bf Return Type:} 
 
10380
{\tt 
 
10381
PIF ref
 
10382
}
 
10383
 
 
10384
 
 
10385
reference to the object
 
10386
\vspace{0.3cm}
 
10387
\vspace{0.3cm}
 
10388
\vspace{0.3cm}
 
10389
\subsubsection{RPC name:~get\_record}
 
10390
 
 
10391
{\bf Overview:} 
 
10392
Get a record containing the current state of the given PIF.
 
10393
 
 
10394
 \noindent {\bf Signature:} 
 
10395
\begin{verbatim} (PIF record) get_record (session_id s, PIF ref self)\end{verbatim}
 
10396
 
 
10397
 
 
10398
\noindent{\bf Arguments:}
 
10399
 
 
10400
 
 
10401
\vspace{0.3cm}
 
10402
\begin{tabular}{|c|c|p{7cm}|}
 
10403
 \hline
 
10404
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10405
{\tt PIF ref } & self & reference to the object \\ \hline 
 
10406
 
 
10407
\end{tabular}
 
10408
 
 
10409
\vspace{0.3cm}
 
10410
 
 
10411
 \noindent {\bf Return Type:} 
 
10412
{\tt 
 
10413
PIF record
 
10414
}
 
10415
 
 
10416
 
 
10417
all fields from the object
 
10418
\vspace{0.3cm}
 
10419
\vspace{0.3cm}
 
10420
\vspace{0.3cm}
 
10421
 
 
10422
\vspace{1cm}
 
10423
\newpage
 
10424
\section{Class: PIF\_metrics}
 
10425
\subsection{Fields for class: PIF\_metrics}
 
10426
\begin{longtable}{|lllp{0.38\textwidth}|}
 
10427
\hline
 
10428
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf PIF\_metrics} \\
 
10429
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em
 
10430
The metrics associated with a physical network interface.}} \\
 
10431
\hline
 
10432
Quals & Field & Type & Description \\
 
10433
\hline
 
10434
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
10435
$\mathit{RO}_\mathit{run}$ &  {\tt io/read\_kbs} & float & Read bandwidth (KiB/s) \\
 
10436
$\mathit{RO}_\mathit{run}$ &  {\tt io/write\_kbs} & float & Write bandwidth (KiB/s) \\
 
10437
$\mathit{RO}_\mathit{run}$ &  {\tt last\_updated} & datetime & Time at which this information was last updated \\
 
10438
\hline
 
10439
\end{longtable}
 
10440
\subsection{RPCs associated with class: PIF\_metrics}
 
10441
\subsubsection{RPC name:~get\_all}
 
10442
 
 
10443
{\bf Overview:} 
 
10444
Return a list of all the PIF\_metrics instances known to the system.
 
10445
 
 
10446
 \noindent {\bf Signature:} 
 
10447
\begin{verbatim} ((PIF_metrics ref) Set) get_all (session_id s)\end{verbatim}
 
10448
 
 
10449
 
 
10450
\vspace{0.3cm}
 
10451
 
 
10452
 \noindent {\bf Return Type:} 
 
10453
{\tt 
 
10454
(PIF\_metrics ref) Set
 
10455
}
 
10456
 
 
10457
 
 
10458
references to all objects
 
10459
\vspace{0.3cm}
 
10460
\vspace{0.3cm}
 
10461
\vspace{0.3cm}
 
10462
\subsubsection{RPC name:~get\_uuid}
 
10463
 
 
10464
{\bf Overview:} 
 
10465
Get the uuid field of the given PIF\_metrics.
 
10466
 
 
10467
 \noindent {\bf Signature:} 
 
10468
\begin{verbatim} string get_uuid (session_id s, PIF_metrics ref self)\end{verbatim}
 
10469
 
 
10470
 
 
10471
\noindent{\bf Arguments:}
 
10472
 
 
10473
 
 
10474
\vspace{0.3cm}
 
10475
\begin{tabular}{|c|c|p{7cm}|}
 
10476
 \hline
 
10477
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10478
{\tt PIF\_metrics ref } & self & reference to the object \\ \hline 
 
10479
 
 
10480
\end{tabular}
 
10481
 
 
10482
\vspace{0.3cm}
 
10483
 
 
10484
 \noindent {\bf Return Type:} 
 
10485
{\tt 
 
10486
string
 
10487
}
 
10488
 
 
10489
 
 
10490
value of the field
 
10491
\vspace{0.3cm}
 
10492
\vspace{0.3cm}
 
10493
\vspace{0.3cm}
 
10494
\subsubsection{RPC name:~get\_io\_read\_kbs}
 
10495
 
 
10496
{\bf Overview:} 
 
10497
Get the io/read\_kbs field of the given PIF\_metrics.
 
10498
 
 
10499
 \noindent {\bf Signature:} 
 
10500
\begin{verbatim} float get_io_read_kbs (session_id s, PIF_metrics ref self)\end{verbatim}
 
10501
 
 
10502
 
 
10503
\noindent{\bf Arguments:}
 
10504
 
 
10505
 
 
10506
\vspace{0.3cm}
 
10507
\begin{tabular}{|c|c|p{7cm}|}
 
10508
 \hline
 
10509
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10510
{\tt PIF\_metrics ref } & self & reference to the object \\ \hline 
 
10511
 
 
10512
\end{tabular}
 
10513
 
 
10514
\vspace{0.3cm}
 
10515
 
 
10516
 \noindent {\bf Return Type:} 
 
10517
{\tt 
 
10518
float
 
10519
}
 
10520
 
 
10521
 
 
10522
value of the field
 
10523
\vspace{0.3cm}
 
10524
\vspace{0.3cm}
 
10525
\vspace{0.3cm}
 
10526
\subsubsection{RPC name:~get\_io\_write\_kbs}
 
10527
 
 
10528
{\bf Overview:} 
 
10529
Get the io/write\_kbs field of the given PIF\_metrics.
 
10530
 
 
10531
 \noindent {\bf Signature:} 
 
10532
\begin{verbatim} float get_io_write_kbs (session_id s, PIF_metrics ref self)\end{verbatim}
 
10533
 
 
10534
 
 
10535
\noindent{\bf Arguments:}
 
10536
 
 
10537
 
 
10538
\vspace{0.3cm}
 
10539
\begin{tabular}{|c|c|p{7cm}|}
 
10540
 \hline
 
10541
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10542
{\tt PIF\_metrics ref } & self & reference to the object \\ \hline 
 
10543
 
 
10544
\end{tabular}
 
10545
 
 
10546
\vspace{0.3cm}
 
10547
 
 
10548
 \noindent {\bf Return Type:} 
 
10549
{\tt 
 
10550
float
 
10551
}
 
10552
 
 
10553
 
 
10554
value of the field
 
10555
\vspace{0.3cm}
 
10556
\vspace{0.3cm}
 
10557
\vspace{0.3cm}
 
10558
\subsubsection{RPC name:~get\_last\_updated}
 
10559
 
 
10560
{\bf Overview:} 
 
10561
Get the last\_updated field of the given PIF\_metrics.
 
10562
 
 
10563
 \noindent {\bf Signature:} 
 
10564
\begin{verbatim} datetime get_last_updated (session_id s, PIF_metrics ref self)\end{verbatim}
 
10565
 
 
10566
 
 
10567
\noindent{\bf Arguments:}
 
10568
 
 
10569
 
 
10570
\vspace{0.3cm}
 
10571
\begin{tabular}{|c|c|p{7cm}|}
 
10572
 \hline
 
10573
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10574
{\tt PIF\_metrics ref } & self & reference to the object \\ \hline 
 
10575
 
 
10576
\end{tabular}
 
10577
 
 
10578
\vspace{0.3cm}
 
10579
 
 
10580
 \noindent {\bf Return Type:} 
 
10581
{\tt 
 
10582
datetime
 
10583
}
 
10584
 
 
10585
 
 
10586
value of the field
 
10587
\vspace{0.3cm}
 
10588
\vspace{0.3cm}
 
10589
\vspace{0.3cm}
 
10590
\subsubsection{RPC name:~get\_by\_uuid}
 
10591
 
 
10592
{\bf Overview:} 
 
10593
Get a reference to the PIF\_metrics instance with the specified UUID.
 
10594
 
 
10595
 \noindent {\bf Signature:} 
 
10596
\begin{verbatim} (PIF_metrics ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
10597
 
 
10598
 
 
10599
\noindent{\bf Arguments:}
 
10600
 
 
10601
 
 
10602
\vspace{0.3cm}
 
10603
\begin{tabular}{|c|c|p{7cm}|}
 
10604
 \hline
 
10605
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10606
{\tt string } & uuid & UUID of object to return \\ \hline 
 
10607
 
 
10608
\end{tabular}
 
10609
 
 
10610
\vspace{0.3cm}
 
10611
 
 
10612
 \noindent {\bf Return Type:} 
 
10613
{\tt 
 
10614
PIF\_metrics ref
 
10615
}
 
10616
 
 
10617
 
 
10618
reference to the object
 
10619
\vspace{0.3cm}
 
10620
\vspace{0.3cm}
 
10621
\vspace{0.3cm}
 
10622
\subsubsection{RPC name:~get\_record}
 
10623
 
 
10624
{\bf Overview:} 
 
10625
Get a record containing the current state of the given PIF\_metrics.
 
10626
 
 
10627
 \noindent {\bf Signature:} 
 
10628
\begin{verbatim} (PIF_metrics record) get_record (session_id s, PIF_metrics ref self)\end{verbatim}
 
10629
 
 
10630
 
 
10631
\noindent{\bf Arguments:}
 
10632
 
 
10633
 
 
10634
\vspace{0.3cm}
 
10635
\begin{tabular}{|c|c|p{7cm}|}
 
10636
 \hline
 
10637
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10638
{\tt PIF\_metrics ref } & self & reference to the object \\ \hline 
 
10639
 
 
10640
\end{tabular}
 
10641
 
 
10642
\vspace{0.3cm}
 
10643
 
 
10644
 \noindent {\bf Return Type:} 
 
10645
{\tt 
 
10646
PIF\_metrics record
 
10647
}
 
10648
 
 
10649
 
 
10650
all fields from the object
 
10651
\vspace{0.3cm}
 
10652
\vspace{0.3cm}
 
10653
\vspace{0.3cm}
 
10654
 
 
10655
\vspace{1cm}
 
10656
\newpage
 
10657
\section{Class: SR}
 
10658
\subsection{Fields for class: SR}
 
10659
\begin{longtable}{|lllp{0.38\textwidth}|}
 
10660
\hline
 
10661
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf SR} \\
 
10662
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
10663
storage repository.}} \\
 
10664
\hline
 
10665
Quals & Field & Type & Description \\
 
10666
\hline
 
10667
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
10668
$\mathit{RW}$ &  {\tt name/label} & string & a human-readable name \\
 
10669
$\mathit{RW}$ &  {\tt name/description} & string & a notes field containg human-readable description \\
 
10670
$\mathit{RO}_\mathit{run}$ &  {\tt VDIs} & (VDI ref) Set & managed virtual disks \\
 
10671
$\mathit{RO}_\mathit{run}$ &  {\tt PBDs} & (PBD ref) Set & physical blockdevices \\
 
10672
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_allocation} & int & sum of virtual\_sizes of all VDIs in this storage repository (in bytes) \\
 
10673
$\mathit{RO}_\mathit{run}$ &  {\tt physical\_utilisation} & int & physical space currently utilised on this storage repository (in bytes). Note that for sparse disk formats, physical\_utilisation may be less than virtual\_allocation \\
 
10674
$\mathit{RO}_\mathit{ins}$ &  {\tt physical\_size} & int & total physical size of the repository (in bytes) \\
 
10675
$\mathit{RO}_\mathit{ins}$ &  {\tt type} & string & type of the storage repository \\
 
10676
$\mathit{RO}_\mathit{ins}$ &  {\tt content\_type} & string & the type of the SR's content, if required (e.g. ISOs) \\
 
10677
\hline
 
10678
\end{longtable}
 
10679
\subsection{RPCs associated with class: SR}
 
10680
\subsubsection{RPC name:~get\_supported\_types}
 
10681
 
 
10682
{\bf Overview:} 
 
10683
Return a set of all the SR types supported by the system.
 
10684
 
 
10685
 \noindent {\bf Signature:} 
 
10686
\begin{verbatim} (string Set) get_supported_types (session_id s)\end{verbatim}
 
10687
 
 
10688
 
 
10689
\vspace{0.3cm}
 
10690
 
 
10691
 \noindent {\bf Return Type:} 
 
10692
{\tt 
 
10693
string Set
 
10694
}
 
10695
 
 
10696
 
 
10697
the supported SR types
 
10698
\vspace{0.3cm}
 
10699
\vspace{0.3cm}
 
10700
\vspace{0.3cm}
 
10701
\subsubsection{RPC name:~get\_all}
 
10702
 
 
10703
{\bf Overview:} 
 
10704
Return a list of all the SRs known to the system.
 
10705
 
 
10706
 \noindent {\bf Signature:} 
 
10707
\begin{verbatim} ((SR ref) Set) get_all (session_id s)\end{verbatim}
 
10708
 
 
10709
 
 
10710
\vspace{0.3cm}
 
10711
 
 
10712
 \noindent {\bf Return Type:} 
 
10713
{\tt 
 
10714
(SR ref) Set
 
10715
}
 
10716
 
 
10717
 
 
10718
references to all objects
 
10719
\vspace{0.3cm}
 
10720
\vspace{0.3cm}
 
10721
\vspace{0.3cm}
 
10722
\subsubsection{RPC name:~get\_uuid}
 
10723
 
 
10724
{\bf Overview:} 
 
10725
Get the uuid field of the given SR.
 
10726
 
 
10727
 \noindent {\bf Signature:} 
 
10728
\begin{verbatim} string get_uuid (session_id s, SR ref self)\end{verbatim}
 
10729
 
 
10730
 
 
10731
\noindent{\bf Arguments:}
 
10732
 
 
10733
 
 
10734
\vspace{0.3cm}
 
10735
\begin{tabular}{|c|c|p{7cm}|}
 
10736
 \hline
 
10737
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10738
{\tt SR ref } & self & reference to the object \\ \hline 
 
10739
 
 
10740
\end{tabular}
 
10741
 
 
10742
\vspace{0.3cm}
 
10743
 
 
10744
 \noindent {\bf Return Type:} 
 
10745
{\tt 
 
10746
string
 
10747
}
 
10748
 
 
10749
 
 
10750
value of the field
 
10751
\vspace{0.3cm}
 
10752
\vspace{0.3cm}
 
10753
\vspace{0.3cm}
 
10754
\subsubsection{RPC name:~get\_name\_label}
 
10755
 
 
10756
{\bf Overview:} 
 
10757
Get the name/label field of the given SR.
 
10758
 
 
10759
 \noindent {\bf Signature:} 
 
10760
\begin{verbatim} string get_name_label (session_id s, SR ref self)\end{verbatim}
 
10761
 
 
10762
 
 
10763
\noindent{\bf Arguments:}
 
10764
 
 
10765
 
 
10766
\vspace{0.3cm}
 
10767
\begin{tabular}{|c|c|p{7cm}|}
 
10768
 \hline
 
10769
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10770
{\tt SR ref } & self & reference to the object \\ \hline 
 
10771
 
 
10772
\end{tabular}
 
10773
 
 
10774
\vspace{0.3cm}
 
10775
 
 
10776
 \noindent {\bf Return Type:} 
 
10777
{\tt 
 
10778
string
 
10779
}
 
10780
 
 
10781
 
 
10782
value of the field
 
10783
\vspace{0.3cm}
 
10784
\vspace{0.3cm}
 
10785
\vspace{0.3cm}
 
10786
\subsubsection{RPC name:~set\_name\_label}
 
10787
 
 
10788
{\bf Overview:} 
 
10789
Set the name/label field of the given SR.
 
10790
 
 
10791
 \noindent {\bf Signature:} 
 
10792
\begin{verbatim} void set_name_label (session_id s, SR ref self, string value)\end{verbatim}
 
10793
 
 
10794
 
 
10795
\noindent{\bf Arguments:}
 
10796
 
 
10797
 
 
10798
\vspace{0.3cm}
 
10799
\begin{tabular}{|c|c|p{7cm}|}
 
10800
 \hline
 
10801
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10802
{\tt SR ref } & self & reference to the object \\ \hline 
 
10803
 
 
10804
{\tt string } & value & New value to set \\ \hline 
 
10805
 
 
10806
\end{tabular}
 
10807
 
 
10808
\vspace{0.3cm}
 
10809
 
 
10810
 \noindent {\bf Return Type:} 
 
10811
{\tt 
 
10812
void
 
10813
}
 
10814
 
 
10815
 
 
10816
 
 
10817
\vspace{0.3cm}
 
10818
\vspace{0.3cm}
 
10819
\vspace{0.3cm}
 
10820
\subsubsection{RPC name:~get\_name\_description}
 
10821
 
 
10822
{\bf Overview:} 
 
10823
Get the name/description field of the given SR.
 
10824
 
 
10825
 \noindent {\bf Signature:} 
 
10826
\begin{verbatim} string get_name_description (session_id s, SR ref self)\end{verbatim}
 
10827
 
 
10828
 
 
10829
\noindent{\bf Arguments:}
 
10830
 
 
10831
 
 
10832
\vspace{0.3cm}
 
10833
\begin{tabular}{|c|c|p{7cm}|}
 
10834
 \hline
 
10835
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10836
{\tt SR ref } & self & reference to the object \\ \hline 
 
10837
 
 
10838
\end{tabular}
 
10839
 
 
10840
\vspace{0.3cm}
 
10841
 
 
10842
 \noindent {\bf Return Type:} 
 
10843
{\tt 
 
10844
string
 
10845
}
 
10846
 
 
10847
 
 
10848
value of the field
 
10849
\vspace{0.3cm}
 
10850
\vspace{0.3cm}
 
10851
\vspace{0.3cm}
 
10852
\subsubsection{RPC name:~set\_name\_description}
 
10853
 
 
10854
{\bf Overview:} 
 
10855
Set the name/description field of the given SR.
 
10856
 
 
10857
 \noindent {\bf Signature:} 
 
10858
\begin{verbatim} void set_name_description (session_id s, SR ref self, string value)\end{verbatim}
 
10859
 
 
10860
 
 
10861
\noindent{\bf Arguments:}
 
10862
 
 
10863
 
 
10864
\vspace{0.3cm}
 
10865
\begin{tabular}{|c|c|p{7cm}|}
 
10866
 \hline
 
10867
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10868
{\tt SR ref } & self & reference to the object \\ \hline 
 
10869
 
 
10870
{\tt string } & value & New value to set \\ \hline 
 
10871
 
 
10872
\end{tabular}
 
10873
 
 
10874
\vspace{0.3cm}
 
10875
 
 
10876
 \noindent {\bf Return Type:} 
 
10877
{\tt 
 
10878
void
 
10879
}
 
10880
 
 
10881
 
 
10882
 
 
10883
\vspace{0.3cm}
 
10884
\vspace{0.3cm}
 
10885
\vspace{0.3cm}
 
10886
\subsubsection{RPC name:~get\_VDIs}
 
10887
 
 
10888
{\bf Overview:} 
 
10889
Get the VDIs field of the given SR.
 
10890
 
 
10891
 \noindent {\bf Signature:} 
 
10892
\begin{verbatim} ((VDI ref) Set) get_VDIs (session_id s, SR ref self)\end{verbatim}
 
10893
 
 
10894
 
 
10895
\noindent{\bf Arguments:}
 
10896
 
 
10897
 
 
10898
\vspace{0.3cm}
 
10899
\begin{tabular}{|c|c|p{7cm}|}
 
10900
 \hline
 
10901
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10902
{\tt SR ref } & self & reference to the object \\ \hline 
 
10903
 
 
10904
\end{tabular}
 
10905
 
 
10906
\vspace{0.3cm}
 
10907
 
 
10908
 \noindent {\bf Return Type:} 
 
10909
{\tt 
 
10910
(VDI ref) Set
 
10911
}
 
10912
 
 
10913
 
 
10914
value of the field
 
10915
\vspace{0.3cm}
 
10916
\vspace{0.3cm}
 
10917
\vspace{0.3cm}
 
10918
\subsubsection{RPC name:~get\_PBDs}
 
10919
 
 
10920
{\bf Overview:} 
 
10921
Get the PBDs field of the given SR.
 
10922
 
 
10923
 \noindent {\bf Signature:} 
 
10924
\begin{verbatim} ((PBD ref) Set) get_PBDs (session_id s, SR ref self)\end{verbatim}
 
10925
 
 
10926
 
 
10927
\noindent{\bf Arguments:}
 
10928
 
 
10929
 
 
10930
\vspace{0.3cm}
 
10931
\begin{tabular}{|c|c|p{7cm}|}
 
10932
 \hline
 
10933
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10934
{\tt SR ref } & self & reference to the object \\ \hline 
 
10935
 
 
10936
\end{tabular}
 
10937
 
 
10938
\vspace{0.3cm}
 
10939
 
 
10940
 \noindent {\bf Return Type:} 
 
10941
{\tt 
 
10942
(PBD ref) Set
 
10943
}
 
10944
 
 
10945
 
 
10946
value of the field
 
10947
\vspace{0.3cm}
 
10948
\vspace{0.3cm}
 
10949
\vspace{0.3cm}
 
10950
\subsubsection{RPC name:~get\_virtual\_allocation}
 
10951
 
 
10952
{\bf Overview:} 
 
10953
Get the virtual\_allocation field of the given SR.
 
10954
 
 
10955
 \noindent {\bf Signature:} 
 
10956
\begin{verbatim} int get_virtual_allocation (session_id s, SR ref self)\end{verbatim}
 
10957
 
 
10958
 
 
10959
\noindent{\bf Arguments:}
 
10960
 
 
10961
 
 
10962
\vspace{0.3cm}
 
10963
\begin{tabular}{|c|c|p{7cm}|}
 
10964
 \hline
 
10965
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10966
{\tt SR ref } & self & reference to the object \\ \hline 
 
10967
 
 
10968
\end{tabular}
 
10969
 
 
10970
\vspace{0.3cm}
 
10971
 
 
10972
 \noindent {\bf Return Type:} 
 
10973
{\tt 
 
10974
int
 
10975
}
 
10976
 
 
10977
 
 
10978
value of the field
 
10979
\vspace{0.3cm}
 
10980
\vspace{0.3cm}
 
10981
\vspace{0.3cm}
 
10982
\subsubsection{RPC name:~get\_physical\_utilisation}
 
10983
 
 
10984
{\bf Overview:} 
 
10985
Get the physical\_utilisation field of the given SR.
 
10986
 
 
10987
 \noindent {\bf Signature:} 
 
10988
\begin{verbatim} int get_physical_utilisation (session_id s, SR ref self)\end{verbatim}
 
10989
 
 
10990
 
 
10991
\noindent{\bf Arguments:}
 
10992
 
 
10993
 
 
10994
\vspace{0.3cm}
 
10995
\begin{tabular}{|c|c|p{7cm}|}
 
10996
 \hline
 
10997
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
10998
{\tt SR ref } & self & reference to the object \\ \hline 
 
10999
 
 
11000
\end{tabular}
 
11001
 
 
11002
\vspace{0.3cm}
 
11003
 
 
11004
 \noindent {\bf Return Type:} 
 
11005
{\tt 
 
11006
int
 
11007
}
 
11008
 
 
11009
 
 
11010
value of the field
 
11011
\vspace{0.3cm}
 
11012
\vspace{0.3cm}
 
11013
\vspace{0.3cm}
 
11014
\subsubsection{RPC name:~get\_physical\_size}
 
11015
 
 
11016
{\bf Overview:} 
 
11017
Get the physical\_size field of the given SR.
 
11018
 
 
11019
 \noindent {\bf Signature:} 
 
11020
\begin{verbatim} int get_physical_size (session_id s, SR ref self)\end{verbatim}
 
11021
 
 
11022
 
 
11023
\noindent{\bf Arguments:}
 
11024
 
 
11025
 
 
11026
\vspace{0.3cm}
 
11027
\begin{tabular}{|c|c|p{7cm}|}
 
11028
 \hline
 
11029
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11030
{\tt SR ref } & self & reference to the object \\ \hline 
 
11031
 
 
11032
\end{tabular}
 
11033
 
 
11034
\vspace{0.3cm}
 
11035
 
 
11036
 \noindent {\bf Return Type:} 
 
11037
{\tt 
 
11038
int
 
11039
}
 
11040
 
 
11041
 
 
11042
value of the field
 
11043
\vspace{0.3cm}
 
11044
\vspace{0.3cm}
 
11045
\vspace{0.3cm}
 
11046
\subsubsection{RPC name:~get\_type}
 
11047
 
 
11048
{\bf Overview:} 
 
11049
Get the type field of the given SR.
 
11050
 
 
11051
 \noindent {\bf Signature:} 
 
11052
\begin{verbatim} string get_type (session_id s, SR ref self)\end{verbatim}
 
11053
 
 
11054
 
 
11055
\noindent{\bf Arguments:}
 
11056
 
 
11057
 
 
11058
\vspace{0.3cm}
 
11059
\begin{tabular}{|c|c|p{7cm}|}
 
11060
 \hline
 
11061
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11062
{\tt SR ref } & self & reference to the object \\ \hline 
 
11063
 
 
11064
\end{tabular}
 
11065
 
 
11066
\vspace{0.3cm}
 
11067
 
 
11068
 \noindent {\bf Return Type:} 
 
11069
{\tt 
 
11070
string
 
11071
}
 
11072
 
 
11073
 
 
11074
value of the field
 
11075
\vspace{0.3cm}
 
11076
\vspace{0.3cm}
 
11077
\vspace{0.3cm}
 
11078
\subsubsection{RPC name:~get\_content\_type}
 
11079
 
 
11080
{\bf Overview:} 
 
11081
Get the content\_type field of the given SR.
 
11082
 
 
11083
 \noindent {\bf Signature:} 
 
11084
\begin{verbatim} string get_content_type (session_id s, SR ref self)\end{verbatim}
 
11085
 
 
11086
 
 
11087
\noindent{\bf Arguments:}
 
11088
 
 
11089
 
 
11090
\vspace{0.3cm}
 
11091
\begin{tabular}{|c|c|p{7cm}|}
 
11092
 \hline
 
11093
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11094
{\tt SR ref } & self & reference to the object \\ \hline 
 
11095
 
 
11096
\end{tabular}
 
11097
 
 
11098
\vspace{0.3cm}
 
11099
 
 
11100
 \noindent {\bf Return Type:} 
 
11101
{\tt 
 
11102
string
 
11103
}
 
11104
 
 
11105
 
 
11106
value of the field
 
11107
\vspace{0.3cm}
 
11108
\vspace{0.3cm}
 
11109
\vspace{0.3cm}
 
11110
\subsubsection{RPC name:~get\_by\_uuid}
 
11111
 
 
11112
{\bf Overview:} 
 
11113
Get a reference to the SR instance with the specified UUID.
 
11114
 
 
11115
 \noindent {\bf Signature:} 
 
11116
\begin{verbatim} (SR ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
11117
 
 
11118
 
 
11119
\noindent{\bf Arguments:}
 
11120
 
 
11121
 
 
11122
\vspace{0.3cm}
 
11123
\begin{tabular}{|c|c|p{7cm}|}
 
11124
 \hline
 
11125
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11126
{\tt string } & uuid & UUID of object to return \\ \hline 
 
11127
 
 
11128
\end{tabular}
 
11129
 
 
11130
\vspace{0.3cm}
 
11131
 
 
11132
 \noindent {\bf Return Type:} 
 
11133
{\tt 
 
11134
SR ref
 
11135
}
 
11136
 
 
11137
 
 
11138
reference to the object
 
11139
\vspace{0.3cm}
 
11140
\vspace{0.3cm}
 
11141
\vspace{0.3cm}
 
11142
\subsubsection{RPC name:~get\_record}
 
11143
 
 
11144
{\bf Overview:} 
 
11145
Get a record containing the current state of the given SR.
 
11146
 
 
11147
 \noindent {\bf Signature:} 
 
11148
\begin{verbatim} (SR record) get_record (session_id s, SR ref self)\end{verbatim}
 
11149
 
 
11150
 
 
11151
\noindent{\bf Arguments:}
 
11152
 
 
11153
 
 
11154
\vspace{0.3cm}
 
11155
\begin{tabular}{|c|c|p{7cm}|}
 
11156
 \hline
 
11157
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11158
{\tt SR ref } & self & reference to the object \\ \hline 
 
11159
 
 
11160
\end{tabular}
 
11161
 
 
11162
\vspace{0.3cm}
 
11163
 
 
11164
 \noindent {\bf Return Type:} 
 
11165
{\tt 
 
11166
SR record
 
11167
}
 
11168
 
 
11169
 
 
11170
all fields from the object
 
11171
\vspace{0.3cm}
 
11172
\vspace{0.3cm}
 
11173
\vspace{0.3cm}
 
11174
\subsubsection{RPC name:~get\_by\_name\_label}
 
11175
 
 
11176
{\bf Overview:} 
 
11177
Get all the SR instances with the given label.
 
11178
 
 
11179
 \noindent {\bf Signature:} 
 
11180
\begin{verbatim} ((SR ref) Set) get_by_name_label (session_id s, string label)\end{verbatim}
 
11181
 
 
11182
 
 
11183
\noindent{\bf Arguments:}
 
11184
 
 
11185
 
 
11186
\vspace{0.3cm}
 
11187
\begin{tabular}{|c|c|p{7cm}|}
 
11188
 \hline
 
11189
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11190
{\tt string } & label & label of object to return \\ \hline 
 
11191
 
 
11192
\end{tabular}
 
11193
 
 
11194
\vspace{0.3cm}
 
11195
 
 
11196
 \noindent {\bf Return Type:} 
 
11197
{\tt 
 
11198
(SR ref) Set
 
11199
}
 
11200
 
 
11201
 
 
11202
references to objects with match names
 
11203
\vspace{0.3cm}
 
11204
\vspace{0.3cm}
 
11205
\vspace{0.3cm}
 
11206
 
 
11207
\vspace{1cm}
 
11208
\newpage
 
11209
\section{Class: VDI}
 
11210
\subsection{Fields for class: VDI}
 
11211
\begin{longtable}{|lllp{0.38\textwidth}|}
 
11212
\hline
 
11213
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VDI} \\
 
11214
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
11215
virtual disk image.}} \\
 
11216
\hline
 
11217
Quals & Field & Type & Description \\
 
11218
\hline
 
11219
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
11220
$\mathit{RW}$ &  {\tt name/label} & string & a human-readable name \\
 
11221
$\mathit{RW}$ &  {\tt name/description} & string & a notes field containg human-readable description \\
 
11222
$\mathit{RO}_\mathit{ins}$ &  {\tt SR} & SR ref & storage repository in which the VDI resides \\
 
11223
$\mathit{RO}_\mathit{run}$ &  {\tt VBDs} & (VBD ref) Set & list of vbds that refer to this disk \\
 
11224
$\mathit{RO}_\mathit{run}$ &  {\tt crash\_dumps} & (crashdump ref) Set & list of crash dumps that refer to this disk \\
 
11225
$\mathit{RW}$ &  {\tt virtual\_size} & int & size of disk as presented to the guest (in bytes). Note that, depending on storage backend type, requested size may not be respected exactly \\
 
11226
$\mathit{RO}_\mathit{run}$ &  {\tt physical\_utilisation} & int & amount of physical space that the disk image is currently taking up on the storage repository (in bytes) \\
 
11227
$\mathit{RO}_\mathit{ins}$ &  {\tt type} & vdi\_type & type of the VDI \\
 
11228
$\mathit{RW}$ &  {\tt sharable} & bool & true if this disk may be shared \\
 
11229
$\mathit{RW}$ &  {\tt read\_only} & bool & true if this disk may ONLY be mounted read-only \\
 
11230
$\mathit{RW}$ &  {\tt other\_config} & (string $\rightarrow$ string) Map & additional configuration \\
 
11231
$\mathit{RO}_\mathit{run}$ &  {\tt security/label} & string & the VM's security label \\
 
11232
\hline
 
11233
\end{longtable}
 
11234
\subsection{RPCs associated with class: VDI}
 
11235
\subsubsection{RPC name:~get\_all}
 
11236
 
 
11237
{\bf Overview:} 
 
11238
Return a list of all the VDIs known to the system.
 
11239
 
 
11240
 \noindent {\bf Signature:} 
 
11241
\begin{verbatim} ((VDI ref) Set) get_all (session_id s)\end{verbatim}
 
11242
 
 
11243
 
 
11244
\vspace{0.3cm}
 
11245
 
 
11246
 \noindent {\bf Return Type:} 
 
11247
{\tt 
 
11248
(VDI ref) Set
 
11249
}
 
11250
 
 
11251
 
 
11252
references to all objects
 
11253
\vspace{0.3cm}
 
11254
\vspace{0.3cm}
 
11255
\vspace{0.3cm}
 
11256
\subsubsection{RPC name:~get\_uuid}
 
11257
 
 
11258
{\bf Overview:} 
 
11259
Get the uuid field of the given VDI.
 
11260
 
 
11261
 \noindent {\bf Signature:} 
 
11262
\begin{verbatim} string get_uuid (session_id s, VDI ref self)\end{verbatim}
 
11263
 
 
11264
 
 
11265
\noindent{\bf Arguments:}
 
11266
 
 
11267
 
 
11268
\vspace{0.3cm}
 
11269
\begin{tabular}{|c|c|p{7cm}|}
 
11270
 \hline
 
11271
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11272
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11273
 
 
11274
\end{tabular}
 
11275
 
 
11276
\vspace{0.3cm}
 
11277
 
 
11278
 \noindent {\bf Return Type:} 
 
11279
{\tt 
 
11280
string
 
11281
}
 
11282
 
 
11283
 
 
11284
value of the field
 
11285
\vspace{0.3cm}
 
11286
\vspace{0.3cm}
 
11287
\vspace{0.3cm}
 
11288
\subsubsection{RPC name:~get\_name\_label}
 
11289
 
 
11290
{\bf Overview:} 
 
11291
Get the name/label field of the given VDI.
 
11292
 
 
11293
 \noindent {\bf Signature:} 
 
11294
\begin{verbatim} string get_name_label (session_id s, VDI ref self)\end{verbatim}
 
11295
 
 
11296
 
 
11297
\noindent{\bf Arguments:}
 
11298
 
 
11299
 
 
11300
\vspace{0.3cm}
 
11301
\begin{tabular}{|c|c|p{7cm}|}
 
11302
 \hline
 
11303
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11304
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11305
 
 
11306
\end{tabular}
 
11307
 
 
11308
\vspace{0.3cm}
 
11309
 
 
11310
 \noindent {\bf Return Type:} 
 
11311
{\tt 
 
11312
string
 
11313
}
 
11314
 
 
11315
 
 
11316
value of the field
 
11317
\vspace{0.3cm}
 
11318
\vspace{0.3cm}
 
11319
\vspace{0.3cm}
 
11320
\subsubsection{RPC name:~set\_name\_label}
 
11321
 
 
11322
{\bf Overview:} 
 
11323
Set the name/label field of the given VDI.
 
11324
 
 
11325
 \noindent {\bf Signature:} 
 
11326
\begin{verbatim} void set_name_label (session_id s, VDI ref self, string value)\end{verbatim}
 
11327
 
 
11328
 
 
11329
\noindent{\bf Arguments:}
 
11330
 
 
11331
 
 
11332
\vspace{0.3cm}
 
11333
\begin{tabular}{|c|c|p{7cm}|}
 
11334
 \hline
 
11335
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11336
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11337
 
 
11338
{\tt string } & value & New value to set \\ \hline 
 
11339
 
 
11340
\end{tabular}
 
11341
 
 
11342
\vspace{0.3cm}
 
11343
 
 
11344
 \noindent {\bf Return Type:} 
 
11345
{\tt 
 
11346
void
 
11347
}
 
11348
 
 
11349
 
 
11350
 
 
11351
\vspace{0.3cm}
 
11352
\vspace{0.3cm}
 
11353
\vspace{0.3cm}
 
11354
\subsubsection{RPC name:~get\_name\_description}
 
11355
 
 
11356
{\bf Overview:} 
 
11357
Get the name/description field of the given VDI.
 
11358
 
 
11359
 \noindent {\bf Signature:} 
 
11360
\begin{verbatim} string get_name_description (session_id s, VDI ref self)\end{verbatim}
 
11361
 
 
11362
 
 
11363
\noindent{\bf Arguments:}
 
11364
 
 
11365
 
 
11366
\vspace{0.3cm}
 
11367
\begin{tabular}{|c|c|p{7cm}|}
 
11368
 \hline
 
11369
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11370
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11371
 
 
11372
\end{tabular}
 
11373
 
 
11374
\vspace{0.3cm}
 
11375
 
 
11376
 \noindent {\bf Return Type:} 
 
11377
{\tt 
 
11378
string
 
11379
}
 
11380
 
 
11381
 
 
11382
value of the field
 
11383
\vspace{0.3cm}
 
11384
\vspace{0.3cm}
 
11385
\vspace{0.3cm}
 
11386
\subsubsection{RPC name:~set\_name\_description}
 
11387
 
 
11388
{\bf Overview:} 
 
11389
Set the name/description field of the given VDI.
 
11390
 
 
11391
 \noindent {\bf Signature:} 
 
11392
\begin{verbatim} void set_name_description (session_id s, VDI ref self, string value)\end{verbatim}
 
11393
 
 
11394
 
 
11395
\noindent{\bf Arguments:}
 
11396
 
 
11397
 
 
11398
\vspace{0.3cm}
 
11399
\begin{tabular}{|c|c|p{7cm}|}
 
11400
 \hline
 
11401
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11402
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11403
 
 
11404
{\tt string } & value & New value to set \\ \hline 
 
11405
 
 
11406
\end{tabular}
 
11407
 
 
11408
\vspace{0.3cm}
 
11409
 
 
11410
 \noindent {\bf Return Type:} 
 
11411
{\tt 
 
11412
void
 
11413
}
 
11414
 
 
11415
 
 
11416
 
 
11417
\vspace{0.3cm}
 
11418
\vspace{0.3cm}
 
11419
\vspace{0.3cm}
 
11420
\subsubsection{RPC name:~get\_SR}
 
11421
 
 
11422
{\bf Overview:} 
 
11423
Get the SR field of the given VDI.
 
11424
 
 
11425
 \noindent {\bf Signature:} 
 
11426
\begin{verbatim} (SR ref) get_SR (session_id s, VDI ref self)\end{verbatim}
 
11427
 
 
11428
 
 
11429
\noindent{\bf Arguments:}
 
11430
 
 
11431
 
 
11432
\vspace{0.3cm}
 
11433
\begin{tabular}{|c|c|p{7cm}|}
 
11434
 \hline
 
11435
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11436
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11437
 
 
11438
\end{tabular}
 
11439
 
 
11440
\vspace{0.3cm}
 
11441
 
 
11442
 \noindent {\bf Return Type:} 
 
11443
{\tt 
 
11444
SR ref
 
11445
}
 
11446
 
 
11447
 
 
11448
value of the field
 
11449
\vspace{0.3cm}
 
11450
\vspace{0.3cm}
 
11451
\vspace{0.3cm}
 
11452
\subsubsection{RPC name:~get\_VBDs}
 
11453
 
 
11454
{\bf Overview:} 
 
11455
Get the VBDs field of the given VDI.
 
11456
 
 
11457
 \noindent {\bf Signature:} 
 
11458
\begin{verbatim} ((VBD ref) Set) get_VBDs (session_id s, VDI ref self)\end{verbatim}
 
11459
 
 
11460
 
 
11461
\noindent{\bf Arguments:}
 
11462
 
 
11463
 
 
11464
\vspace{0.3cm}
 
11465
\begin{tabular}{|c|c|p{7cm}|}
 
11466
 \hline
 
11467
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11468
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11469
 
 
11470
\end{tabular}
 
11471
 
 
11472
\vspace{0.3cm}
 
11473
 
 
11474
 \noindent {\bf Return Type:} 
 
11475
{\tt 
 
11476
(VBD ref) Set
 
11477
}
 
11478
 
 
11479
 
 
11480
value of the field
 
11481
\vspace{0.3cm}
 
11482
\vspace{0.3cm}
 
11483
\vspace{0.3cm}
 
11484
\subsubsection{RPC name:~get\_crash\_dumps}
 
11485
 
 
11486
{\bf Overview:} 
 
11487
Get the crash\_dumps field of the given VDI.
 
11488
 
 
11489
 \noindent {\bf Signature:} 
 
11490
\begin{verbatim} ((crashdump ref) Set) get_crash_dumps (session_id s, VDI ref self)\end{verbatim}
 
11491
 
 
11492
 
 
11493
\noindent{\bf Arguments:}
 
11494
 
 
11495
 
 
11496
\vspace{0.3cm}
 
11497
\begin{tabular}{|c|c|p{7cm}|}
 
11498
 \hline
 
11499
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11500
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11501
 
 
11502
\end{tabular}
 
11503
 
 
11504
\vspace{0.3cm}
 
11505
 
 
11506
 \noindent {\bf Return Type:} 
 
11507
{\tt 
 
11508
(crashdump ref) Set
 
11509
}
 
11510
 
 
11511
 
 
11512
value of the field
 
11513
\vspace{0.3cm}
 
11514
\vspace{0.3cm}
 
11515
\vspace{0.3cm}
 
11516
\subsubsection{RPC name:~get\_virtual\_size}
 
11517
 
 
11518
{\bf Overview:} 
 
11519
Get the virtual\_size field of the given VDI.
 
11520
 
 
11521
 \noindent {\bf Signature:} 
 
11522
\begin{verbatim} int get_virtual_size (session_id s, VDI ref self)\end{verbatim}
 
11523
 
 
11524
 
 
11525
\noindent{\bf Arguments:}
 
11526
 
 
11527
 
 
11528
\vspace{0.3cm}
 
11529
\begin{tabular}{|c|c|p{7cm}|}
 
11530
 \hline
 
11531
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11532
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11533
 
 
11534
\end{tabular}
 
11535
 
 
11536
\vspace{0.3cm}
 
11537
 
 
11538
 \noindent {\bf Return Type:} 
 
11539
{\tt 
 
11540
int
 
11541
}
 
11542
 
 
11543
 
 
11544
value of the field
 
11545
\vspace{0.3cm}
 
11546
\vspace{0.3cm}
 
11547
\vspace{0.3cm}
 
11548
\subsubsection{RPC name:~set\_virtual\_size}
 
11549
 
 
11550
{\bf Overview:} 
 
11551
Set the virtual\_size field of the given VDI.
 
11552
 
 
11553
 \noindent {\bf Signature:} 
 
11554
\begin{verbatim} void set_virtual_size (session_id s, VDI ref self, int value)\end{verbatim}
 
11555
 
 
11556
 
 
11557
\noindent{\bf Arguments:}
 
11558
 
 
11559
 
 
11560
\vspace{0.3cm}
 
11561
\begin{tabular}{|c|c|p{7cm}|}
 
11562
 \hline
 
11563
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11564
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11565
 
 
11566
{\tt int } & value & New value to set \\ \hline 
 
11567
 
 
11568
\end{tabular}
 
11569
 
 
11570
\vspace{0.3cm}
 
11571
 
 
11572
 \noindent {\bf Return Type:} 
 
11573
{\tt 
 
11574
void
 
11575
}
 
11576
 
 
11577
 
 
11578
 
 
11579
\vspace{0.3cm}
 
11580
\vspace{0.3cm}
 
11581
\vspace{0.3cm}
 
11582
\subsubsection{RPC name:~get\_physical\_utilisation}
 
11583
 
 
11584
{\bf Overview:} 
 
11585
Get the physical\_utilisation field of the given VDI.
 
11586
 
 
11587
 \noindent {\bf Signature:} 
 
11588
\begin{verbatim} int get_physical_utilisation (session_id s, VDI ref self)\end{verbatim}
 
11589
 
 
11590
 
 
11591
\noindent{\bf Arguments:}
 
11592
 
 
11593
 
 
11594
\vspace{0.3cm}
 
11595
\begin{tabular}{|c|c|p{7cm}|}
 
11596
 \hline
 
11597
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11598
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11599
 
 
11600
\end{tabular}
 
11601
 
 
11602
\vspace{0.3cm}
 
11603
 
 
11604
 \noindent {\bf Return Type:} 
 
11605
{\tt 
 
11606
int
 
11607
}
 
11608
 
 
11609
 
 
11610
value of the field
 
11611
\vspace{0.3cm}
 
11612
\vspace{0.3cm}
 
11613
\vspace{0.3cm}
 
11614
\subsubsection{RPC name:~get\_type}
 
11615
 
 
11616
{\bf Overview:} 
 
11617
Get the type field of the given VDI.
 
11618
 
 
11619
 \noindent {\bf Signature:} 
 
11620
\begin{verbatim} (vdi_type) get_type (session_id s, VDI ref self)\end{verbatim}
 
11621
 
 
11622
 
 
11623
\noindent{\bf Arguments:}
 
11624
 
 
11625
 
 
11626
\vspace{0.3cm}
 
11627
\begin{tabular}{|c|c|p{7cm}|}
 
11628
 \hline
 
11629
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11630
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11631
 
 
11632
\end{tabular}
 
11633
 
 
11634
\vspace{0.3cm}
 
11635
 
 
11636
 \noindent {\bf Return Type:} 
 
11637
{\tt 
 
11638
vdi\_type
 
11639
}
 
11640
 
 
11641
 
 
11642
value of the field
 
11643
\vspace{0.3cm}
 
11644
\vspace{0.3cm}
 
11645
\vspace{0.3cm}
 
11646
\subsubsection{RPC name:~get\_sharable}
 
11647
 
 
11648
{\bf Overview:} 
 
11649
Get the sharable field of the given VDI.
 
11650
 
 
11651
 \noindent {\bf Signature:} 
 
11652
\begin{verbatim} bool get_sharable (session_id s, VDI ref self)\end{verbatim}
 
11653
 
 
11654
 
 
11655
\noindent{\bf Arguments:}
 
11656
 
 
11657
 
 
11658
\vspace{0.3cm}
 
11659
\begin{tabular}{|c|c|p{7cm}|}
 
11660
 \hline
 
11661
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11662
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11663
 
 
11664
\end{tabular}
 
11665
 
 
11666
\vspace{0.3cm}
 
11667
 
 
11668
 \noindent {\bf Return Type:} 
 
11669
{\tt 
 
11670
bool
 
11671
}
 
11672
 
 
11673
 
 
11674
value of the field
 
11675
\vspace{0.3cm}
 
11676
\vspace{0.3cm}
 
11677
\vspace{0.3cm}
 
11678
\subsubsection{RPC name:~set\_sharable}
 
11679
 
 
11680
{\bf Overview:} 
 
11681
Set the sharable field of the given VDI.
 
11682
 
 
11683
 \noindent {\bf Signature:} 
 
11684
\begin{verbatim} void set_sharable (session_id s, VDI ref self, bool value)\end{verbatim}
 
11685
 
 
11686
 
 
11687
\noindent{\bf Arguments:}
 
11688
 
 
11689
 
 
11690
\vspace{0.3cm}
 
11691
\begin{tabular}{|c|c|p{7cm}|}
 
11692
 \hline
 
11693
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11694
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11695
 
 
11696
{\tt bool } & value & New value to set \\ \hline 
 
11697
 
 
11698
\end{tabular}
 
11699
 
 
11700
\vspace{0.3cm}
 
11701
 
 
11702
 \noindent {\bf Return Type:} 
 
11703
{\tt 
 
11704
void
 
11705
}
 
11706
 
 
11707
 
 
11708
 
 
11709
\vspace{0.3cm}
 
11710
\vspace{0.3cm}
 
11711
\vspace{0.3cm}
 
11712
\subsubsection{RPC name:~get\_read\_only}
 
11713
 
 
11714
{\bf Overview:} 
 
11715
Get the read\_only field of the given VDI.
 
11716
 
 
11717
 \noindent {\bf Signature:} 
 
11718
\begin{verbatim} bool get_read_only (session_id s, VDI ref self)\end{verbatim}
 
11719
 
 
11720
 
 
11721
\noindent{\bf Arguments:}
 
11722
 
 
11723
 
 
11724
\vspace{0.3cm}
 
11725
\begin{tabular}{|c|c|p{7cm}|}
 
11726
 \hline
 
11727
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11728
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11729
 
 
11730
\end{tabular}
 
11731
 
 
11732
\vspace{0.3cm}
 
11733
 
 
11734
 \noindent {\bf Return Type:} 
 
11735
{\tt 
 
11736
bool
 
11737
}
 
11738
 
 
11739
 
 
11740
value of the field
 
11741
\vspace{0.3cm}
 
11742
\vspace{0.3cm}
 
11743
\vspace{0.3cm}
 
11744
\subsubsection{RPC name:~set\_read\_only}
 
11745
 
 
11746
{\bf Overview:} 
 
11747
Set the read\_only field of the given VDI.
 
11748
 
 
11749
 \noindent {\bf Signature:} 
 
11750
\begin{verbatim} void set_read_only (session_id s, VDI ref self, bool value)\end{verbatim}
 
11751
 
 
11752
 
 
11753
\noindent{\bf Arguments:}
 
11754
 
 
11755
 
 
11756
\vspace{0.3cm}
 
11757
\begin{tabular}{|c|c|p{7cm}|}
 
11758
 \hline
 
11759
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11760
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11761
 
 
11762
{\tt bool } & value & New value to set \\ \hline 
 
11763
 
 
11764
\end{tabular}
 
11765
 
 
11766
\vspace{0.3cm}
 
11767
 
 
11768
 \noindent {\bf Return Type:} 
 
11769
{\tt 
 
11770
void
 
11771
}
 
11772
 
 
11773
 
 
11774
 
 
11775
\vspace{0.3cm}
 
11776
\vspace{0.3cm}
 
11777
\vspace{0.3cm}
 
11778
\subsubsection{RPC name:~get\_other\_config}
 
11779
 
 
11780
{\bf Overview:} 
 
11781
Get the other\_config field of the given VDI.
 
11782
 
 
11783
 \noindent {\bf Signature:} 
 
11784
\begin{verbatim} ((string -> string) Map) get_other_config (session_id s, VDI ref self)\end{verbatim}
 
11785
 
 
11786
 
 
11787
\noindent{\bf Arguments:}
 
11788
 
 
11789
 
 
11790
\vspace{0.3cm}
 
11791
\begin{tabular}{|c|c|p{7cm}|}
 
11792
 \hline
 
11793
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11794
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11795
 
 
11796
\end{tabular}
 
11797
 
 
11798
\vspace{0.3cm}
 
11799
 
 
11800
 \noindent {\bf Return Type:} 
 
11801
{\tt 
 
11802
(string $\rightarrow$ string) Map
 
11803
}
 
11804
 
 
11805
 
 
11806
value of the field
 
11807
\vspace{0.3cm}
 
11808
\vspace{0.3cm}
 
11809
\vspace{0.3cm}
 
11810
\subsubsection{RPC name:~set\_other\_config}
 
11811
 
 
11812
{\bf Overview:} 
 
11813
Set the other\_config field of the given VDI.
 
11814
 
 
11815
 \noindent {\bf Signature:} 
 
11816
\begin{verbatim} void set_other_config (session_id s, VDI ref self, (string -> string) Map value)\end{verbatim}
 
11817
 
 
11818
 
 
11819
\noindent{\bf Arguments:}
 
11820
 
 
11821
 
 
11822
\vspace{0.3cm}
 
11823
\begin{tabular}{|c|c|p{7cm}|}
 
11824
 \hline
 
11825
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11826
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11827
 
 
11828
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
11829
 
 
11830
\end{tabular}
 
11831
 
 
11832
\vspace{0.3cm}
 
11833
 
 
11834
 \noindent {\bf Return Type:} 
 
11835
{\tt 
 
11836
void
 
11837
}
 
11838
 
 
11839
 
 
11840
 
 
11841
\vspace{0.3cm}
 
11842
\vspace{0.3cm}
 
11843
\vspace{0.3cm}
 
11844
\subsubsection{RPC name:~add\_to\_other\_config}
 
11845
 
 
11846
{\bf Overview:} 
 
11847
Add the given key-value pair to the other\_config field of the given VDI.
 
11848
 
 
11849
 \noindent {\bf Signature:} 
 
11850
\begin{verbatim} void add_to_other_config (session_id s, VDI ref self, string key, string value)\end{verbatim}
 
11851
 
 
11852
 
 
11853
\noindent{\bf Arguments:}
 
11854
 
 
11855
 
 
11856
\vspace{0.3cm}
 
11857
\begin{tabular}{|c|c|p{7cm}|}
 
11858
 \hline
 
11859
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11860
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11861
 
 
11862
{\tt string } & key & Key to add \\ \hline 
 
11863
 
 
11864
{\tt string } & value & Value to add \\ \hline 
 
11865
 
 
11866
\end{tabular}
 
11867
 
 
11868
\vspace{0.3cm}
 
11869
 
 
11870
 \noindent {\bf Return Type:} 
 
11871
{\tt 
 
11872
void
 
11873
}
 
11874
 
 
11875
 
 
11876
 
 
11877
\vspace{0.3cm}
 
11878
\vspace{0.3cm}
 
11879
\vspace{0.3cm}
 
11880
\subsubsection{RPC name:~remove\_from\_other\_config}
 
11881
 
 
11882
{\bf Overview:} 
 
11883
Remove the given key and its corresponding value from the other\_config
 
11884
field of the given VDI.  If the key is not in that Map, then do nothing.
 
11885
 
 
11886
 \noindent {\bf Signature:} 
 
11887
\begin{verbatim} void remove_from_other_config (session_id s, VDI ref self, string key)\end{verbatim}
 
11888
 
 
11889
 
 
11890
\noindent{\bf Arguments:}
 
11891
 
 
11892
 
 
11893
\vspace{0.3cm}
 
11894
\begin{tabular}{|c|c|p{7cm}|}
 
11895
 \hline
 
11896
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11897
{\tt VDI ref } & self & reference to the object \\ \hline 
 
11898
 
 
11899
{\tt string } & key & Key to remove \\ \hline 
 
11900
 
 
11901
\end{tabular}
 
11902
 
 
11903
\vspace{0.3cm}
 
11904
 
 
11905
 \noindent {\bf Return Type:} 
 
11906
{\tt 
 
11907
void
 
11908
}
 
11909
 
 
11910
 
 
11911
 
 
11912
\vspace{0.3cm}
 
11913
\vspace{0.3cm}
 
11914
\vspace{0.3cm}
 
11915
\subsubsection{RPC name:~set\_security\_label}
 
11916
 
 
11917
{\bf Overview:}
 
11918
Set the security label of the given VDI. Refer to the XSPolicy class
 
11919
for the format of the security label.
 
11920
 
 
11921
 \noindent {\bf Signature:}
 
11922
\begin{verbatim} void set_security_label (session_id s, VDI ref self, string
 
11923
security_label, string old_label)\end{verbatim}
 
11924
 
 
11925
 
 
11926
\noindent{\bf Arguments:}
 
11927
 
 
11928
 
 
11929
\vspace{0.3cm}
 
11930
\begin{tabular}{|c|c|p{7cm}|}
 
11931
 \hline
 
11932
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11933
{\tt VDI ref } & self & reference to the object \\ \hline
 
11934
 
 
11935
{\tt string } & security\_label & New value of the security label \\ \hline
 
11936
{\tt string } & old\_label & Label value that the security label \\
 
11937
& & must currently have for the change to succeed.\\ \hline
 
11938
\end{tabular}
 
11939
 
 
11940
\vspace{0.3cm}
 
11941
 
 
11942
 \noindent {\bf Return Type:}
 
11943
{\tt
 
11944
void
 
11945
}
 
11946
 
 
11947
 
 
11948
\vspace{0.3cm}
 
11949
 
 
11950
\noindent{\bf Possible Error Codes:} {\tt SECURITY\_ERROR}
 
11951
 
 
11952
\vspace{0.3cm}
 
11953
\vspace{0.3cm}
 
11954
\vspace{0.3cm}
 
11955
\subsubsection{RPC name:~get\_security\_label}
 
11956
 
 
11957
{\bf Overview:}
 
11958
Get the security label of the given VDI.
 
11959
 
 
11960
 \noindent {\bf Signature:}
 
11961
\begin{verbatim} string get_security_label (session_id s, VDI ref self)\end{verbatim}
 
11962
 
 
11963
 
 
11964
\noindent{\bf Arguments:}
 
11965
 
 
11966
 
 
11967
 
 
11968
\vspace{0.3cm}
 
11969
\begin{tabular}{|c|c|p{7cm}|}
 
11970
 \hline
 
11971
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
11972
{\tt VDI ref } & self & reference to the object \\ \hline
 
11973
 
 
11974
\end{tabular}
 
11975
 
 
11976
\vspace{0.3cm}
 
11977
 
 
11978
 \noindent {\bf Return Type:}
 
11979
{\tt
 
11980
string
 
11981
}
 
11982
 
 
11983
 
 
11984
value of the given field
 
11985
\vspace{0.3cm}
 
11986
\vspace{0.3cm}
 
11987
\vspace{0.3cm}
 
11988
\subsubsection{RPC name:~create}
 
11989
 
 
11990
{\bf Overview:} 
 
11991
Create a new VDI instance, and return its handle.
 
11992
 
 
11993
 \noindent {\bf Signature:} 
 
11994
\begin{verbatim} (VDI ref) create (session_id s, VDI record args)\end{verbatim}
 
11995
 
 
11996
 
 
11997
\noindent{\bf Arguments:}
 
11998
 
 
11999
 
 
12000
\vspace{0.3cm}
 
12001
\begin{tabular}{|c|c|p{7cm}|}
 
12002
 \hline
 
12003
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12004
{\tt VDI record } & args & All constructor arguments \\ \hline 
 
12005
 
 
12006
\end{tabular}
 
12007
 
 
12008
\vspace{0.3cm}
 
12009
 
 
12010
 \noindent {\bf Return Type:} 
 
12011
{\tt 
 
12012
VDI ref
 
12013
}
 
12014
 
 
12015
 
 
12016
reference to the newly created object
 
12017
\vspace{0.3cm}
 
12018
\vspace{0.3cm}
 
12019
\vspace{0.3cm}
 
12020
\subsubsection{RPC name:~destroy}
 
12021
 
 
12022
{\bf Overview:} 
 
12023
Destroy the specified VDI instance.
 
12024
 
 
12025
 \noindent {\bf Signature:} 
 
12026
\begin{verbatim} void destroy (session_id s, VDI ref self)\end{verbatim}
 
12027
 
 
12028
 
 
12029
\noindent{\bf Arguments:}
 
12030
 
 
12031
 
 
12032
\vspace{0.3cm}
 
12033
\begin{tabular}{|c|c|p{7cm}|}
 
12034
 \hline
 
12035
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12036
{\tt VDI ref } & self & reference to the object \\ \hline 
 
12037
 
 
12038
\end{tabular}
 
12039
 
 
12040
\vspace{0.3cm}
 
12041
 
 
12042
 \noindent {\bf Return Type:} 
 
12043
{\tt 
 
12044
void
 
12045
}
 
12046
 
 
12047
 
 
12048
 
 
12049
\vspace{0.3cm}
 
12050
\vspace{0.3cm}
 
12051
\vspace{0.3cm}
 
12052
\subsubsection{RPC name:~get\_by\_uuid}
 
12053
 
 
12054
{\bf Overview:} 
 
12055
Get a reference to the VDI instance with the specified UUID.
 
12056
 
 
12057
 \noindent {\bf Signature:} 
 
12058
\begin{verbatim} (VDI ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
12059
 
 
12060
 
 
12061
\noindent{\bf Arguments:}
 
12062
 
 
12063
 
 
12064
\vspace{0.3cm}
 
12065
\begin{tabular}{|c|c|p{7cm}|}
 
12066
 \hline
 
12067
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12068
{\tt string } & uuid & UUID of object to return \\ \hline 
 
12069
 
 
12070
\end{tabular}
 
12071
 
 
12072
\vspace{0.3cm}
 
12073
 
 
12074
 \noindent {\bf Return Type:} 
 
12075
{\tt 
 
12076
VDI ref
 
12077
}
 
12078
 
 
12079
 
 
12080
reference to the object
 
12081
\vspace{0.3cm}
 
12082
\vspace{0.3cm}
 
12083
\vspace{0.3cm}
 
12084
\subsubsection{RPC name:~get\_record}
 
12085
 
 
12086
{\bf Overview:} 
 
12087
Get a record containing the current state of the given VDI.
 
12088
 
 
12089
 \noindent {\bf Signature:} 
 
12090
\begin{verbatim} (VDI record) get_record (session_id s, VDI ref self)\end{verbatim}
 
12091
 
 
12092
 
 
12093
\noindent{\bf Arguments:}
 
12094
 
 
12095
 
 
12096
\vspace{0.3cm}
 
12097
\begin{tabular}{|c|c|p{7cm}|}
 
12098
 \hline
 
12099
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12100
{\tt VDI ref } & self & reference to the object \\ \hline 
 
12101
 
 
12102
\end{tabular}
 
12103
 
 
12104
\vspace{0.3cm}
 
12105
 
 
12106
 \noindent {\bf Return Type:} 
 
12107
{\tt 
 
12108
VDI record
 
12109
}
 
12110
 
 
12111
 
 
12112
all fields from the object
 
12113
\vspace{0.3cm}
 
12114
\vspace{0.3cm}
 
12115
\vspace{0.3cm}
 
12116
\subsubsection{RPC name:~get\_by\_name\_label}
 
12117
 
 
12118
{\bf Overview:} 
 
12119
Get all the VDI instances with the given label.
 
12120
 
 
12121
 \noindent {\bf Signature:} 
 
12122
\begin{verbatim} ((VDI ref) Set) get_by_name_label (session_id s, string label)\end{verbatim}
 
12123
 
 
12124
 
 
12125
\noindent{\bf Arguments:}
 
12126
 
 
12127
 
 
12128
\vspace{0.3cm}
 
12129
\begin{tabular}{|c|c|p{7cm}|}
 
12130
 \hline
 
12131
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12132
{\tt string } & label & label of object to return \\ \hline 
 
12133
 
 
12134
\end{tabular}
 
12135
 
 
12136
\vspace{0.3cm}
 
12137
 
 
12138
 \noindent {\bf Return Type:} 
 
12139
{\tt 
 
12140
(VDI ref) Set
 
12141
}
 
12142
 
 
12143
 
 
12144
references to objects with match names
 
12145
\vspace{0.3cm}
 
12146
\vspace{0.3cm}
 
12147
\vspace{0.3cm}
 
12148
 
 
12149
\vspace{1cm}
 
12150
\newpage
 
12151
\section{Class: VBD}
 
12152
\subsection{Fields for class: VBD}
 
12153
\begin{longtable}{|lllp{0.38\textwidth}|}
 
12154
\hline
 
12155
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VBD} \\
 
12156
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
12157
virtual block device.}} \\
 
12158
\hline
 
12159
Quals & Field & Type & Description \\
 
12160
\hline
 
12161
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
12162
$\mathit{RO}_\mathit{ins}$ &  {\tt VM} & VM ref & the virtual machine \\
 
12163
$\mathit{RO}_\mathit{ins}$ &  {\tt VDI} & VDI ref & the virtual disk \\
 
12164
$\mathit{RW}$ &  {\tt device} & string & device seen by the guest e.g. hda1 \\
 
12165
$\mathit{RW}$ &  {\tt bootable} & bool & true if this VBD is bootable \\
 
12166
$\mathit{RW}$ &  {\tt mode} & vbd\_mode & the mode the VBD should be mounted with \\
 
12167
$\mathit{RW}$ &  {\tt type} & vbd\_type & how the VBD will appear to the guest (e.g. disk or CD) \\
 
12168
$\mathit{RO}_\mathit{run}$ &  {\tt currently\_attached} & bool & is the device currently attached (erased on reboot) \\
 
12169
$\mathit{RO}_\mathit{run}$ &  {\tt status\_code} & int & error/success code associated with last attach-operation (erased on reboot) \\
 
12170
$\mathit{RO}_\mathit{run}$ &  {\tt status\_detail} & string & error/success information associated with last attach-operation status (erased on reboot) \\
 
12171
$\mathit{RO}_\mathit{run}$ &  {\tt runtime\_properties} & (string $\rightarrow$ string) Map & Device runtime properties \\
 
12172
$\mathit{RW}$ &  {\tt qos/algorithm\_type} & string & QoS algorithm to use \\
 
12173
$\mathit{RW}$ &  {\tt qos/algorithm\_params} & (string $\rightarrow$ string) Map & parameters for chosen QoS algorithm \\
 
12174
$\mathit{RO}_\mathit{run}$ &  {\tt qos/supported\_algorithms} & string Set & supported QoS algorithms for this VBD \\
 
12175
$\mathit{RO}_\mathit{run}$ &  {\tt metrics} & VBD\_metrics ref & metrics associated with this VBD \\
 
12176
\hline
 
12177
\end{longtable}
 
12178
\subsection{RPCs associated with class: VBD}
 
12179
\subsubsection{RPC name:~media\_change}
 
12180
 
 
12181
{\bf Overview:} 
 
12182
Change the media in the device for CDROM-like devices only. For other
 
12183
devices, detach the VBD and attach a new one.
 
12184
 
 
12185
 \noindent {\bf Signature:} 
 
12186
\begin{verbatim} void media_change (session_id s, VBD ref vbd, VDI ref vdi)\end{verbatim}
 
12187
 
 
12188
 
 
12189
\noindent{\bf Arguments:}
 
12190
 
 
12191
 
 
12192
\vspace{0.3cm}
 
12193
\begin{tabular}{|c|c|p{7cm}|}
 
12194
 \hline
 
12195
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12196
{\tt VBD ref } & vbd & The vbd representing the CDROM-like device \\ \hline 
 
12197
 
 
12198
{\tt VDI ref } & vdi & The new VDI to 'insert' \\ \hline 
 
12199
 
 
12200
\end{tabular}
 
12201
 
 
12202
\vspace{0.3cm}
 
12203
 
 
12204
 \noindent {\bf Return Type:} 
 
12205
{\tt 
 
12206
void
 
12207
}
 
12208
 
 
12209
 
 
12210
 
 
12211
\vspace{0.3cm}
 
12212
\vspace{0.3cm}
 
12213
\vspace{0.3cm}
 
12214
\subsubsection{RPC name:~plug}
 
12215
 
 
12216
{\bf Overview:} 
 
12217
Hotplug the specified VBD, dynamically attaching it to the running VM.
 
12218
 
 
12219
 \noindent {\bf Signature:} 
 
12220
\begin{verbatim} void plug (session_id s, VBD ref self)\end{verbatim}
 
12221
 
 
12222
 
 
12223
\noindent{\bf Arguments:}
 
12224
 
 
12225
 
 
12226
\vspace{0.3cm}
 
12227
\begin{tabular}{|c|c|p{7cm}|}
 
12228
 \hline
 
12229
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12230
{\tt VBD ref } & self & The VBD to hotplug \\ \hline 
 
12231
 
 
12232
\end{tabular}
 
12233
 
 
12234
\vspace{0.3cm}
 
12235
 
 
12236
 \noindent {\bf Return Type:} 
 
12237
{\tt 
 
12238
void
 
12239
}
 
12240
 
 
12241
 
 
12242
 
 
12243
\vspace{0.3cm}
 
12244
\vspace{0.3cm}
 
12245
\vspace{0.3cm}
 
12246
\subsubsection{RPC name:~unplug}
 
12247
 
 
12248
{\bf Overview:} 
 
12249
Hot-unplug the specified VBD, dynamically unattaching it from the running
 
12250
VM.
 
12251
 
 
12252
 \noindent {\bf Signature:} 
 
12253
\begin{verbatim} void unplug (session_id s, VBD ref self)\end{verbatim}
 
12254
 
 
12255
 
 
12256
\noindent{\bf Arguments:}
 
12257
 
 
12258
 
 
12259
\vspace{0.3cm}
 
12260
\begin{tabular}{|c|c|p{7cm}|}
 
12261
 \hline
 
12262
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12263
{\tt VBD ref } & self & The VBD to hot-unplug \\ \hline 
 
12264
 
 
12265
\end{tabular}
 
12266
 
 
12267
\vspace{0.3cm}
 
12268
 
 
12269
 \noindent {\bf Return Type:} 
 
12270
{\tt 
 
12271
void
 
12272
}
 
12273
 
 
12274
 
 
12275
 
 
12276
\vspace{0.3cm}
 
12277
\vspace{0.3cm}
 
12278
\vspace{0.3cm}
 
12279
\subsubsection{RPC name:~get\_all}
 
12280
 
 
12281
{\bf Overview:} 
 
12282
Return a list of all the VBDs known to the system.
 
12283
 
 
12284
 \noindent {\bf Signature:} 
 
12285
\begin{verbatim} ((VBD ref) Set) get_all (session_id s)\end{verbatim}
 
12286
 
 
12287
 
 
12288
\vspace{0.3cm}
 
12289
 
 
12290
 \noindent {\bf Return Type:} 
 
12291
{\tt 
 
12292
(VBD ref) Set
 
12293
}
 
12294
 
 
12295
 
 
12296
references to all objects
 
12297
\vspace{0.3cm}
 
12298
\vspace{0.3cm}
 
12299
\vspace{0.3cm}
 
12300
\subsubsection{RPC name:~get\_uuid}
 
12301
 
 
12302
{\bf Overview:} 
 
12303
Get the uuid field of the given VBD.
 
12304
 
 
12305
 \noindent {\bf Signature:} 
 
12306
\begin{verbatim} string get_uuid (session_id s, VBD ref self)\end{verbatim}
 
12307
 
 
12308
 
 
12309
\noindent{\bf Arguments:}
 
12310
 
 
12311
 
 
12312
\vspace{0.3cm}
 
12313
\begin{tabular}{|c|c|p{7cm}|}
 
12314
 \hline
 
12315
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12316
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12317
 
 
12318
\end{tabular}
 
12319
 
 
12320
\vspace{0.3cm}
 
12321
 
 
12322
 \noindent {\bf Return Type:} 
 
12323
{\tt 
 
12324
string
 
12325
}
 
12326
 
 
12327
 
 
12328
value of the field
 
12329
\vspace{0.3cm}
 
12330
\vspace{0.3cm}
 
12331
\vspace{0.3cm}
 
12332
\subsubsection{RPC name:~get\_VM}
 
12333
 
 
12334
{\bf Overview:} 
 
12335
Get the VM field of the given VBD.
 
12336
 
 
12337
 \noindent {\bf Signature:} 
 
12338
\begin{verbatim} (VM ref) get_VM (session_id s, VBD ref self)\end{verbatim}
 
12339
 
 
12340
 
 
12341
\noindent{\bf Arguments:}
 
12342
 
 
12343
 
 
12344
\vspace{0.3cm}
 
12345
\begin{tabular}{|c|c|p{7cm}|}
 
12346
 \hline
 
12347
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12348
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12349
 
 
12350
\end{tabular}
 
12351
 
 
12352
\vspace{0.3cm}
 
12353
 
 
12354
 \noindent {\bf Return Type:} 
 
12355
{\tt 
 
12356
VM ref
 
12357
}
 
12358
 
 
12359
 
 
12360
value of the field
 
12361
\vspace{0.3cm}
 
12362
\vspace{0.3cm}
 
12363
\vspace{0.3cm}
 
12364
\subsubsection{RPC name:~get\_VDI}
 
12365
 
 
12366
{\bf Overview:} 
 
12367
Get the VDI field of the given VBD.
 
12368
 
 
12369
 \noindent {\bf Signature:} 
 
12370
\begin{verbatim} (VDI ref) get_VDI (session_id s, VBD ref self)\end{verbatim}
 
12371
 
 
12372
 
 
12373
\noindent{\bf Arguments:}
 
12374
 
 
12375
 
 
12376
\vspace{0.3cm}
 
12377
\begin{tabular}{|c|c|p{7cm}|}
 
12378
 \hline
 
12379
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12380
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12381
 
 
12382
\end{tabular}
 
12383
 
 
12384
\vspace{0.3cm}
 
12385
 
 
12386
 \noindent {\bf Return Type:} 
 
12387
{\tt 
 
12388
VDI ref
 
12389
}
 
12390
 
 
12391
 
 
12392
value of the field
 
12393
\vspace{0.3cm}
 
12394
\vspace{0.3cm}
 
12395
\vspace{0.3cm}
 
12396
\subsubsection{RPC name:~get\_device}
 
12397
 
 
12398
{\bf Overview:} 
 
12399
Get the device field of the given VBD.
 
12400
 
 
12401
 \noindent {\bf Signature:} 
 
12402
\begin{verbatim} string get_device (session_id s, VBD ref self)\end{verbatim}
 
12403
 
 
12404
 
 
12405
\noindent{\bf Arguments:}
 
12406
 
 
12407
 
 
12408
\vspace{0.3cm}
 
12409
\begin{tabular}{|c|c|p{7cm}|}
 
12410
 \hline
 
12411
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12412
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12413
 
 
12414
\end{tabular}
 
12415
 
 
12416
\vspace{0.3cm}
 
12417
 
 
12418
 \noindent {\bf Return Type:} 
 
12419
{\tt 
 
12420
string
 
12421
}
 
12422
 
 
12423
 
 
12424
value of the field
 
12425
\vspace{0.3cm}
 
12426
\vspace{0.3cm}
 
12427
\vspace{0.3cm}
 
12428
\subsubsection{RPC name:~set\_device}
 
12429
 
 
12430
{\bf Overview:} 
 
12431
Set the device field of the given VBD.
 
12432
 
 
12433
 \noindent {\bf Signature:} 
 
12434
\begin{verbatim} void set_device (session_id s, VBD ref self, string value)\end{verbatim}
 
12435
 
 
12436
 
 
12437
\noindent{\bf Arguments:}
 
12438
 
 
12439
 
 
12440
\vspace{0.3cm}
 
12441
\begin{tabular}{|c|c|p{7cm}|}
 
12442
 \hline
 
12443
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12444
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12445
 
 
12446
{\tt string } & value & New value to set \\ \hline 
 
12447
 
 
12448
\end{tabular}
 
12449
 
 
12450
\vspace{0.3cm}
 
12451
 
 
12452
 \noindent {\bf Return Type:} 
 
12453
{\tt 
 
12454
void
 
12455
}
 
12456
 
 
12457
 
 
12458
 
 
12459
\vspace{0.3cm}
 
12460
\vspace{0.3cm}
 
12461
\vspace{0.3cm}
 
12462
\subsubsection{RPC name:~get\_bootable}
 
12463
 
 
12464
{\bf Overview:} 
 
12465
Get the bootable field of the given VBD.
 
12466
 
 
12467
 \noindent {\bf Signature:} 
 
12468
\begin{verbatim} bool get_bootable (session_id s, VBD ref self)\end{verbatim}
 
12469
 
 
12470
 
 
12471
\noindent{\bf Arguments:}
 
12472
 
 
12473
 
 
12474
\vspace{0.3cm}
 
12475
\begin{tabular}{|c|c|p{7cm}|}
 
12476
 \hline
 
12477
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12478
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12479
 
 
12480
\end{tabular}
 
12481
 
 
12482
\vspace{0.3cm}
 
12483
 
 
12484
 \noindent {\bf Return Type:} 
 
12485
{\tt 
 
12486
bool
 
12487
}
 
12488
 
 
12489
 
 
12490
value of the field
 
12491
\vspace{0.3cm}
 
12492
\vspace{0.3cm}
 
12493
\vspace{0.3cm}
 
12494
\subsubsection{RPC name:~set\_bootable}
 
12495
 
 
12496
{\bf Overview:} 
 
12497
Set the bootable field of the given VBD.
 
12498
 
 
12499
 \noindent {\bf Signature:} 
 
12500
\begin{verbatim} void set_bootable (session_id s, VBD ref self, bool value)\end{verbatim}
 
12501
 
 
12502
 
 
12503
\noindent{\bf Arguments:}
 
12504
 
 
12505
 
 
12506
\vspace{0.3cm}
 
12507
\begin{tabular}{|c|c|p{7cm}|}
 
12508
 \hline
 
12509
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12510
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12511
 
 
12512
{\tt bool } & value & New value to set \\ \hline 
 
12513
 
 
12514
\end{tabular}
 
12515
 
 
12516
\vspace{0.3cm}
 
12517
 
 
12518
 \noindent {\bf Return Type:} 
 
12519
{\tt 
 
12520
void
 
12521
}
 
12522
 
 
12523
 
 
12524
 
 
12525
\vspace{0.3cm}
 
12526
\vspace{0.3cm}
 
12527
\vspace{0.3cm}
 
12528
\subsubsection{RPC name:~get\_mode}
 
12529
 
 
12530
{\bf Overview:} 
 
12531
Get the mode field of the given VBD.
 
12532
 
 
12533
 \noindent {\bf Signature:} 
 
12534
\begin{verbatim} (vbd_mode) get_mode (session_id s, VBD ref self)\end{verbatim}
 
12535
 
 
12536
 
 
12537
\noindent{\bf Arguments:}
 
12538
 
 
12539
 
 
12540
\vspace{0.3cm}
 
12541
\begin{tabular}{|c|c|p{7cm}|}
 
12542
 \hline
 
12543
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12544
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12545
 
 
12546
\end{tabular}
 
12547
 
 
12548
\vspace{0.3cm}
 
12549
 
 
12550
 \noindent {\bf Return Type:} 
 
12551
{\tt 
 
12552
vbd\_mode
 
12553
}
 
12554
 
 
12555
 
 
12556
value of the field
 
12557
\vspace{0.3cm}
 
12558
\vspace{0.3cm}
 
12559
\vspace{0.3cm}
 
12560
\subsubsection{RPC name:~set\_mode}
 
12561
 
 
12562
{\bf Overview:} 
 
12563
Set the mode field of the given VBD.
 
12564
 
 
12565
 \noindent {\bf Signature:} 
 
12566
\begin{verbatim} void set_mode (session_id s, VBD ref self, vbd_mode value)\end{verbatim}
 
12567
 
 
12568
 
 
12569
\noindent{\bf Arguments:}
 
12570
 
 
12571
 
 
12572
\vspace{0.3cm}
 
12573
\begin{tabular}{|c|c|p{7cm}|}
 
12574
 \hline
 
12575
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12576
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12577
 
 
12578
{\tt vbd\_mode } & value & New value to set \\ \hline 
 
12579
 
 
12580
\end{tabular}
 
12581
 
 
12582
\vspace{0.3cm}
 
12583
 
 
12584
 \noindent {\bf Return Type:} 
 
12585
{\tt 
 
12586
void
 
12587
}
 
12588
 
 
12589
 
 
12590
 
 
12591
\vspace{0.3cm}
 
12592
\vspace{0.3cm}
 
12593
\vspace{0.3cm}
 
12594
\subsubsection{RPC name:~get\_type}
 
12595
 
 
12596
{\bf Overview:} 
 
12597
Get the type field of the given VBD.
 
12598
 
 
12599
 \noindent {\bf Signature:} 
 
12600
\begin{verbatim} (vbd_type) get_type (session_id s, VBD ref self)\end{verbatim}
 
12601
 
 
12602
 
 
12603
\noindent{\bf Arguments:}
 
12604
 
 
12605
 
 
12606
\vspace{0.3cm}
 
12607
\begin{tabular}{|c|c|p{7cm}|}
 
12608
 \hline
 
12609
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12610
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12611
 
 
12612
\end{tabular}
 
12613
 
 
12614
\vspace{0.3cm}
 
12615
 
 
12616
 \noindent {\bf Return Type:} 
 
12617
{\tt 
 
12618
vbd\_type
 
12619
}
 
12620
 
 
12621
 
 
12622
value of the field
 
12623
\vspace{0.3cm}
 
12624
\vspace{0.3cm}
 
12625
\vspace{0.3cm}
 
12626
\subsubsection{RPC name:~set\_type}
 
12627
 
 
12628
{\bf Overview:} 
 
12629
Set the type field of the given VBD.
 
12630
 
 
12631
 \noindent {\bf Signature:} 
 
12632
\begin{verbatim} void set_type (session_id s, VBD ref self, vbd_type value)\end{verbatim}
 
12633
 
 
12634
 
 
12635
\noindent{\bf Arguments:}
 
12636
 
 
12637
 
 
12638
\vspace{0.3cm}
 
12639
\begin{tabular}{|c|c|p{7cm}|}
 
12640
 \hline
 
12641
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12642
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12643
 
 
12644
{\tt vbd\_type } & value & New value to set \\ \hline 
 
12645
 
 
12646
\end{tabular}
 
12647
 
 
12648
\vspace{0.3cm}
 
12649
 
 
12650
 \noindent {\bf Return Type:} 
 
12651
{\tt 
 
12652
void
 
12653
}
 
12654
 
 
12655
 
 
12656
 
 
12657
\vspace{0.3cm}
 
12658
\vspace{0.3cm}
 
12659
\vspace{0.3cm}
 
12660
\subsubsection{RPC name:~get\_currently\_attached}
 
12661
 
 
12662
{\bf Overview:} 
 
12663
Get the currently\_attached field of the given VBD.
 
12664
 
 
12665
 \noindent {\bf Signature:} 
 
12666
\begin{verbatim} bool get_currently_attached (session_id s, VBD ref self)\end{verbatim}
 
12667
 
 
12668
 
 
12669
\noindent{\bf Arguments:}
 
12670
 
 
12671
 
 
12672
\vspace{0.3cm}
 
12673
\begin{tabular}{|c|c|p{7cm}|}
 
12674
 \hline
 
12675
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12676
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12677
 
 
12678
\end{tabular}
 
12679
 
 
12680
\vspace{0.3cm}
 
12681
 
 
12682
 \noindent {\bf Return Type:} 
 
12683
{\tt 
 
12684
bool
 
12685
}
 
12686
 
 
12687
 
 
12688
value of the field
 
12689
\vspace{0.3cm}
 
12690
\vspace{0.3cm}
 
12691
\vspace{0.3cm}
 
12692
\subsubsection{RPC name:~get\_status\_code}
 
12693
 
 
12694
{\bf Overview:} 
 
12695
Get the status\_code field of the given VBD.
 
12696
 
 
12697
 \noindent {\bf Signature:} 
 
12698
\begin{verbatim} int get_status_code (session_id s, VBD ref self)\end{verbatim}
 
12699
 
 
12700
 
 
12701
\noindent{\bf Arguments:}
 
12702
 
 
12703
 
 
12704
\vspace{0.3cm}
 
12705
\begin{tabular}{|c|c|p{7cm}|}
 
12706
 \hline
 
12707
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12708
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12709
 
 
12710
\end{tabular}
 
12711
 
 
12712
\vspace{0.3cm}
 
12713
 
 
12714
 \noindent {\bf Return Type:} 
 
12715
{\tt 
 
12716
int
 
12717
}
 
12718
 
 
12719
 
 
12720
value of the field
 
12721
\vspace{0.3cm}
 
12722
\vspace{0.3cm}
 
12723
\vspace{0.3cm}
 
12724
\subsubsection{RPC name:~get\_status\_detail}
 
12725
 
 
12726
{\bf Overview:} 
 
12727
Get the status\_detail field of the given VBD.
 
12728
 
 
12729
 \noindent {\bf Signature:} 
 
12730
\begin{verbatim} string get_status_detail (session_id s, VBD ref self)\end{verbatim}
 
12731
 
 
12732
 
 
12733
\noindent{\bf Arguments:}
 
12734
 
 
12735
 
 
12736
\vspace{0.3cm}
 
12737
\begin{tabular}{|c|c|p{7cm}|}
 
12738
 \hline
 
12739
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12740
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12741
 
 
12742
\end{tabular}
 
12743
 
 
12744
\vspace{0.3cm}
 
12745
 
 
12746
 \noindent {\bf Return Type:} 
 
12747
{\tt 
 
12748
string
 
12749
}
 
12750
 
 
12751
 
 
12752
value of the field
 
12753
\vspace{0.3cm}
 
12754
\vspace{0.3cm}
 
12755
\vspace{0.3cm}
 
12756
\subsubsection{RPC name:~get\_runtime\_properties}
 
12757
 
 
12758
{\bf Overview:} 
 
12759
Get the runtime\_properties field of the given VBD.
 
12760
 
 
12761
 \noindent {\bf Signature:} 
 
12762
\begin{verbatim} ((string -> string) Map) get_runtime_properties (session_id s, VBD ref self)\end{verbatim}
 
12763
 
 
12764
 
 
12765
\noindent{\bf Arguments:}
 
12766
 
 
12767
 
 
12768
\vspace{0.3cm}
 
12769
\begin{tabular}{|c|c|p{7cm}|}
 
12770
 \hline
 
12771
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12772
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12773
 
 
12774
\end{tabular}
 
12775
 
 
12776
\vspace{0.3cm}
 
12777
 
 
12778
 \noindent {\bf Return Type:} 
 
12779
{\tt 
 
12780
(string $\rightarrow$ string) Map
 
12781
}
 
12782
 
 
12783
 
 
12784
value of the field
 
12785
\vspace{0.3cm}
 
12786
\vspace{0.3cm}
 
12787
\vspace{0.3cm}
 
12788
\subsubsection{RPC name:~get\_qos\_algorithm\_type}
 
12789
 
 
12790
{\bf Overview:} 
 
12791
Get the qos/algorithm\_type field of the given VBD.
 
12792
 
 
12793
 \noindent {\bf Signature:} 
 
12794
\begin{verbatim} string get_qos_algorithm_type (session_id s, VBD ref self)\end{verbatim}
 
12795
 
 
12796
 
 
12797
\noindent{\bf Arguments:}
 
12798
 
 
12799
 
 
12800
\vspace{0.3cm}
 
12801
\begin{tabular}{|c|c|p{7cm}|}
 
12802
 \hline
 
12803
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12804
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12805
 
 
12806
\end{tabular}
 
12807
 
 
12808
\vspace{0.3cm}
 
12809
 
 
12810
 \noindent {\bf Return Type:} 
 
12811
{\tt 
 
12812
string
 
12813
}
 
12814
 
 
12815
 
 
12816
value of the field
 
12817
\vspace{0.3cm}
 
12818
\vspace{0.3cm}
 
12819
\vspace{0.3cm}
 
12820
\subsubsection{RPC name:~set\_qos\_algorithm\_type}
 
12821
 
 
12822
{\bf Overview:} 
 
12823
Set the qos/algorithm\_type field of the given VBD.
 
12824
 
 
12825
 \noindent {\bf Signature:} 
 
12826
\begin{verbatim} void set_qos_algorithm_type (session_id s, VBD ref self, string value)\end{verbatim}
 
12827
 
 
12828
 
 
12829
\noindent{\bf Arguments:}
 
12830
 
 
12831
 
 
12832
\vspace{0.3cm}
 
12833
\begin{tabular}{|c|c|p{7cm}|}
 
12834
 \hline
 
12835
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12836
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12837
 
 
12838
{\tt string } & value & New value to set \\ \hline 
 
12839
 
 
12840
\end{tabular}
 
12841
 
 
12842
\vspace{0.3cm}
 
12843
 
 
12844
 \noindent {\bf Return Type:} 
 
12845
{\tt 
 
12846
void
 
12847
}
 
12848
 
 
12849
 
 
12850
 
 
12851
\vspace{0.3cm}
 
12852
\vspace{0.3cm}
 
12853
\vspace{0.3cm}
 
12854
\subsubsection{RPC name:~get\_qos\_algorithm\_params}
 
12855
 
 
12856
{\bf Overview:} 
 
12857
Get the qos/algorithm\_params field of the given VBD.
 
12858
 
 
12859
 \noindent {\bf Signature:} 
 
12860
\begin{verbatim} ((string -> string) Map) get_qos_algorithm_params (session_id s, VBD ref self)\end{verbatim}
 
12861
 
 
12862
 
 
12863
\noindent{\bf Arguments:}
 
12864
 
 
12865
 
 
12866
\vspace{0.3cm}
 
12867
\begin{tabular}{|c|c|p{7cm}|}
 
12868
 \hline
 
12869
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12870
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12871
 
 
12872
\end{tabular}
 
12873
 
 
12874
\vspace{0.3cm}
 
12875
 
 
12876
 \noindent {\bf Return Type:} 
 
12877
{\tt 
 
12878
(string $\rightarrow$ string) Map
 
12879
}
 
12880
 
 
12881
 
 
12882
value of the field
 
12883
\vspace{0.3cm}
 
12884
\vspace{0.3cm}
 
12885
\vspace{0.3cm}
 
12886
\subsubsection{RPC name:~set\_qos\_algorithm\_params}
 
12887
 
 
12888
{\bf Overview:} 
 
12889
Set the qos/algorithm\_params field of the given VBD.
 
12890
 
 
12891
 \noindent {\bf Signature:} 
 
12892
\begin{verbatim} void set_qos_algorithm_params (session_id s, VBD ref self, (string -> string) Map value)\end{verbatim}
 
12893
 
 
12894
 
 
12895
\noindent{\bf Arguments:}
 
12896
 
 
12897
 
 
12898
\vspace{0.3cm}
 
12899
\begin{tabular}{|c|c|p{7cm}|}
 
12900
 \hline
 
12901
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12902
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12903
 
 
12904
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
12905
 
 
12906
\end{tabular}
 
12907
 
 
12908
\vspace{0.3cm}
 
12909
 
 
12910
 \noindent {\bf Return Type:} 
 
12911
{\tt 
 
12912
void
 
12913
}
 
12914
 
 
12915
 
 
12916
 
 
12917
\vspace{0.3cm}
 
12918
\vspace{0.3cm}
 
12919
\vspace{0.3cm}
 
12920
\subsubsection{RPC name:~add\_to\_qos\_algorithm\_params}
 
12921
 
 
12922
{\bf Overview:} 
 
12923
Add the given key-value pair to the qos/algorithm\_params field of the
 
12924
given VBD.
 
12925
 
 
12926
 \noindent {\bf Signature:} 
 
12927
\begin{verbatim} void add_to_qos_algorithm_params (session_id s, VBD ref self, string key, string value)\end{verbatim}
 
12928
 
 
12929
 
 
12930
\noindent{\bf Arguments:}
 
12931
 
 
12932
 
 
12933
\vspace{0.3cm}
 
12934
\begin{tabular}{|c|c|p{7cm}|}
 
12935
 \hline
 
12936
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12937
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12938
 
 
12939
{\tt string } & key & Key to add \\ \hline 
 
12940
 
 
12941
{\tt string } & value & Value to add \\ \hline 
 
12942
 
 
12943
\end{tabular}
 
12944
 
 
12945
\vspace{0.3cm}
 
12946
 
 
12947
 \noindent {\bf Return Type:} 
 
12948
{\tt 
 
12949
void
 
12950
}
 
12951
 
 
12952
 
 
12953
 
 
12954
\vspace{0.3cm}
 
12955
\vspace{0.3cm}
 
12956
\vspace{0.3cm}
 
12957
\subsubsection{RPC name:~remove\_from\_qos\_algorithm\_params}
 
12958
 
 
12959
{\bf Overview:} 
 
12960
Remove the given key and its corresponding value from the
 
12961
qos/algorithm\_params field of the given VBD.  If the key is not in that
 
12962
Map, then do nothing.
 
12963
 
 
12964
 \noindent {\bf Signature:} 
 
12965
\begin{verbatim} void remove_from_qos_algorithm_params (session_id s, VBD ref self, string key)\end{verbatim}
 
12966
 
 
12967
 
 
12968
\noindent{\bf Arguments:}
 
12969
 
 
12970
 
 
12971
\vspace{0.3cm}
 
12972
\begin{tabular}{|c|c|p{7cm}|}
 
12973
 \hline
 
12974
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
12975
{\tt VBD ref } & self & reference to the object \\ \hline 
 
12976
 
 
12977
{\tt string } & key & Key to remove \\ \hline 
 
12978
 
 
12979
\end{tabular}
 
12980
 
 
12981
\vspace{0.3cm}
 
12982
 
 
12983
 \noindent {\bf Return Type:} 
 
12984
{\tt 
 
12985
void
 
12986
}
 
12987
 
 
12988
 
 
12989
 
 
12990
\vspace{0.3cm}
 
12991
\vspace{0.3cm}
 
12992
\vspace{0.3cm}
 
12993
\subsubsection{RPC name:~get\_qos\_supported\_algorithms}
 
12994
 
 
12995
{\bf Overview:} 
 
12996
Get the qos/supported\_algorithms field of the given VBD.
 
12997
 
 
12998
 \noindent {\bf Signature:} 
 
12999
\begin{verbatim} (string Set) get_qos_supported_algorithms (session_id s, VBD ref self)\end{verbatim}
 
13000
 
 
13001
 
 
13002
\noindent{\bf Arguments:}
 
13003
 
 
13004
 
 
13005
\vspace{0.3cm}
 
13006
\begin{tabular}{|c|c|p{7cm}|}
 
13007
 \hline
 
13008
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13009
{\tt VBD ref } & self & reference to the object \\ \hline 
 
13010
 
 
13011
\end{tabular}
 
13012
 
 
13013
\vspace{0.3cm}
 
13014
 
 
13015
 \noindent {\bf Return Type:} 
 
13016
{\tt 
 
13017
string Set
 
13018
}
 
13019
 
 
13020
 
 
13021
value of the field
 
13022
\vspace{0.3cm}
 
13023
\vspace{0.3cm}
 
13024
\vspace{0.3cm}
 
13025
\subsubsection{RPC name:~get\_metrics}
 
13026
 
 
13027
{\bf Overview:} 
 
13028
Get the metrics field of the given VBD.
 
13029
 
 
13030
 \noindent {\bf Signature:} 
 
13031
\begin{verbatim} (VBD_metrics ref) get_metrics (session_id s, VBD ref self)\end{verbatim}
 
13032
 
 
13033
 
 
13034
\noindent{\bf Arguments:}
 
13035
 
 
13036
 
 
13037
\vspace{0.3cm}
 
13038
\begin{tabular}{|c|c|p{7cm}|}
 
13039
 \hline
 
13040
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13041
{\tt VBD ref } & self & reference to the object \\ \hline 
 
13042
 
 
13043
\end{tabular}
 
13044
 
 
13045
\vspace{0.3cm}
 
13046
 
 
13047
 \noindent {\bf Return Type:} 
 
13048
{\tt 
 
13049
VBD\_metrics ref
 
13050
}
 
13051
 
 
13052
 
 
13053
value of the field
 
13054
\vspace{0.3cm}
 
13055
\vspace{0.3cm}
 
13056
\vspace{0.3cm}
 
13057
\subsubsection{RPC name:~create}
 
13058
 
 
13059
{\bf Overview:} 
 
13060
Create a new VBD instance, and return its handle.
 
13061
 
 
13062
 \noindent {\bf Signature:} 
 
13063
\begin{verbatim} (VBD ref) create (session_id s, VBD record args)\end{verbatim}
 
13064
 
 
13065
 
 
13066
\noindent{\bf Arguments:}
 
13067
 
 
13068
 
 
13069
\vspace{0.3cm}
 
13070
\begin{tabular}{|c|c|p{7cm}|}
 
13071
 \hline
 
13072
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13073
{\tt VBD record } & args & All constructor arguments \\ \hline 
 
13074
 
 
13075
\end{tabular}
 
13076
 
 
13077
\vspace{0.3cm}
 
13078
 
 
13079
 \noindent {\bf Return Type:} 
 
13080
{\tt 
 
13081
VBD ref
 
13082
}
 
13083
 
 
13084
 
 
13085
reference to the newly created object
 
13086
\vspace{0.3cm}
 
13087
\vspace{0.3cm}
 
13088
\vspace{0.3cm}
 
13089
\subsubsection{RPC name:~destroy}
 
13090
 
 
13091
{\bf Overview:} 
 
13092
Destroy the specified VBD instance.
 
13093
 
 
13094
 \noindent {\bf Signature:} 
 
13095
\begin{verbatim} void destroy (session_id s, VBD ref self)\end{verbatim}
 
13096
 
 
13097
 
 
13098
\noindent{\bf Arguments:}
 
13099
 
 
13100
 
 
13101
\vspace{0.3cm}
 
13102
\begin{tabular}{|c|c|p{7cm}|}
 
13103
 \hline
 
13104
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13105
{\tt VBD ref } & self & reference to the object \\ \hline 
 
13106
 
 
13107
\end{tabular}
 
13108
 
 
13109
\vspace{0.3cm}
 
13110
 
 
13111
 \noindent {\bf Return Type:} 
 
13112
{\tt 
 
13113
void
 
13114
}
 
13115
 
 
13116
 
 
13117
 
 
13118
\vspace{0.3cm}
 
13119
\vspace{0.3cm}
 
13120
\vspace{0.3cm}
 
13121
\subsubsection{RPC name:~get\_by\_uuid}
 
13122
 
 
13123
{\bf Overview:} 
 
13124
Get a reference to the VBD instance with the specified UUID.
 
13125
 
 
13126
 \noindent {\bf Signature:} 
 
13127
\begin{verbatim} (VBD ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
13128
 
 
13129
 
 
13130
\noindent{\bf Arguments:}
 
13131
 
 
13132
 
 
13133
\vspace{0.3cm}
 
13134
\begin{tabular}{|c|c|p{7cm}|}
 
13135
 \hline
 
13136
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13137
{\tt string } & uuid & UUID of object to return \\ \hline 
 
13138
 
 
13139
\end{tabular}
 
13140
 
 
13141
\vspace{0.3cm}
 
13142
 
 
13143
 \noindent {\bf Return Type:} 
 
13144
{\tt 
 
13145
VBD ref
 
13146
}
 
13147
 
 
13148
 
 
13149
reference to the object
 
13150
\vspace{0.3cm}
 
13151
\vspace{0.3cm}
 
13152
\vspace{0.3cm}
 
13153
\subsubsection{RPC name:~get\_record}
 
13154
 
 
13155
{\bf Overview:} 
 
13156
Get a record containing the current state of the given VBD.
 
13157
 
 
13158
 \noindent {\bf Signature:} 
 
13159
\begin{verbatim} (VBD record) get_record (session_id s, VBD ref self)\end{verbatim}
 
13160
 
 
13161
 
 
13162
\noindent{\bf Arguments:}
 
13163
 
 
13164
 
 
13165
\vspace{0.3cm}
 
13166
\begin{tabular}{|c|c|p{7cm}|}
 
13167
 \hline
 
13168
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13169
{\tt VBD ref } & self & reference to the object \\ \hline 
 
13170
 
 
13171
\end{tabular}
 
13172
 
 
13173
\vspace{0.3cm}
 
13174
 
 
13175
 \noindent {\bf Return Type:} 
 
13176
{\tt 
 
13177
VBD record
 
13178
}
 
13179
 
 
13180
 
 
13181
all fields from the object
 
13182
\vspace{0.3cm}
 
13183
\vspace{0.3cm}
 
13184
\vspace{0.3cm}
 
13185
 
 
13186
\vspace{1cm}
 
13187
\newpage
 
13188
\section{Class: VBD\_metrics}
 
13189
\subsection{Fields for class: VBD\_metrics}
 
13190
\begin{longtable}{|lllp{0.38\textwidth}|}
 
13191
\hline
 
13192
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VBD\_metrics} \\
 
13193
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em
 
13194
The metrics associated with a virtual block device.}} \\
 
13195
\hline
 
13196
Quals & Field & Type & Description \\
 
13197
\hline
 
13198
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
13199
$\mathit{RO}_\mathit{run}$ &  {\tt io/read\_kbs} & float & Read bandwidth (KiB/s) \\
 
13200
$\mathit{RO}_\mathit{run}$ &  {\tt io/write\_kbs} & float & Write bandwidth (KiB/s) \\
 
13201
$\mathit{RO}_\mathit{run}$ &  {\tt last\_updated} & datetime & Time at which this information was last updated \\
 
13202
\hline
 
13203
\end{longtable}
 
13204
\subsection{RPCs associated with class: VBD\_metrics}
 
13205
\subsubsection{RPC name:~get\_all}
 
13206
 
 
13207
{\bf Overview:} 
 
13208
Return a list of all the VBD\_metrics instances known to the system.
 
13209
 
 
13210
 \noindent {\bf Signature:} 
 
13211
\begin{verbatim} ((VBD_metrics ref) Set) get_all (session_id s)\end{verbatim}
 
13212
 
 
13213
 
 
13214
\vspace{0.3cm}
 
13215
 
 
13216
 \noindent {\bf Return Type:} 
 
13217
{\tt 
 
13218
(VBD\_metrics ref) Set
 
13219
}
 
13220
 
 
13221
 
 
13222
references to all objects
 
13223
\vspace{0.3cm}
 
13224
\vspace{0.3cm}
 
13225
\vspace{0.3cm}
 
13226
\subsubsection{RPC name:~get\_uuid}
 
13227
 
 
13228
{\bf Overview:} 
 
13229
Get the uuid field of the given VBD\_metrics.
 
13230
 
 
13231
 \noindent {\bf Signature:} 
 
13232
\begin{verbatim} string get_uuid (session_id s, VBD_metrics ref self)\end{verbatim}
 
13233
 
 
13234
 
 
13235
\noindent{\bf Arguments:}
 
13236
 
 
13237
 
 
13238
\vspace{0.3cm}
 
13239
\begin{tabular}{|c|c|p{7cm}|}
 
13240
 \hline
 
13241
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13242
{\tt VBD\_metrics ref } & self & reference to the object \\ \hline 
 
13243
 
 
13244
\end{tabular}
 
13245
 
 
13246
\vspace{0.3cm}
 
13247
 
 
13248
 \noindent {\bf Return Type:} 
 
13249
{\tt 
 
13250
string
 
13251
}
 
13252
 
 
13253
 
 
13254
value of the field
 
13255
\vspace{0.3cm}
 
13256
\vspace{0.3cm}
 
13257
\vspace{0.3cm}
 
13258
\subsubsection{RPC name:~get\_io\_read\_kbs}
 
13259
 
 
13260
{\bf Overview:} 
 
13261
Get the io/read\_kbs field of the given VBD\_metrics.
 
13262
 
 
13263
 \noindent {\bf Signature:} 
 
13264
\begin{verbatim} float get_io_read_kbs (session_id s, VBD_metrics ref self)\end{verbatim}
 
13265
 
 
13266
 
 
13267
\noindent{\bf Arguments:}
 
13268
 
 
13269
 
 
13270
\vspace{0.3cm}
 
13271
\begin{tabular}{|c|c|p{7cm}|}
 
13272
 \hline
 
13273
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13274
{\tt VBD\_metrics ref } & self & reference to the object \\ \hline 
 
13275
 
 
13276
\end{tabular}
 
13277
 
 
13278
\vspace{0.3cm}
 
13279
 
 
13280
 \noindent {\bf Return Type:} 
 
13281
{\tt 
 
13282
float
 
13283
}
 
13284
 
 
13285
 
 
13286
value of the field
 
13287
\vspace{0.3cm}
 
13288
\vspace{0.3cm}
 
13289
\vspace{0.3cm}
 
13290
\subsubsection{RPC name:~get\_io\_write\_kbs}
 
13291
 
 
13292
{\bf Overview:} 
 
13293
Get the io/write\_kbs field of the given VBD\_metrics.
 
13294
 
 
13295
 \noindent {\bf Signature:} 
 
13296
\begin{verbatim} float get_io_write_kbs (session_id s, VBD_metrics ref self)\end{verbatim}
 
13297
 
 
13298
 
 
13299
\noindent{\bf Arguments:}
 
13300
 
 
13301
 
 
13302
\vspace{0.3cm}
 
13303
\begin{tabular}{|c|c|p{7cm}|}
 
13304
 \hline
 
13305
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13306
{\tt VBD\_metrics ref } & self & reference to the object \\ \hline 
 
13307
 
 
13308
\end{tabular}
 
13309
 
 
13310
\vspace{0.3cm}
 
13311
 
 
13312
 \noindent {\bf Return Type:} 
 
13313
{\tt 
 
13314
float
 
13315
}
 
13316
 
 
13317
 
 
13318
value of the field
 
13319
\vspace{0.3cm}
 
13320
\vspace{0.3cm}
 
13321
\vspace{0.3cm}
 
13322
\subsubsection{RPC name:~get\_last\_updated}
 
13323
 
 
13324
{\bf Overview:} 
 
13325
Get the last\_updated field of the given VBD\_metrics.
 
13326
 
 
13327
 \noindent {\bf Signature:} 
 
13328
\begin{verbatim} datetime get_last_updated (session_id s, VBD_metrics ref self)\end{verbatim}
 
13329
 
 
13330
 
 
13331
\noindent{\bf Arguments:}
 
13332
 
 
13333
 
 
13334
\vspace{0.3cm}
 
13335
\begin{tabular}{|c|c|p{7cm}|}
 
13336
 \hline
 
13337
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13338
{\tt VBD\_metrics ref } & self & reference to the object \\ \hline 
 
13339
 
 
13340
\end{tabular}
 
13341
 
 
13342
\vspace{0.3cm}
 
13343
 
 
13344
 \noindent {\bf Return Type:} 
 
13345
{\tt 
 
13346
datetime
 
13347
}
 
13348
 
 
13349
 
 
13350
value of the field
 
13351
\vspace{0.3cm}
 
13352
\vspace{0.3cm}
 
13353
\vspace{0.3cm}
 
13354
\subsubsection{RPC name:~get\_by\_uuid}
 
13355
 
 
13356
{\bf Overview:} 
 
13357
Get a reference to the VBD\_metrics instance with the specified UUID.
 
13358
 
 
13359
 \noindent {\bf Signature:} 
 
13360
\begin{verbatim} (VBD_metrics ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
13361
 
 
13362
 
 
13363
\noindent{\bf Arguments:}
 
13364
 
 
13365
 
 
13366
\vspace{0.3cm}
 
13367
\begin{tabular}{|c|c|p{7cm}|}
 
13368
 \hline
 
13369
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13370
{\tt string } & uuid & UUID of object to return \\ \hline 
 
13371
 
 
13372
\end{tabular}
 
13373
 
 
13374
\vspace{0.3cm}
 
13375
 
 
13376
 \noindent {\bf Return Type:} 
 
13377
{\tt 
 
13378
VBD\_metrics ref
 
13379
}
 
13380
 
 
13381
 
 
13382
reference to the object
 
13383
\vspace{0.3cm}
 
13384
\vspace{0.3cm}
 
13385
\vspace{0.3cm}
 
13386
\subsubsection{RPC name:~get\_record}
 
13387
 
 
13388
{\bf Overview:} 
 
13389
Get a record containing the current state of the given VBD\_metrics.
 
13390
 
 
13391
 \noindent {\bf Signature:} 
 
13392
\begin{verbatim} (VBD_metrics record) get_record (session_id s, VBD_metrics ref self)\end{verbatim}
 
13393
 
 
13394
 
 
13395
\noindent{\bf Arguments:}
 
13396
 
 
13397
 
 
13398
\vspace{0.3cm}
 
13399
\begin{tabular}{|c|c|p{7cm}|}
 
13400
 \hline
 
13401
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13402
{\tt VBD\_metrics ref } & self & reference to the object \\ \hline 
 
13403
 
 
13404
\end{tabular}
 
13405
 
 
13406
\vspace{0.3cm}
 
13407
 
 
13408
 \noindent {\bf Return Type:} 
 
13409
{\tt 
 
13410
VBD\_metrics record
 
13411
}
 
13412
 
 
13413
 
 
13414
all fields from the object
 
13415
\vspace{0.3cm}
 
13416
\vspace{0.3cm}
 
13417
\vspace{0.3cm}
 
13418
 
 
13419
\vspace{1cm}
 
13420
\newpage
 
13421
\section{Class: PBD}
 
13422
\subsection{Fields for class: PBD}
 
13423
\begin{longtable}{|lllp{0.38\textwidth}|}
 
13424
\hline
 
13425
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf PBD} \\
 
13426
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em
 
13427
The physical block devices through which hosts access SRs.}} \\
 
13428
\hline
 
13429
Quals & Field & Type & Description \\
 
13430
\hline
 
13431
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
13432
$\mathit{RO}_\mathit{ins}$ &  {\tt host} & host ref & physical machine on which the pbd is available \\
 
13433
$\mathit{RO}_\mathit{ins}$ &  {\tt SR} & SR ref & the storage repository that the pbd realises \\
 
13434
$\mathit{RO}_\mathit{ins}$ &  {\tt device\_config} & (string $\rightarrow$ string) Map & a config string to string map that is provided to the host's SR-backend-driver \\
 
13435
$\mathit{RO}_\mathit{run}$ &  {\tt currently\_attached} & bool & is the SR currently attached on this host? \\
 
13436
\hline
 
13437
\end{longtable}
 
13438
\subsection{RPCs associated with class: PBD}
 
13439
\subsubsection{RPC name:~get\_all}
 
13440
 
 
13441
{\bf Overview:} 
 
13442
Return a list of all the PBDs known to the system.
 
13443
 
 
13444
 \noindent {\bf Signature:} 
 
13445
\begin{verbatim} ((PBD ref) Set) get_all (session_id s)\end{verbatim}
 
13446
 
 
13447
 
 
13448
\vspace{0.3cm}
 
13449
 
 
13450
 \noindent {\bf Return Type:} 
 
13451
{\tt 
 
13452
(PBD ref) Set
 
13453
}
 
13454
 
 
13455
 
 
13456
references to all objects
 
13457
\vspace{0.3cm}
 
13458
\vspace{0.3cm}
 
13459
\vspace{0.3cm}
 
13460
\subsubsection{RPC name:~get\_uuid}
 
13461
 
 
13462
{\bf Overview:} 
 
13463
Get the uuid field of the given PBD.
 
13464
 
 
13465
 \noindent {\bf Signature:} 
 
13466
\begin{verbatim} string get_uuid (session_id s, PBD ref self)\end{verbatim}
 
13467
 
 
13468
 
 
13469
\noindent{\bf Arguments:}
 
13470
 
 
13471
 
 
13472
\vspace{0.3cm}
 
13473
\begin{tabular}{|c|c|p{7cm}|}
 
13474
 \hline
 
13475
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13476
{\tt PBD ref } & self & reference to the object \\ \hline 
 
13477
 
 
13478
\end{tabular}
 
13479
 
 
13480
\vspace{0.3cm}
 
13481
 
 
13482
 \noindent {\bf Return Type:} 
 
13483
{\tt 
 
13484
string
 
13485
}
 
13486
 
 
13487
 
 
13488
value of the field
 
13489
\vspace{0.3cm}
 
13490
\vspace{0.3cm}
 
13491
\vspace{0.3cm}
 
13492
\subsubsection{RPC name:~get\_host}
 
13493
 
 
13494
{\bf Overview:} 
 
13495
Get the host field of the given PBD.
 
13496
 
 
13497
 \noindent {\bf Signature:} 
 
13498
\begin{verbatim} (host ref) get_host (session_id s, PBD ref self)\end{verbatim}
 
13499
 
 
13500
 
 
13501
\noindent{\bf Arguments:}
 
13502
 
 
13503
 
 
13504
\vspace{0.3cm}
 
13505
\begin{tabular}{|c|c|p{7cm}|}
 
13506
 \hline
 
13507
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13508
{\tt PBD ref } & self & reference to the object \\ \hline 
 
13509
 
 
13510
\end{tabular}
 
13511
 
 
13512
\vspace{0.3cm}
 
13513
 
 
13514
 \noindent {\bf Return Type:} 
 
13515
{\tt 
 
13516
host ref
 
13517
}
 
13518
 
 
13519
 
 
13520
value of the field
 
13521
\vspace{0.3cm}
 
13522
\vspace{0.3cm}
 
13523
\vspace{0.3cm}
 
13524
\subsubsection{RPC name:~get\_SR}
 
13525
 
 
13526
{\bf Overview:} 
 
13527
Get the SR field of the given PBD.
 
13528
 
 
13529
 \noindent {\bf Signature:} 
 
13530
\begin{verbatim} (SR ref) get_SR (session_id s, PBD ref self)\end{verbatim}
 
13531
 
 
13532
 
 
13533
\noindent{\bf Arguments:}
 
13534
 
 
13535
 
 
13536
\vspace{0.3cm}
 
13537
\begin{tabular}{|c|c|p{7cm}|}
 
13538
 \hline
 
13539
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13540
{\tt PBD ref } & self & reference to the object \\ \hline 
 
13541
 
 
13542
\end{tabular}
 
13543
 
 
13544
\vspace{0.3cm}
 
13545
 
 
13546
 \noindent {\bf Return Type:} 
 
13547
{\tt 
 
13548
SR ref
 
13549
}
 
13550
 
 
13551
 
 
13552
value of the field
 
13553
\vspace{0.3cm}
 
13554
\vspace{0.3cm}
 
13555
\vspace{0.3cm}
 
13556
\subsubsection{RPC name:~get\_device\_config}
 
13557
 
 
13558
{\bf Overview:} 
 
13559
Get the device\_config field of the given PBD.
 
13560
 
 
13561
 \noindent {\bf Signature:} 
 
13562
\begin{verbatim} ((string -> string) Map) get_device_config (session_id s, PBD ref self)\end{verbatim}
 
13563
 
 
13564
 
 
13565
\noindent{\bf Arguments:}
 
13566
 
 
13567
 
 
13568
\vspace{0.3cm}
 
13569
\begin{tabular}{|c|c|p{7cm}|}
 
13570
 \hline
 
13571
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13572
{\tt PBD ref } & self & reference to the object \\ \hline 
 
13573
 
 
13574
\end{tabular}
 
13575
 
 
13576
\vspace{0.3cm}
 
13577
 
 
13578
 \noindent {\bf Return Type:} 
 
13579
{\tt 
 
13580
(string $\rightarrow$ string) Map
 
13581
}
 
13582
 
 
13583
 
 
13584
value of the field
 
13585
\vspace{0.3cm}
 
13586
\vspace{0.3cm}
 
13587
\vspace{0.3cm}
 
13588
\subsubsection{RPC name:~get\_currently\_attached}
 
13589
 
 
13590
{\bf Overview:} 
 
13591
Get the currently\_attached field of the given PBD.
 
13592
 
 
13593
 \noindent {\bf Signature:} 
 
13594
\begin{verbatim} bool get_currently_attached (session_id s, PBD ref self)\end{verbatim}
 
13595
 
 
13596
 
 
13597
\noindent{\bf Arguments:}
 
13598
 
 
13599
 
 
13600
\vspace{0.3cm}
 
13601
\begin{tabular}{|c|c|p{7cm}|}
 
13602
 \hline
 
13603
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13604
{\tt PBD ref } & self & reference to the object \\ \hline 
 
13605
 
 
13606
\end{tabular}
 
13607
 
 
13608
\vspace{0.3cm}
 
13609
 
 
13610
 \noindent {\bf Return Type:} 
 
13611
{\tt 
 
13612
bool
 
13613
}
 
13614
 
 
13615
 
 
13616
value of the field
 
13617
\vspace{0.3cm}
 
13618
\vspace{0.3cm}
 
13619
\vspace{0.3cm}
 
13620
\subsubsection{RPC name:~create}
 
13621
 
 
13622
{\bf Overview:} 
 
13623
Create a new PBD instance, and return its handle.
 
13624
 
 
13625
 \noindent {\bf Signature:} 
 
13626
\begin{verbatim} (PBD ref) create (session_id s, PBD record args)\end{verbatim}
 
13627
 
 
13628
 
 
13629
\noindent{\bf Arguments:}
 
13630
 
 
13631
 
 
13632
\vspace{0.3cm}
 
13633
\begin{tabular}{|c|c|p{7cm}|}
 
13634
 \hline
 
13635
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13636
{\tt PBD record } & args & All constructor arguments \\ \hline 
 
13637
 
 
13638
\end{tabular}
 
13639
 
 
13640
\vspace{0.3cm}
 
13641
 
 
13642
 \noindent {\bf Return Type:} 
 
13643
{\tt 
 
13644
PBD ref
 
13645
}
 
13646
 
 
13647
 
 
13648
reference to the newly created object
 
13649
\vspace{0.3cm}
 
13650
\vspace{0.3cm}
 
13651
\vspace{0.3cm}
 
13652
\subsubsection{RPC name:~destroy}
 
13653
 
 
13654
{\bf Overview:} 
 
13655
Destroy the specified PBD instance.
 
13656
 
 
13657
 \noindent {\bf Signature:} 
 
13658
\begin{verbatim} void destroy (session_id s, PBD ref self)\end{verbatim}
 
13659
 
 
13660
 
 
13661
\noindent{\bf Arguments:}
 
13662
 
 
13663
 
 
13664
\vspace{0.3cm}
 
13665
\begin{tabular}{|c|c|p{7cm}|}
 
13666
 \hline
 
13667
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13668
{\tt PBD ref } & self & reference to the object \\ \hline 
 
13669
 
 
13670
\end{tabular}
 
13671
 
 
13672
\vspace{0.3cm}
 
13673
 
 
13674
 \noindent {\bf Return Type:} 
 
13675
{\tt 
 
13676
void
 
13677
}
 
13678
 
 
13679
 
 
13680
 
 
13681
\vspace{0.3cm}
 
13682
\vspace{0.3cm}
 
13683
\vspace{0.3cm}
 
13684
\subsubsection{RPC name:~get\_by\_uuid}
 
13685
 
 
13686
{\bf Overview:} 
 
13687
Get a reference to the PBD instance with the specified UUID.
 
13688
 
 
13689
 \noindent {\bf Signature:} 
 
13690
\begin{verbatim} (PBD ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
13691
 
 
13692
 
 
13693
\noindent{\bf Arguments:}
 
13694
 
 
13695
 
 
13696
\vspace{0.3cm}
 
13697
\begin{tabular}{|c|c|p{7cm}|}
 
13698
 \hline
 
13699
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13700
{\tt string } & uuid & UUID of object to return \\ \hline 
 
13701
 
 
13702
\end{tabular}
 
13703
 
 
13704
\vspace{0.3cm}
 
13705
 
 
13706
 \noindent {\bf Return Type:} 
 
13707
{\tt 
 
13708
PBD ref
 
13709
}
 
13710
 
 
13711
 
 
13712
reference to the object
 
13713
\vspace{0.3cm}
 
13714
\vspace{0.3cm}
 
13715
\vspace{0.3cm}
 
13716
\subsubsection{RPC name:~get\_record}
 
13717
 
 
13718
{\bf Overview:} 
 
13719
Get a record containing the current state of the given PBD.
 
13720
 
 
13721
 \noindent {\bf Signature:} 
 
13722
\begin{verbatim} (PBD record) get_record (session_id s, PBD ref self)\end{verbatim}
 
13723
 
 
13724
 
 
13725
\noindent{\bf Arguments:}
 
13726
 
 
13727
 
 
13728
\vspace{0.3cm}
 
13729
\begin{tabular}{|c|c|p{7cm}|}
 
13730
 \hline
 
13731
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13732
{\tt PBD ref } & self & reference to the object \\ \hline 
 
13733
 
 
13734
\end{tabular}
 
13735
 
 
13736
\vspace{0.3cm}
 
13737
 
 
13738
 \noindent {\bf Return Type:} 
 
13739
{\tt 
 
13740
PBD record
 
13741
}
 
13742
 
 
13743
 
 
13744
all fields from the object
 
13745
\vspace{0.3cm}
 
13746
\vspace{0.3cm}
 
13747
\vspace{0.3cm}
 
13748
 
 
13749
\vspace{1cm}
 
13750
\newpage
 
13751
\section{Class: crashdump}
 
13752
\subsection{Fields for class: crashdump}
 
13753
\begin{longtable}{|lllp{0.38\textwidth}|}
 
13754
\hline
 
13755
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf crashdump} \\
 
13756
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
13757
VM crashdump.}} \\
 
13758
\hline
 
13759
Quals & Field & Type & Description \\
 
13760
\hline
 
13761
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
13762
$\mathit{RO}_\mathit{ins}$ &  {\tt VM} & VM ref & the virtual machine \\
 
13763
$\mathit{RO}_\mathit{ins}$ &  {\tt VDI} & VDI ref & the virtual disk \\
 
13764
\hline
 
13765
\end{longtable}
 
13766
\subsection{RPCs associated with class: crashdump}
 
13767
\subsubsection{RPC name:~destroy}
 
13768
 
 
13769
{\bf Overview:} 
 
13770
Destroy the specified crashdump.
 
13771
 
 
13772
 \noindent {\bf Signature:} 
 
13773
\begin{verbatim} void destroy (session_id s, crashdump ref self)\end{verbatim}
 
13774
 
 
13775
 
 
13776
\noindent{\bf Arguments:}
 
13777
 
 
13778
 
 
13779
\vspace{0.3cm}
 
13780
\begin{tabular}{|c|c|p{7cm}|}
 
13781
 \hline
 
13782
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13783
{\tt crashdump ref } & self & The crashdump to destroy \\ \hline 
 
13784
 
 
13785
\end{tabular}
 
13786
 
 
13787
\vspace{0.3cm}
 
13788
 
 
13789
 \noindent {\bf Return Type:} 
 
13790
{\tt 
 
13791
void
 
13792
}
 
13793
 
 
13794
 
 
13795
 
 
13796
\vspace{0.3cm}
 
13797
\vspace{0.3cm}
 
13798
\vspace{0.3cm}
 
13799
\subsubsection{RPC name:~get\_all}
 
13800
 
 
13801
{\bf Overview:} 
 
13802
Return a list of all the crashdumps known to the system.
 
13803
 
 
13804
 \noindent {\bf Signature:} 
 
13805
\begin{verbatim} ((crashdump ref) Set) get_all (session_id s)\end{verbatim}
 
13806
 
 
13807
 
 
13808
\vspace{0.3cm}
 
13809
 
 
13810
 \noindent {\bf Return Type:} 
 
13811
{\tt 
 
13812
(crashdump ref) Set
 
13813
}
 
13814
 
 
13815
 
 
13816
references to all objects
 
13817
\vspace{0.3cm}
 
13818
\vspace{0.3cm}
 
13819
\vspace{0.3cm}
 
13820
\subsubsection{RPC name:~get\_uuid}
 
13821
 
 
13822
{\bf Overview:} 
 
13823
Get the uuid field of the given crashdump.
 
13824
 
 
13825
 \noindent {\bf Signature:} 
 
13826
\begin{verbatim} string get_uuid (session_id s, crashdump ref self)\end{verbatim}
 
13827
 
 
13828
 
 
13829
\noindent{\bf Arguments:}
 
13830
 
 
13831
 
 
13832
\vspace{0.3cm}
 
13833
\begin{tabular}{|c|c|p{7cm}|}
 
13834
 \hline
 
13835
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13836
{\tt crashdump ref } & self & reference to the object \\ \hline 
 
13837
 
 
13838
\end{tabular}
 
13839
 
 
13840
\vspace{0.3cm}
 
13841
 
 
13842
 \noindent {\bf Return Type:} 
 
13843
{\tt 
 
13844
string
 
13845
}
 
13846
 
 
13847
 
 
13848
value of the field
 
13849
\vspace{0.3cm}
 
13850
\vspace{0.3cm}
 
13851
\vspace{0.3cm}
 
13852
\subsubsection{RPC name:~get\_VM}
 
13853
 
 
13854
{\bf Overview:} 
 
13855
Get the VM field of the given crashdump.
 
13856
 
 
13857
 \noindent {\bf Signature:} 
 
13858
\begin{verbatim} (VM ref) get_VM (session_id s, crashdump ref self)\end{verbatim}
 
13859
 
 
13860
 
 
13861
\noindent{\bf Arguments:}
 
13862
 
 
13863
 
 
13864
\vspace{0.3cm}
 
13865
\begin{tabular}{|c|c|p{7cm}|}
 
13866
 \hline
 
13867
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13868
{\tt crashdump ref } & self & reference to the object \\ \hline 
 
13869
 
 
13870
\end{tabular}
 
13871
 
 
13872
\vspace{0.3cm}
 
13873
 
 
13874
 \noindent {\bf Return Type:} 
 
13875
{\tt 
 
13876
VM ref
 
13877
}
 
13878
 
 
13879
 
 
13880
value of the field
 
13881
\vspace{0.3cm}
 
13882
\vspace{0.3cm}
 
13883
\vspace{0.3cm}
 
13884
\subsubsection{RPC name:~get\_VDI}
 
13885
 
 
13886
{\bf Overview:} 
 
13887
Get the VDI field of the given crashdump.
 
13888
 
 
13889
 \noindent {\bf Signature:} 
 
13890
\begin{verbatim} (VDI ref) get_VDI (session_id s, crashdump ref self)\end{verbatim}
 
13891
 
 
13892
 
 
13893
\noindent{\bf Arguments:}
 
13894
 
 
13895
 
 
13896
\vspace{0.3cm}
 
13897
\begin{tabular}{|c|c|p{7cm}|}
 
13898
 \hline
 
13899
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13900
{\tt crashdump ref } & self & reference to the object \\ \hline 
 
13901
 
 
13902
\end{tabular}
 
13903
 
 
13904
\vspace{0.3cm}
 
13905
 
 
13906
 \noindent {\bf Return Type:} 
 
13907
{\tt 
 
13908
VDI ref
 
13909
}
 
13910
 
 
13911
 
 
13912
value of the field
 
13913
\vspace{0.3cm}
 
13914
\vspace{0.3cm}
 
13915
\vspace{0.3cm}
 
13916
\subsubsection{RPC name:~get\_by\_uuid}
 
13917
 
 
13918
{\bf Overview:} 
 
13919
Get a reference to the crashdump instance with the specified UUID.
 
13920
 
 
13921
 \noindent {\bf Signature:} 
 
13922
\begin{verbatim} (crashdump ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
13923
 
 
13924
 
 
13925
\noindent{\bf Arguments:}
 
13926
 
 
13927
 
 
13928
\vspace{0.3cm}
 
13929
\begin{tabular}{|c|c|p{7cm}|}
 
13930
 \hline
 
13931
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13932
{\tt string } & uuid & UUID of object to return \\ \hline 
 
13933
 
 
13934
\end{tabular}
 
13935
 
 
13936
\vspace{0.3cm}
 
13937
 
 
13938
 \noindent {\bf Return Type:} 
 
13939
{\tt 
 
13940
crashdump ref
 
13941
}
 
13942
 
 
13943
 
 
13944
reference to the object
 
13945
\vspace{0.3cm}
 
13946
\vspace{0.3cm}
 
13947
\vspace{0.3cm}
 
13948
\subsubsection{RPC name:~get\_record}
 
13949
 
 
13950
{\bf Overview:} 
 
13951
Get a record containing the current state of the given crashdump.
 
13952
 
 
13953
 \noindent {\bf Signature:} 
 
13954
\begin{verbatim} (crashdump record) get_record (session_id s, crashdump ref self)\end{verbatim}
 
13955
 
 
13956
 
 
13957
\noindent{\bf Arguments:}
 
13958
 
 
13959
 
 
13960
\vspace{0.3cm}
 
13961
\begin{tabular}{|c|c|p{7cm}|}
 
13962
 \hline
 
13963
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
13964
{\tt crashdump ref } & self & reference to the object \\ \hline 
 
13965
 
 
13966
\end{tabular}
 
13967
 
 
13968
\vspace{0.3cm}
 
13969
 
 
13970
 \noindent {\bf Return Type:} 
 
13971
{\tt 
 
13972
crashdump record
 
13973
}
 
13974
 
 
13975
 
 
13976
all fields from the object
 
13977
\vspace{0.3cm}
 
13978
\vspace{0.3cm}
 
13979
\vspace{0.3cm}
 
13980
 
 
13981
\vspace{1cm}
 
13982
\newpage
 
13983
\section{Class: VTPM}
 
13984
\subsection{Fields for class: VTPM}
 
13985
\begin{longtable}{|lllp{0.38\textwidth}|}
 
13986
\hline
 
13987
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf VTPM} \\
 
13988
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
13989
virtual TPM device.}} \\
 
13990
\hline
 
13991
Quals & Field & Type & Description \\
 
13992
\hline
 
13993
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
13994
$\mathit{RO}_\mathit{ins}$ &  {\tt VM} & VM ref & the virtual machine \\
 
13995
$\mathit{RO}_\mathit{ins}$ &  {\tt backend} & VM ref & the domain where the backend is located \\
 
13996
$\mathit{RW}$ &  {\tt other\_config} & (string $\rightarrow$ string) Map & additional configuration \\
 
13997
\hline
 
13998
\end{longtable}
 
13999
\subsection{RPCs associated with class: VTPM}
 
14000
\subsubsection{RPC name:~get\_uuid}
 
14001
 
 
14002
{\bf Overview:} 
 
14003
Get the uuid field of the given VTPM.
 
14004
 
 
14005
 \noindent {\bf Signature:} 
 
14006
\begin{verbatim} string get_uuid (session_id s, VTPM ref self)\end{verbatim}
 
14007
 
 
14008
 
 
14009
\noindent{\bf Arguments:}
 
14010
 
 
14011
 
 
14012
\vspace{0.3cm}
 
14013
\begin{tabular}{|c|c|p{7cm}|}
 
14014
 \hline
 
14015
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14016
{\tt VTPM ref } & self & reference to the object \\ \hline 
 
14017
 
 
14018
\end{tabular}
 
14019
 
 
14020
\vspace{0.3cm}
 
14021
 
 
14022
 \noindent {\bf Return Type:} 
 
14023
{\tt 
 
14024
string
 
14025
}
 
14026
 
 
14027
 
 
14028
value of the field
 
14029
\vspace{0.3cm}
 
14030
\vspace{0.3cm}
 
14031
\vspace{0.3cm}
 
14032
\subsubsection{RPC name:~get\_VM}
 
14033
 
 
14034
{\bf Overview:} 
 
14035
Get the VM field of the given VTPM.
 
14036
 
 
14037
 \noindent {\bf Signature:} 
 
14038
\begin{verbatim} (VM ref) get_VM (session_id s, VTPM ref self)\end{verbatim}
 
14039
 
 
14040
 
 
14041
\noindent{\bf Arguments:}
 
14042
 
 
14043
 
 
14044
\vspace{0.3cm}
 
14045
\begin{tabular}{|c|c|p{7cm}|}
 
14046
 \hline
 
14047
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14048
{\tt VTPM ref } & self & reference to the object \\ \hline 
 
14049
 
 
14050
\end{tabular}
 
14051
 
 
14052
\vspace{0.3cm}
 
14053
 
 
14054
 \noindent {\bf Return Type:} 
 
14055
{\tt 
 
14056
VM ref
 
14057
}
 
14058
 
 
14059
 
 
14060
value of the field
 
14061
\vspace{0.3cm}
 
14062
\vspace{0.3cm}
 
14063
\vspace{0.3cm}
 
14064
\subsubsection{RPC name:~get\_backend}
 
14065
 
 
14066
{\bf Overview:} 
 
14067
Get the backend field of the given VTPM.
 
14068
 
 
14069
 \noindent {\bf Signature:} 
 
14070
\begin{verbatim} (VM ref) get_backend (session_id s, VTPM ref self)\end{verbatim}
 
14071
 
 
14072
 
 
14073
\noindent{\bf Arguments:}
 
14074
 
 
14075
 
 
14076
\vspace{0.3cm}
 
14077
\begin{tabular}{|c|c|p{7cm}|}
 
14078
 \hline
 
14079
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14080
{\tt VTPM ref } & self & reference to the object \\ \hline 
 
14081
 
 
14082
\end{tabular}
 
14083
 
 
14084
\vspace{0.3cm}
 
14085
 
 
14086
 \noindent {\bf Return Type:} 
 
14087
{\tt 
 
14088
VM ref
 
14089
}
 
14090
 
 
14091
 
 
14092
value of the field
 
14093
\vspace{0.3cm}
 
14094
\vspace{0.3cm}
 
14095
\vspace{0.3cm}
 
14096
\subsubsection{RPC name:~get\_other\_config}
 
14097
 
 
14098
{\bf Overview:}
 
14099
Get the other\_config field of the given VTPM.
 
14100
 
 
14101
 \noindent {\bf Signature:}
 
14102
\begin{verbatim} ((string -> string) Map) get_other_config (session_id s, VTPM ref self)\end{verbatim}
 
14103
 
 
14104
 
 
14105
\noindent{\bf Arguments:}
 
14106
 
 
14107
 
 
14108
\vspace{0.3cm}
 
14109
\begin{tabular}{|c|c|p{7cm}|}
 
14110
 \hline
 
14111
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14112
{\tt VTPM ref } & self & reference to the object \\ \hline
 
14113
 
 
14114
\end{tabular}
 
14115
 
 
14116
\vspace{0.3cm}
 
14117
 
 
14118
 \noindent {\bf Return Type:}
 
14119
{\tt
 
14120
(string $\rightarrow$ string) Map
 
14121
}
 
14122
 
 
14123
 
 
14124
value of the field
 
14125
\vspace{0.3cm}
 
14126
\vspace{0.3cm}
 
14127
\vspace{0.3cm}
 
14128
\subsubsection{RPC name:~set\_other\_config}
 
14129
 
 
14130
{\bf Overview:}
 
14131
Set the other\_config field of the given VTPM.
 
14132
 
 
14133
 \noindent {\bf Signature:}
 
14134
\begin{verbatim} void set_other_config (session_id s, VTPM ref self, (string -> string) Map value)\end{verbatim}
 
14135
 
 
14136
 
 
14137
\noindent{\bf Arguments:}
 
14138
 
 
14139
 
 
14140
\vspace{0.3cm}
 
14141
\begin{tabular}{|c|c|p{7cm}|}
 
14142
 \hline
 
14143
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14144
{\tt VTPM ref } & self & reference to the object \\ \hline
 
14145
 
 
14146
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline
 
14147
 
 
14148
\end{tabular}
 
14149
 
 
14150
\vspace{0.3cm}
 
14151
 
 
14152
 \noindent {\bf Return Type:}
 
14153
{\tt
 
14154
void
 
14155
}
 
14156
 
 
14157
 
 
14158
 
 
14159
\vspace{0.3cm}
 
14160
\vspace{0.3cm}
 
14161
\vspace{0.3cm}
 
14162
\subsubsection{RPC name:~get\_runtime\_properties}
 
14163
 
 
14164
{\bf Overview:}
 
14165
Get the runtime\_properties field of the given VTPM.
 
14166
 
 
14167
\noindent {\bf Signature:}
 
14168
\begin{verbatim} ((string -> string) Map) get_runtime_properties (session_id s, VTPM ref self)\end{verbatim}
 
14169
 
 
14170
 
 
14171
\noindent{\bf Arguments:}
 
14172
 
 
14173
 
 
14174
\vspace{0.3cm}
 
14175
\begin{tabular}{|c|c|p{7cm}|}
 
14176
 \hline
 
14177
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14178
{\tt VTPM ref } & self & reference to the object \\ \hline
 
14179
 
 
14180
\end{tabular}
 
14181
 
 
14182
\vspace{0.3cm}
 
14183
 
 
14184
 \noindent {\bf Return Type:}
 
14185
{\tt
 
14186
(string $\rightarrow$ string) Map
 
14187
}
 
14188
 
 
14189
 
 
14190
value of the field
 
14191
\vspace{0.3cm}
 
14192
\vspace{0.3cm}
 
14193
\vspace{0.3cm}
 
14194
\subsubsection{RPC name:~create}
 
14195
 
 
14196
{\bf Overview:} 
 
14197
Create a new VTPM instance, and return its handle.
 
14198
 
 
14199
 \noindent {\bf Signature:} 
 
14200
\begin{verbatim} (VTPM ref) create (session_id s, VTPM record args)\end{verbatim}
 
14201
 
 
14202
 
 
14203
\noindent{\bf Arguments:}
 
14204
 
 
14205
 
 
14206
\vspace{0.3cm}
 
14207
\begin{tabular}{|c|c|p{7cm}|}
 
14208
 \hline
 
14209
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14210
{\tt VTPM record } & args & All constructor arguments \\ \hline 
 
14211
 
 
14212
\end{tabular}
 
14213
 
 
14214
\vspace{0.3cm}
 
14215
 
 
14216
 \noindent {\bf Return Type:} 
 
14217
{\tt 
 
14218
VTPM ref
 
14219
}
 
14220
 
 
14221
 
 
14222
reference to the newly created object
 
14223
\vspace{0.3cm}
 
14224
\vspace{0.3cm}
 
14225
\vspace{0.3cm}
 
14226
\subsubsection{RPC name:~destroy}
 
14227
 
 
14228
{\bf Overview:} 
 
14229
Destroy the specified VTPM instance.
 
14230
 
 
14231
 \noindent {\bf Signature:} 
 
14232
\begin{verbatim} void destroy (session_id s, VTPM ref self)\end{verbatim}
 
14233
 
 
14234
 
 
14235
\noindent{\bf Arguments:}
 
14236
 
 
14237
 
 
14238
\vspace{0.3cm}
 
14239
\begin{tabular}{|c|c|p{7cm}|}
 
14240
 \hline
 
14241
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14242
{\tt VTPM ref } & self & reference to the object \\ \hline 
 
14243
 
 
14244
\end{tabular}
 
14245
 
 
14246
\vspace{0.3cm}
 
14247
 
 
14248
 \noindent {\bf Return Type:} 
 
14249
{\tt 
 
14250
void
 
14251
}
 
14252
 
 
14253
 
 
14254
 
 
14255
\vspace{0.3cm}
 
14256
\vspace{0.3cm}
 
14257
\vspace{0.3cm}
 
14258
\subsubsection{RPC name:~get\_by\_uuid}
 
14259
 
 
14260
{\bf Overview:} 
 
14261
Get a reference to the VTPM instance with the specified UUID.
 
14262
 
 
14263
 \noindent {\bf Signature:} 
 
14264
\begin{verbatim} (VTPM ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
14265
 
 
14266
 
 
14267
\noindent{\bf Arguments:}
 
14268
 
 
14269
 
 
14270
\vspace{0.3cm}
 
14271
\begin{tabular}{|c|c|p{7cm}|}
 
14272
 \hline
 
14273
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14274
{\tt string } & uuid & UUID of object to return \\ \hline 
 
14275
 
 
14276
\end{tabular}
 
14277
 
 
14278
\vspace{0.3cm}
 
14279
 
 
14280
 \noindent {\bf Return Type:} 
 
14281
{\tt 
 
14282
VTPM ref
 
14283
}
 
14284
 
 
14285
 
 
14286
reference to the object
 
14287
\vspace{0.3cm}
 
14288
\vspace{0.3cm}
 
14289
\vspace{0.3cm}
 
14290
\subsubsection{RPC name:~get\_record}
 
14291
 
 
14292
{\bf Overview:} 
 
14293
Get a record containing the current state of the given VTPM.
 
14294
 
 
14295
 \noindent {\bf Signature:} 
 
14296
\begin{verbatim} (VTPM record) get_record (session_id s, VTPM ref self)\end{verbatim}
 
14297
 
 
14298
 
 
14299
\noindent{\bf Arguments:}
 
14300
 
 
14301
 
 
14302
\vspace{0.3cm}
 
14303
\begin{tabular}{|c|c|p{7cm}|}
 
14304
 \hline
 
14305
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14306
{\tt VTPM ref } & self & reference to the object \\ \hline 
 
14307
 
 
14308
\end{tabular}
 
14309
 
 
14310
\vspace{0.3cm}
 
14311
 
 
14312
 \noindent {\bf Return Type:} 
 
14313
{\tt 
 
14314
VTPM record
 
14315
}
 
14316
 
 
14317
 
 
14318
all fields from the object
 
14319
\vspace{0.3cm}
 
14320
\vspace{0.3cm}
 
14321
\vspace{0.3cm}
 
14322
 
 
14323
\vspace{1cm}
 
14324
\newpage
 
14325
\section{Class: console}
 
14326
\subsection{Fields for class: console}
 
14327
\begin{longtable}{|lllp{0.38\textwidth}|}
 
14328
\hline
 
14329
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf console} \\
 
14330
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
14331
console.}} \\
 
14332
\hline
 
14333
Quals & Field & Type & Description \\
 
14334
\hline
 
14335
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
14336
$\mathit{RO}_\mathit{run}$ &  {\tt protocol} & console\_protocol & the protocol used by this console \\
 
14337
$\mathit{RO}_\mathit{run}$ &  {\tt location} & string & URI for the console service \\
 
14338
$\mathit{RO}_\mathit{run}$ &  {\tt VM} & VM ref & VM to which this console is attached \\
 
14339
$\mathit{RW}$ &  {\tt other\_config} & (string $\rightarrow$ string) Map & additional configuration \\
 
14340
\hline
 
14341
\end{longtable}
 
14342
\subsection{RPCs associated with class: console}
 
14343
\subsubsection{RPC name:~get\_all}
 
14344
 
 
14345
{\bf Overview:} 
 
14346
Return a list of all the consoles known to the system.
 
14347
 
 
14348
 \noindent {\bf Signature:} 
 
14349
\begin{verbatim} ((console ref) Set) get_all (session_id s)\end{verbatim}
 
14350
 
 
14351
 
 
14352
\vspace{0.3cm}
 
14353
 
 
14354
 \noindent {\bf Return Type:} 
 
14355
{\tt 
 
14356
(console ref) Set
 
14357
}
 
14358
 
 
14359
 
 
14360
references to all objects
 
14361
\vspace{0.3cm}
 
14362
\vspace{0.3cm}
 
14363
\vspace{0.3cm}
 
14364
\subsubsection{RPC name:~get\_uuid}
 
14365
 
 
14366
{\bf Overview:} 
 
14367
Get the uuid field of the given console.
 
14368
 
 
14369
 \noindent {\bf Signature:} 
 
14370
\begin{verbatim} string get_uuid (session_id s, console ref self)\end{verbatim}
 
14371
 
 
14372
 
 
14373
\noindent{\bf Arguments:}
 
14374
 
 
14375
 
 
14376
\vspace{0.3cm}
 
14377
\begin{tabular}{|c|c|p{7cm}|}
 
14378
 \hline
 
14379
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14380
{\tt console ref } & self & reference to the object \\ \hline 
 
14381
 
 
14382
\end{tabular}
 
14383
 
 
14384
\vspace{0.3cm}
 
14385
 
 
14386
 \noindent {\bf Return Type:} 
 
14387
{\tt 
 
14388
string
 
14389
}
 
14390
 
 
14391
 
 
14392
value of the field
 
14393
\vspace{0.3cm}
 
14394
\vspace{0.3cm}
 
14395
\vspace{0.3cm}
 
14396
\subsubsection{RPC name:~get\_protocol}
 
14397
 
 
14398
{\bf Overview:} 
 
14399
Get the protocol field of the given console.
 
14400
 
 
14401
 \noindent {\bf Signature:} 
 
14402
\begin{verbatim} (console_protocol) get_protocol (session_id s, console ref self)\end{verbatim}
 
14403
 
 
14404
 
 
14405
\noindent{\bf Arguments:}
 
14406
 
 
14407
 
 
14408
\vspace{0.3cm}
 
14409
\begin{tabular}{|c|c|p{7cm}|}
 
14410
 \hline
 
14411
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14412
{\tt console ref } & self & reference to the object \\ \hline 
 
14413
 
 
14414
\end{tabular}
 
14415
 
 
14416
\vspace{0.3cm}
 
14417
 
 
14418
 \noindent {\bf Return Type:} 
 
14419
{\tt 
 
14420
console\_protocol
 
14421
}
 
14422
 
 
14423
 
 
14424
value of the field
 
14425
\vspace{0.3cm}
 
14426
\vspace{0.3cm}
 
14427
\vspace{0.3cm}
 
14428
\subsubsection{RPC name:~get\_location}
 
14429
 
 
14430
{\bf Overview:} 
 
14431
Get the location field of the given console.
 
14432
 
 
14433
 \noindent {\bf Signature:} 
 
14434
\begin{verbatim} string get_location (session_id s, console ref self)\end{verbatim}
 
14435
 
 
14436
 
 
14437
\noindent{\bf Arguments:}
 
14438
 
 
14439
 
 
14440
\vspace{0.3cm}
 
14441
\begin{tabular}{|c|c|p{7cm}|}
 
14442
 \hline
 
14443
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14444
{\tt console ref } & self & reference to the object \\ \hline 
 
14445
 
 
14446
\end{tabular}
 
14447
 
 
14448
\vspace{0.3cm}
 
14449
 
 
14450
 \noindent {\bf Return Type:} 
 
14451
{\tt 
 
14452
string
 
14453
}
 
14454
 
 
14455
 
 
14456
value of the field
 
14457
\vspace{0.3cm}
 
14458
\vspace{0.3cm}
 
14459
\vspace{0.3cm}
 
14460
\subsubsection{RPC name:~get\_VM}
 
14461
 
 
14462
{\bf Overview:} 
 
14463
Get the VM field of the given console.
 
14464
 
 
14465
 \noindent {\bf Signature:} 
 
14466
\begin{verbatim} (VM ref) get_VM (session_id s, console ref self)\end{verbatim}
 
14467
 
 
14468
 
 
14469
\noindent{\bf Arguments:}
 
14470
 
 
14471
 
 
14472
\vspace{0.3cm}
 
14473
\begin{tabular}{|c|c|p{7cm}|}
 
14474
 \hline
 
14475
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14476
{\tt console ref } & self & reference to the object \\ \hline 
 
14477
 
 
14478
\end{tabular}
 
14479
 
 
14480
\vspace{0.3cm}
 
14481
 
 
14482
 \noindent {\bf Return Type:} 
 
14483
{\tt 
 
14484
VM ref
 
14485
}
 
14486
 
 
14487
 
 
14488
value of the field
 
14489
\vspace{0.3cm}
 
14490
\vspace{0.3cm}
 
14491
\vspace{0.3cm}
 
14492
\subsubsection{RPC name:~get\_other\_config}
 
14493
 
 
14494
{\bf Overview:} 
 
14495
Get the other\_config field of the given console.
 
14496
 
 
14497
 \noindent {\bf Signature:} 
 
14498
\begin{verbatim} ((string -> string) Map) get_other_config (session_id s, console ref self)\end{verbatim}
 
14499
 
 
14500
 
 
14501
\noindent{\bf Arguments:}
 
14502
 
 
14503
 
 
14504
\vspace{0.3cm}
 
14505
\begin{tabular}{|c|c|p{7cm}|}
 
14506
 \hline
 
14507
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14508
{\tt console ref } & self & reference to the object \\ \hline 
 
14509
 
 
14510
\end{tabular}
 
14511
 
 
14512
\vspace{0.3cm}
 
14513
 
 
14514
 \noindent {\bf Return Type:} 
 
14515
{\tt 
 
14516
(string $\rightarrow$ string) Map
 
14517
}
 
14518
 
 
14519
 
 
14520
value of the field
 
14521
\vspace{0.3cm}
 
14522
\vspace{0.3cm}
 
14523
\vspace{0.3cm}
 
14524
\subsubsection{RPC name:~set\_other\_config}
 
14525
 
 
14526
{\bf Overview:} 
 
14527
Set the other\_config field of the given console.
 
14528
 
 
14529
 \noindent {\bf Signature:} 
 
14530
\begin{verbatim} void set_other_config (session_id s, console ref self, (string -> string) Map value)\end{verbatim}
 
14531
 
 
14532
 
 
14533
\noindent{\bf Arguments:}
 
14534
 
 
14535
 
 
14536
\vspace{0.3cm}
 
14537
\begin{tabular}{|c|c|p{7cm}|}
 
14538
 \hline
 
14539
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14540
{\tt console ref } & self & reference to the object \\ \hline 
 
14541
 
 
14542
{\tt (string $\rightarrow$ string) Map } & value & New value to set \\ \hline 
 
14543
 
 
14544
\end{tabular}
 
14545
 
 
14546
\vspace{0.3cm}
 
14547
 
 
14548
 \noindent {\bf Return Type:} 
 
14549
{\tt 
 
14550
void
 
14551
}
 
14552
 
 
14553
 
 
14554
 
 
14555
\vspace{0.3cm}
 
14556
\vspace{0.3cm}
 
14557
\vspace{0.3cm}
 
14558
\subsubsection{RPC name:~add\_to\_other\_config}
 
14559
 
 
14560
{\bf Overview:} 
 
14561
Add the given key-value pair to the other\_config field of the given
 
14562
console.
 
14563
 
 
14564
 \noindent {\bf Signature:} 
 
14565
\begin{verbatim} void add_to_other_config (session_id s, console ref self, string key, string value)\end{verbatim}
 
14566
 
 
14567
 
 
14568
\noindent{\bf Arguments:}
 
14569
 
 
14570
 
 
14571
\vspace{0.3cm}
 
14572
\begin{tabular}{|c|c|p{7cm}|}
 
14573
 \hline
 
14574
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14575
{\tt console ref } & self & reference to the object \\ \hline 
 
14576
 
 
14577
{\tt string } & key & Key to add \\ \hline 
 
14578
 
 
14579
{\tt string } & value & Value to add \\ \hline 
 
14580
 
 
14581
\end{tabular}
 
14582
 
 
14583
\vspace{0.3cm}
 
14584
 
 
14585
 \noindent {\bf Return Type:} 
 
14586
{\tt 
 
14587
void
 
14588
}
 
14589
 
 
14590
 
 
14591
 
 
14592
\vspace{0.3cm}
 
14593
\vspace{0.3cm}
 
14594
\vspace{0.3cm}
 
14595
\subsubsection{RPC name:~remove\_from\_other\_config}
 
14596
 
 
14597
{\bf Overview:} 
 
14598
Remove the given key and its corresponding value from the other\_config
 
14599
field of the given console.  If the key is not in that Map, then do
 
14600
nothing.
 
14601
 
 
14602
 \noindent {\bf Signature:} 
 
14603
\begin{verbatim} void remove_from_other_config (session_id s, console ref self, string key)\end{verbatim}
 
14604
 
 
14605
 
 
14606
\noindent{\bf Arguments:}
 
14607
 
 
14608
 
 
14609
\vspace{0.3cm}
 
14610
\begin{tabular}{|c|c|p{7cm}|}
 
14611
 \hline
 
14612
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14613
{\tt console ref } & self & reference to the object \\ \hline 
 
14614
 
 
14615
{\tt string } & key & Key to remove \\ \hline 
 
14616
 
 
14617
\end{tabular}
 
14618
 
 
14619
\vspace{0.3cm}
 
14620
 
 
14621
 \noindent {\bf Return Type:} 
 
14622
{\tt 
 
14623
void
 
14624
}
 
14625
 
 
14626
 
 
14627
 
 
14628
\vspace{0.3cm}
 
14629
\vspace{0.3cm}
 
14630
\vspace{0.3cm}
 
14631
\subsubsection{RPC name:~create}
 
14632
 
 
14633
{\bf Overview:} 
 
14634
Create a new console instance, and return its handle.
 
14635
 
 
14636
 \noindent {\bf Signature:} 
 
14637
\begin{verbatim} (console ref) create (session_id s, console record args)\end{verbatim}
 
14638
 
 
14639
 
 
14640
\noindent{\bf Arguments:}
 
14641
 
 
14642
 
 
14643
\vspace{0.3cm}
 
14644
\begin{tabular}{|c|c|p{7cm}|}
 
14645
 \hline
 
14646
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14647
{\tt console record } & args & All constructor arguments \\ \hline 
 
14648
 
 
14649
\end{tabular}
 
14650
 
 
14651
\vspace{0.3cm}
 
14652
 
 
14653
 \noindent {\bf Return Type:} 
 
14654
{\tt 
 
14655
console ref
 
14656
}
 
14657
 
 
14658
 
 
14659
reference to the newly created object
 
14660
\vspace{0.3cm}
 
14661
\vspace{0.3cm}
 
14662
\vspace{0.3cm}
 
14663
\subsubsection{RPC name:~destroy}
 
14664
 
 
14665
{\bf Overview:} 
 
14666
Destroy the specified console instance.
 
14667
 
 
14668
 \noindent {\bf Signature:} 
 
14669
\begin{verbatim} void destroy (session_id s, console ref self)\end{verbatim}
 
14670
 
 
14671
 
 
14672
\noindent{\bf Arguments:}
 
14673
 
 
14674
 
 
14675
\vspace{0.3cm}
 
14676
\begin{tabular}{|c|c|p{7cm}|}
 
14677
 \hline
 
14678
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14679
{\tt console ref } & self & reference to the object \\ \hline 
 
14680
 
 
14681
\end{tabular}
 
14682
 
 
14683
\vspace{0.3cm}
 
14684
 
 
14685
 \noindent {\bf Return Type:} 
 
14686
{\tt 
 
14687
void
 
14688
}
 
14689
 
 
14690
 
 
14691
 
 
14692
\vspace{0.3cm}
 
14693
\vspace{0.3cm}
 
14694
\vspace{0.3cm}
 
14695
\subsubsection{RPC name:~get\_by\_uuid}
 
14696
 
 
14697
{\bf Overview:} 
 
14698
Get a reference to the console instance with the specified UUID.
 
14699
 
 
14700
 \noindent {\bf Signature:} 
 
14701
\begin{verbatim} (console ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
14702
 
 
14703
 
 
14704
\noindent{\bf Arguments:}
 
14705
 
 
14706
 
 
14707
\vspace{0.3cm}
 
14708
\begin{tabular}{|c|c|p{7cm}|}
 
14709
 \hline
 
14710
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14711
{\tt string } & uuid & UUID of object to return \\ \hline 
 
14712
 
 
14713
\end{tabular}
 
14714
 
 
14715
\vspace{0.3cm}
 
14716
 
 
14717
 \noindent {\bf Return Type:} 
 
14718
{\tt 
 
14719
console ref
 
14720
}
 
14721
 
 
14722
 
 
14723
reference to the object
 
14724
\vspace{0.3cm}
 
14725
\vspace{0.3cm}
 
14726
\vspace{0.3cm}
 
14727
\subsubsection{RPC name:~get\_record}
 
14728
 
 
14729
{\bf Overview:} 
 
14730
Get a record containing the current state of the given console.
 
14731
 
 
14732
 \noindent {\bf Signature:} 
 
14733
\begin{verbatim} (console record) get_record (session_id s, console ref self)\end{verbatim}
 
14734
 
 
14735
 
 
14736
\noindent{\bf Arguments:}
 
14737
 
 
14738
 
 
14739
\vspace{0.3cm}
 
14740
\begin{tabular}{|c|c|p{7cm}|}
 
14741
 \hline
 
14742
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14743
{\tt console ref } & self & reference to the object \\ \hline 
 
14744
 
 
14745
\end{tabular}
 
14746
 
 
14747
\vspace{0.3cm}
 
14748
 
 
14749
 \noindent {\bf Return Type:} 
 
14750
{\tt 
 
14751
console record
 
14752
}
 
14753
 
 
14754
 
 
14755
all fields from the object
 
14756
\vspace{0.3cm}
 
14757
\vspace{0.3cm}
 
14758
\vspace{0.3cm}
 
14759
 
 
14760
\vspace{1cm}
 
14761
\newpage
 
14762
\section{Class: DPCI}
 
14763
\subsection{Fields for class: DPCI}
 
14764
\begin{longtable}{|lllp{0.38\textwidth}|}
 
14765
\hline
 
14766
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf DPCI} \\
 
14767
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
14768
pass-through PCI device.}} \\
 
14769
\hline
 
14770
Quals & Field & Type & Description \\
 
14771
\hline
 
14772
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
14773
$\mathit{RO}_\mathit{inst}$ &  {\tt VM} & VM ref & the virtual machine \\
 
14774
$\mathit{RO}_\mathit{inst}$ &  {\tt PPCI} & PPCI ref & the physical PCI device \\
 
14775
$\mathit{RO}_\mathit{inst}$ &  {\tt hotplug\_slot} & int & the slot number to which this PCI device is inserted \\
 
14776
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_domain} & int & the virtual domain number \\
 
14777
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_bus} & int & the virtual bus number \\
 
14778
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_slot} & int & the virtual slot number \\
 
14779
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_func} & int & the virtual func number \\
 
14780
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_name} & string & the virtual PCI name \\
 
14781
\hline
 
14782
\end{longtable}
 
14783
\subsection{RPCs associated with class: DPCI}
 
14784
\subsubsection{RPC name:~get\_all}
 
14785
 
 
14786
{\bf Overview:} 
 
14787
Return a list of all the DPCIs known to the system.
 
14788
 
 
14789
 \noindent {\bf Signature:} 
 
14790
\begin{verbatim} ((DPCI ref) Set) get_all (session_id s)\end{verbatim}
 
14791
 
 
14792
 
 
14793
\vspace{0.3cm}
 
14794
 
 
14795
 \noindent {\bf Return Type:} 
 
14796
{\tt 
 
14797
(DPCI ref) Set
 
14798
}
 
14799
 
 
14800
 
 
14801
references to all objects
 
14802
\vspace{0.3cm}
 
14803
\vspace{0.3cm}
 
14804
\vspace{0.3cm}
 
14805
\subsubsection{RPC name:~get\_uuid}
 
14806
 
 
14807
{\bf Overview:} 
 
14808
Get the uuid field of the given DPCI.
 
14809
 
 
14810
 \noindent {\bf Signature:} 
 
14811
\begin{verbatim} string get_uuid (session_id s, DPCI ref self)\end{verbatim}
 
14812
 
 
14813
 
 
14814
\noindent{\bf Arguments:}
 
14815
 
 
14816
 
 
14817
\vspace{0.3cm}
 
14818
\begin{tabular}{|c|c|p{7cm}|}
 
14819
 \hline
 
14820
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14821
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
14822
 
 
14823
\end{tabular}
 
14824
 
 
14825
\vspace{0.3cm}
 
14826
 
 
14827
 \noindent {\bf Return Type:} 
 
14828
{\tt 
 
14829
string
 
14830
}
 
14831
 
 
14832
 
 
14833
value of the field
 
14834
\vspace{0.3cm}
 
14835
\vspace{0.3cm}
 
14836
\vspace{0.3cm}
 
14837
\subsubsection{RPC name:~get\_VM}
 
14838
 
 
14839
{\bf Overview:} 
 
14840
Get the VM field of the given DPCI.
 
14841
 
 
14842
 \noindent {\bf Signature:} 
 
14843
\begin{verbatim} (VM ref) get_VM (session_id s, DPCI ref self)\end{verbatim}
 
14844
 
 
14845
 
 
14846
\noindent{\bf Arguments:}
 
14847
 
 
14848
 
 
14849
\vspace{0.3cm}
 
14850
\begin{tabular}{|c|c|p{7cm}|}
 
14851
 \hline
 
14852
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14853
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
14854
 
 
14855
\end{tabular}
 
14856
 
 
14857
\vspace{0.3cm}
 
14858
 
 
14859
 \noindent {\bf Return Type:} 
 
14860
{\tt 
 
14861
VM ref
 
14862
}
 
14863
 
 
14864
 
 
14865
value of the field
 
14866
\vspace{0.3cm}
 
14867
\vspace{0.3cm}
 
14868
\vspace{0.3cm}
 
14869
\subsubsection{RPC name:~get\_PPCI}
 
14870
 
 
14871
{\bf Overview:} 
 
14872
Get the PPCI field of the given DPCI.
 
14873
 
 
14874
 \noindent {\bf Signature:} 
 
14875
\begin{verbatim} (PPCI ref) get_PPCI (session_id s, DPCI ref self)\end{verbatim}
 
14876
 
 
14877
 
 
14878
\noindent{\bf Arguments:}
 
14879
 
 
14880
 
 
14881
\vspace{0.3cm}
 
14882
\begin{tabular}{|c|c|p{7cm}|}
 
14883
 \hline
 
14884
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14885
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
14886
 
 
14887
\end{tabular}
 
14888
 
 
14889
\vspace{0.3cm}
 
14890
 
 
14891
 \noindent {\bf Return Type:} 
 
14892
{\tt 
 
14893
PPCI ref
 
14894
}
 
14895
 
 
14896
 
 
14897
value of the field
 
14898
\vspace{0.3cm}
 
14899
\vspace{0.3cm}
 
14900
\vspace{0.3cm}
 
14901
\subsubsection{RPC name:~get\_hotplug\_slot}
 
14902
 
 
14903
{\bf Overview:} 
 
14904
Get the hotplug\_slot field of the given DPCI.
 
14905
 
 
14906
 \noindent {\bf Signature:} 
 
14907
\begin{verbatim} int get_hotplug_slot (session_id s, DPCI ref self)\end{verbatim}
 
14908
 
 
14909
 
 
14910
\noindent{\bf Arguments:}
 
14911
 
 
14912
 
 
14913
\vspace{0.3cm}
 
14914
\begin{tabular}{|c|c|p{7cm}|}
 
14915
 \hline
 
14916
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14917
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
14918
 
 
14919
\end{tabular}
 
14920
 
 
14921
\vspace{0.3cm}
 
14922
 
 
14923
 \noindent {\bf Return Type:} 
 
14924
{\tt 
 
14925
int
 
14926
}
 
14927
 
 
14928
 
 
14929
value of the field
 
14930
\vspace{0.3cm}
 
14931
\vspace{0.3cm}
 
14932
\vspace{0.3cm}
 
14933
\subsubsection{RPC name:~get\_virtual\_domain}
 
14934
 
 
14935
{\bf Overview:} 
 
14936
Get the virtual\_domain field of the given DPCI.
 
14937
 
 
14938
 \noindent {\bf Signature:} 
 
14939
\begin{verbatim} int get_virtual_domain (session_id s, DPCI ref self)\end{verbatim}
 
14940
 
 
14941
 
 
14942
\noindent{\bf Arguments:}
 
14943
 
 
14944
 
 
14945
\vspace{0.3cm}
 
14946
\begin{tabular}{|c|c|p{7cm}|}
 
14947
 \hline
 
14948
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14949
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
14950
 
 
14951
\end{tabular}
 
14952
 
 
14953
\vspace{0.3cm}
 
14954
 
 
14955
 \noindent {\bf Return Type:} 
 
14956
{\tt 
 
14957
int
 
14958
}
 
14959
 
 
14960
 
 
14961
value of the field
 
14962
\vspace{0.3cm}
 
14963
\vspace{0.3cm}
 
14964
\vspace{0.3cm}
 
14965
\subsubsection{RPC name:~get\_virtual\_bus}
 
14966
 
 
14967
{\bf Overview:} 
 
14968
Get the virtual\_bus field of the given DPCI.
 
14969
 
 
14970
 \noindent {\bf Signature:} 
 
14971
\begin{verbatim} int get_virtual_bus (session_id s, DPCI ref self)\end{verbatim}
 
14972
 
 
14973
 
 
14974
\noindent{\bf Arguments:}
 
14975
 
 
14976
 
 
14977
\vspace{0.3cm}
 
14978
\begin{tabular}{|c|c|p{7cm}|}
 
14979
 \hline
 
14980
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
14981
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
14982
 
 
14983
\end{tabular}
 
14984
 
 
14985
\vspace{0.3cm}
 
14986
 
 
14987
 \noindent {\bf Return Type:} 
 
14988
{\tt 
 
14989
int
 
14990
}
 
14991
 
 
14992
 
 
14993
value of the field
 
14994
\vspace{0.3cm}
 
14995
\vspace{0.3cm}
 
14996
\vspace{0.3cm}
 
14997
\subsubsection{RPC name:~get\_virtual\_slot}
 
14998
 
 
14999
{\bf Overview:} 
 
15000
Get the virtual\_slot field of the given DPCI.
 
15001
 
 
15002
 \noindent {\bf Signature:} 
 
15003
\begin{verbatim} int get_virtual_slot (session_id s, DPCI ref self)\end{verbatim}
 
15004
 
 
15005
 
 
15006
\noindent{\bf Arguments:}
 
15007
 
 
15008
 
 
15009
\vspace{0.3cm}
 
15010
\begin{tabular}{|c|c|p{7cm}|}
 
15011
 \hline
 
15012
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15013
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
15014
 
 
15015
\end{tabular}
 
15016
 
 
15017
\vspace{0.3cm}
 
15018
 
 
15019
 \noindent {\bf Return Type:} 
 
15020
{\tt 
 
15021
int
 
15022
}
 
15023
 
 
15024
 
 
15025
value of the field
 
15026
\vspace{0.3cm}
 
15027
\vspace{0.3cm}
 
15028
\vspace{0.3cm}
 
15029
\subsubsection{RPC name:~get\_virtual\_func}
 
15030
 
 
15031
{\bf Overview:} 
 
15032
Get the virtual\_func field of the given DPCI.
 
15033
 
 
15034
 \noindent {\bf Signature:} 
 
15035
\begin{verbatim} int get_virtual_func (session_id s, DPCI ref self)\end{verbatim}
 
15036
 
 
15037
 
 
15038
\noindent{\bf Arguments:}
 
15039
 
 
15040
 
 
15041
\vspace{0.3cm}
 
15042
\begin{tabular}{|c|c|p{7cm}|}
 
15043
 \hline
 
15044
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15045
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
15046
 
 
15047
\end{tabular}
 
15048
 
 
15049
\vspace{0.3cm}
 
15050
 
 
15051
 \noindent {\bf Return Type:} 
 
15052
{\tt 
 
15053
int
 
15054
}
 
15055
 
 
15056
 
 
15057
value of the field
 
15058
\vspace{0.3cm}
 
15059
\vspace{0.3cm}
 
15060
\vspace{0.3cm}
 
15061
\subsubsection{RPC name:~get\_virtual\_name}
 
15062
 
 
15063
{\bf Overview:} 
 
15064
Get the virtual\_name field of the given DPCI.
 
15065
 
 
15066
 \noindent {\bf Signature:} 
 
15067
\begin{verbatim} string get_virtual_name (session_id s, DPCI ref self)\end{verbatim}
 
15068
 
 
15069
 
 
15070
\noindent{\bf Arguments:}
 
15071
 
 
15072
 
 
15073
\vspace{0.3cm}
 
15074
\begin{tabular}{|c|c|p{7cm}|}
 
15075
 \hline
 
15076
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15077
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
15078
 
 
15079
\end{tabular}
 
15080
 
 
15081
\vspace{0.3cm}
 
15082
 
 
15083
 \noindent {\bf Return Type:} 
 
15084
{\tt 
 
15085
string
 
15086
}
 
15087
 
 
15088
 
 
15089
value of the field
 
15090
\vspace{0.3cm}
 
15091
\vspace{0.3cm}
 
15092
\vspace{0.3cm}
 
15093
\subsubsection{RPC name:~create}
 
15094
 
 
15095
{\bf Overview:} 
 
15096
Create a new DPCI instance, and return its handle.
 
15097
 
 
15098
 \noindent {\bf Signature:} 
 
15099
\begin{verbatim} (DPCI ref) create (session_id s, DPCI record args)\end{verbatim}
 
15100
 
 
15101
 
 
15102
\noindent{\bf Arguments:}
 
15103
 
 
15104
 
 
15105
\vspace{0.3cm}
 
15106
\begin{tabular}{|c|c|p{7cm}|}
 
15107
 \hline
 
15108
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15109
{\tt DPCI record } & args & All constructor arguments \\ \hline 
 
15110
 
 
15111
\end{tabular}
 
15112
 
 
15113
\vspace{0.3cm}
 
15114
 
 
15115
 \noindent {\bf Return Type:} 
 
15116
{\tt 
 
15117
DPCI ref
 
15118
}
 
15119
 
 
15120
 
 
15121
reference to the newly created object
 
15122
\vspace{0.3cm}
 
15123
\vspace{0.3cm}
 
15124
\vspace{0.3cm}
 
15125
\subsubsection{RPC name:~destroy}
 
15126
 
 
15127
{\bf Overview:} 
 
15128
Destroy the specified DPCI instance.
 
15129
 
 
15130
 \noindent {\bf Signature:} 
 
15131
\begin{verbatim} void destroy (session_id s, DPCI ref self)\end{verbatim}
 
15132
 
 
15133
 
 
15134
\noindent{\bf Arguments:}
 
15135
 
 
15136
 
 
15137
\vspace{0.3cm}
 
15138
\begin{tabular}{|c|c|p{7cm}|}
 
15139
 \hline
 
15140
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15141
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
15142
 
 
15143
\end{tabular}
 
15144
 
 
15145
\vspace{0.3cm}
 
15146
 
 
15147
 \noindent {\bf Return Type:} 
 
15148
{\tt 
 
15149
void
 
15150
}
 
15151
 
 
15152
 
 
15153
\vspace{0.3cm}
 
15154
\vspace{0.3cm}
 
15155
\vspace{0.3cm}
 
15156
\subsubsection{RPC name:~get\_by\_uuid}
 
15157
 
 
15158
{\bf Overview:} 
 
15159
Get a reference to the DPCI instance with the specified UUID.
 
15160
 
 
15161
 \noindent {\bf Signature:} 
 
15162
\begin{verbatim} (DPCI ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
15163
 
 
15164
 
 
15165
\noindent{\bf Arguments:}
 
15166
 
 
15167
 
 
15168
\vspace{0.3cm}
 
15169
\begin{tabular}{|c|c|p{7cm}|}
 
15170
 \hline
 
15171
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15172
{\tt string } & uuid & UUID of object to return \\ \hline 
 
15173
 
 
15174
\end{tabular}
 
15175
 
 
15176
\vspace{0.3cm}
 
15177
 
 
15178
 \noindent {\bf Return Type:} 
 
15179
{\tt 
 
15180
DPCI ref
 
15181
}
 
15182
 
 
15183
 
 
15184
reference to the object
 
15185
\vspace{0.3cm}
 
15186
\vspace{0.3cm}
 
15187
\vspace{0.3cm}
 
15188
\subsubsection{RPC name:~get\_record}
 
15189
 
 
15190
{\bf Overview:} 
 
15191
Get a record containing the current state of the given DPCI.
 
15192
 
 
15193
 \noindent {\bf Signature:} 
 
15194
\begin{verbatim} (DPCI record) get_record (session_id s, DPCI ref self)\end{verbatim}
 
15195
 
 
15196
 
 
15197
\noindent{\bf Arguments:}
 
15198
 
 
15199
 
 
15200
\vspace{0.3cm}
 
15201
\begin{tabular}{|c|c|p{7cm}|}
 
15202
 \hline
 
15203
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15204
{\tt DPCI ref } & self & reference to the object \\ \hline 
 
15205
 
 
15206
\end{tabular}
 
15207
 
 
15208
\vspace{0.3cm}
 
15209
 
 
15210
 \noindent {\bf Return Type:} 
 
15211
{\tt 
 
15212
DPCI record
 
15213
}
 
15214
 
 
15215
 
 
15216
all fields from the object
 
15217
\vspace{0.3cm}
 
15218
\vspace{0.3cm}
 
15219
\vspace{0.3cm}
 
15220
 
 
15221
\vspace{1cm}
 
15222
\newpage
 
15223
\section{Class: PPCI}
 
15224
\subsection{Fields for class: PPCI}
 
15225
\begin{longtable}{|lllp{0.38\textwidth}|}
 
15226
\hline
 
15227
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf PPCI} \\
 
15228
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
15229
physical PCI device.}} \\
 
15230
\hline
 
15231
Quals & Field & Type & Description \\
 
15232
\hline
 
15233
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
15234
$\mathit{RO}_\mathit{run}$ &  {\tt host} & host ref &  the physical machine to which this PPCI is connected \\
 
15235
$\mathit{RO}_\mathit{run}$ &  {\tt domain} & int & the domain number \\
 
15236
$\mathit{RO}_\mathit{run}$ &  {\tt bus} & int & the bus number \\
 
15237
$\mathit{RO}_\mathit{run}$ &  {\tt slot} & int & the slot number \\
 
15238
$\mathit{RO}_\mathit{run}$ &  {\tt func} & int & the func number \\
 
15239
$\mathit{RO}_\mathit{run}$ &  {\tt name} & string & the PCI name \\
 
15240
$\mathit{RO}_\mathit{run}$ &  {\tt vendor\_id} & int & the vendor ID \\
 
15241
$\mathit{RO}_\mathit{run}$ &  {\tt vendor\_name} & string & the vendor name \\
 
15242
$\mathit{RO}_\mathit{run}$ &  {\tt device\_id} & int & the device ID \\
 
15243
$\mathit{RO}_\mathit{run}$ &  {\tt device\_name} & string & the device name \\
 
15244
$\mathit{RO}_\mathit{run}$ &  {\tt revision\_id} & int & the revision ID \\
 
15245
$\mathit{RO}_\mathit{run}$ &  {\tt class\_code} & int & the class code \\
 
15246
$\mathit{RO}_\mathit{run}$ &  {\tt class\_name} & string & the class name \\
 
15247
$\mathit{RO}_\mathit{run}$ &  {\tt subsystem\_vendor\_id} & int & the subsystem vendor ID \\
 
15248
$\mathit{RO}_\mathit{run}$ &  {\tt subsystem\_vendor\_name} & string & the subsystem vendor name \\
 
15249
$\mathit{RO}_\mathit{run}$ &  {\tt subsystem\_id} & int & the subsystem ID \\
 
15250
$\mathit{RO}_\mathit{run}$ &  {\tt subsystem\_name} & string & the subsystem name \\
 
15251
$\mathit{RO}_\mathit{run}$ &  {\tt driver} & string & the driver name \\
 
15252
\hline
 
15253
\end{longtable}
 
15254
\subsection{RPCs associated with class: PPCI}
 
15255
\subsubsection{RPC name:~get\_all}
 
15256
 
 
15257
{\bf Overview:} 
 
15258
Return a list of all the PPCIs known to the system.
 
15259
 
 
15260
 \noindent {\bf Signature:} 
 
15261
\begin{verbatim} ((PPCI ref) Set) get_all (session_id s)\end{verbatim}
 
15262
 
 
15263
 
 
15264
\vspace{0.3cm}
 
15265
 
 
15266
 \noindent {\bf Return Type:} 
 
15267
{\tt 
 
15268
(PPCI ref) Set
 
15269
}
 
15270
 
 
15271
 
 
15272
references to all objects
 
15273
\vspace{0.3cm}
 
15274
\vspace{0.3cm}
 
15275
\vspace{0.3cm}
 
15276
\subsubsection{RPC name:~get\_uuid}
 
15277
 
 
15278
{\bf Overview:} 
 
15279
Get the uuid field of the given PPCI.
 
15280
 
 
15281
 \noindent {\bf Signature:} 
 
15282
\begin{verbatim} string get_uuid (session_id s, PPCI ref self)\end{verbatim}
 
15283
 
 
15284
 
 
15285
\noindent{\bf Arguments:}
 
15286
 
 
15287
 
 
15288
\vspace{0.3cm}
 
15289
\begin{tabular}{|c|c|p{7cm}|}
 
15290
 \hline
 
15291
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15292
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15293
 
 
15294
\end{tabular}
 
15295
 
 
15296
\vspace{0.3cm}
 
15297
 
 
15298
 \noindent {\bf Return Type:} 
 
15299
{\tt 
 
15300
string
 
15301
}
 
15302
 
 
15303
 
 
15304
value of the field
 
15305
\vspace{0.3cm}
 
15306
\vspace{0.3cm}
 
15307
\vspace{0.3cm}
 
15308
\subsubsection{RPC name:~get\_host}
 
15309
 
 
15310
{\bf Overview:} 
 
15311
Get the host field of the given PPCI.
 
15312
 
 
15313
 \noindent {\bf Signature:} 
 
15314
\begin{verbatim} (host ref) get_host (session_id s, PPCI ref self)\end{verbatim}
 
15315
 
 
15316
 
 
15317
\noindent{\bf Arguments:}
 
15318
 
 
15319
 
 
15320
\vspace{0.3cm}
 
15321
\begin{tabular}{|c|c|p{7cm}|}
 
15322
 \hline
 
15323
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15324
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15325
 
 
15326
\end{tabular}
 
15327
 
 
15328
\vspace{0.3cm}
 
15329
 
 
15330
 \noindent {\bf Return Type:} 
 
15331
{\tt 
 
15332
host ref
 
15333
}
 
15334
 
 
15335
 
 
15336
value of the field
 
15337
\vspace{0.3cm}
 
15338
\vspace{0.3cm}
 
15339
\vspace{0.3cm}
 
15340
\subsubsection{RPC name:~get\_domain}
 
15341
 
 
15342
{\bf Overview:} 
 
15343
Get the domain field of the given PPCI.
 
15344
 
 
15345
 \noindent {\bf Signature:} 
 
15346
\begin{verbatim} int get_domain (session_id s, PPCI ref self)\end{verbatim}
 
15347
 
 
15348
 
 
15349
\noindent{\bf Arguments:}
 
15350
 
 
15351
 
 
15352
\vspace{0.3cm}
 
15353
\begin{tabular}{|c|c|p{7cm}|}
 
15354
 \hline
 
15355
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15356
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15357
 
 
15358
\end{tabular}
 
15359
 
 
15360
\vspace{0.3cm}
 
15361
 
 
15362
 \noindent {\bf Return Type:} 
 
15363
{\tt 
 
15364
int
 
15365
}
 
15366
 
 
15367
 
 
15368
value of the field
 
15369
\vspace{0.3cm}
 
15370
\vspace{0.3cm}
 
15371
\vspace{0.3cm}
 
15372
\subsubsection{RPC name:~get\_bus}
 
15373
 
 
15374
{\bf Overview:} 
 
15375
Get the bus field of the given PPCI.
 
15376
 
 
15377
 \noindent {\bf Signature:} 
 
15378
\begin{verbatim} int get_bus (session_id s, PPCI ref self)\end{verbatim}
 
15379
 
 
15380
 
 
15381
\noindent{\bf Arguments:}
 
15382
 
 
15383
 
 
15384
\vspace{0.3cm}
 
15385
\begin{tabular}{|c|c|p{7cm}|}
 
15386
 \hline
 
15387
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15388
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15389
 
 
15390
\end{tabular}
 
15391
 
 
15392
\vspace{0.3cm}
 
15393
 
 
15394
 \noindent {\bf Return Type:} 
 
15395
{\tt 
 
15396
int
 
15397
}
 
15398
 
 
15399
 
 
15400
value of the field
 
15401
\vspace{0.3cm}
 
15402
\vspace{0.3cm}
 
15403
\vspace{0.3cm}
 
15404
\subsubsection{RPC name:~get\_slot}
 
15405
 
 
15406
{\bf Overview:} 
 
15407
Get the slot field of the given PPCI.
 
15408
 
 
15409
 \noindent {\bf Signature:} 
 
15410
\begin{verbatim} int get_slot (session_id s, PPCI ref self)\end{verbatim}
 
15411
 
 
15412
 
 
15413
\noindent{\bf Arguments:}
 
15414
 
 
15415
 
 
15416
\vspace{0.3cm}
 
15417
\begin{tabular}{|c|c|p{7cm}|}
 
15418
 \hline
 
15419
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15420
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15421
 
 
15422
\end{tabular}
 
15423
 
 
15424
\vspace{0.3cm}
 
15425
 
 
15426
 \noindent {\bf Return Type:} 
 
15427
{\tt 
 
15428
int
 
15429
}
 
15430
 
 
15431
 
 
15432
value of the field
 
15433
\vspace{0.3cm}
 
15434
\vspace{0.3cm}
 
15435
\vspace{0.3cm}
 
15436
\subsubsection{RPC name:~get\_func}
 
15437
 
 
15438
{\bf Overview:} 
 
15439
Get the func field of the given PPCI.
 
15440
 
 
15441
 \noindent {\bf Signature:} 
 
15442
\begin{verbatim} int get_func (session_id s, PPCI ref self)\end{verbatim}
 
15443
 
 
15444
 
 
15445
\noindent{\bf Arguments:}
 
15446
 
 
15447
 
 
15448
\vspace{0.3cm}
 
15449
\begin{tabular}{|c|c|p{7cm}|}
 
15450
 \hline
 
15451
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15452
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15453
 
 
15454
\end{tabular}
 
15455
 
 
15456
\vspace{0.3cm}
 
15457
 
 
15458
 \noindent {\bf Return Type:} 
 
15459
{\tt 
 
15460
int
 
15461
}
 
15462
 
 
15463
 
 
15464
value of the field
 
15465
\vspace{0.3cm}
 
15466
\vspace{0.3cm}
 
15467
\vspace{0.3cm}
 
15468
\subsubsection{RPC name:~get\_name}
 
15469
 
 
15470
{\bf Overview:} 
 
15471
Get the name field of the given PPCI.
 
15472
 
 
15473
 \noindent {\bf Signature:} 
 
15474
\begin{verbatim} string get_name (session_id s, PPCI ref self)\end{verbatim}
 
15475
 
 
15476
 
 
15477
\noindent{\bf Arguments:}
 
15478
 
 
15479
 
 
15480
\vspace{0.3cm}
 
15481
\begin{tabular}{|c|c|p{7cm}|}
 
15482
 \hline
 
15483
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15484
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15485
 
 
15486
\end{tabular}
 
15487
 
 
15488
\vspace{0.3cm}
 
15489
 
 
15490
 \noindent {\bf Return Type:} 
 
15491
{\tt 
 
15492
string
 
15493
}
 
15494
 
 
15495
 
 
15496
value of the field
 
15497
\vspace{0.3cm}
 
15498
\vspace{0.3cm}
 
15499
\vspace{0.3cm}
 
15500
\subsubsection{RPC name:~get\_vendor\_id}
 
15501
 
 
15502
{\bf Overview:} 
 
15503
Get the vendor\_id field of the given PPCI.
 
15504
 
 
15505
 \noindent {\bf Signature:} 
 
15506
\begin{verbatim} int get_vendor_id (session_id s, PPCI ref self)\end{verbatim}
 
15507
 
 
15508
 
 
15509
\noindent{\bf Arguments:}
 
15510
 
 
15511
 
 
15512
\vspace{0.3cm}
 
15513
\begin{tabular}{|c|c|p{7cm}|}
 
15514
 \hline
 
15515
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15516
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15517
 
 
15518
\end{tabular}
 
15519
 
 
15520
\vspace{0.3cm}
 
15521
 
 
15522
 \noindent {\bf Return Type:} 
 
15523
{\tt 
 
15524
int
 
15525
}
 
15526
 
 
15527
 
 
15528
value of the field
 
15529
\vspace{0.3cm}
 
15530
\vspace{0.3cm}
 
15531
\vspace{0.3cm}
 
15532
\subsubsection{RPC name:~get\_vendor\_name}
 
15533
 
 
15534
{\bf Overview:} 
 
15535
Get the vendor\_name field of the given PPCI.
 
15536
 
 
15537
 \noindent {\bf Signature:} 
 
15538
\begin{verbatim} string get_vendor_name (session_id s, PPCI ref self)\end{verbatim}
 
15539
 
 
15540
 
 
15541
\noindent{\bf Arguments:}
 
15542
 
 
15543
 
 
15544
\vspace{0.3cm}
 
15545
\begin{tabular}{|c|c|p{7cm}|}
 
15546
 \hline
 
15547
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15548
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15549
 
 
15550
\end{tabular}
 
15551
 
 
15552
\vspace{0.3cm}
 
15553
 
 
15554
 \noindent {\bf Return Type:} 
 
15555
{\tt 
 
15556
string
 
15557
}
 
15558
 
 
15559
 
 
15560
value of the field
 
15561
\vspace{0.3cm}
 
15562
\vspace{0.3cm}
 
15563
\vspace{0.3cm}
 
15564
\subsubsection{RPC name:~get\_device\_id}
 
15565
 
 
15566
{\bf Overview:} 
 
15567
Get the device\_id field of the given PPCI.
 
15568
 
 
15569
 \noindent {\bf Signature:} 
 
15570
\begin{verbatim} int get_device_id (session_id s, PPCI ref self)\end{verbatim}
 
15571
 
 
15572
 
 
15573
\noindent{\bf Arguments:}
 
15574
 
 
15575
 
 
15576
\vspace{0.3cm}
 
15577
\begin{tabular}{|c|c|p{7cm}|}
 
15578
 \hline
 
15579
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15580
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15581
 
 
15582
\end{tabular}
 
15583
 
 
15584
\vspace{0.3cm}
 
15585
 
 
15586
 \noindent {\bf Return Type:} 
 
15587
{\tt 
 
15588
int
 
15589
}
 
15590
 
 
15591
 
 
15592
value of the field
 
15593
\vspace{0.3cm}
 
15594
\vspace{0.3cm}
 
15595
\vspace{0.3cm}
 
15596
\subsubsection{RPC name:~get\_device\_name}
 
15597
 
 
15598
{\bf Overview:} 
 
15599
Get the device\_name field of the given PPCI.
 
15600
 
 
15601
 \noindent {\bf Signature:} 
 
15602
\begin{verbatim} string get_device_name (session_id s, PPCI ref self)\end{verbatim}
 
15603
 
 
15604
 
 
15605
\noindent{\bf Arguments:}
 
15606
 
 
15607
 
 
15608
\vspace{0.3cm}
 
15609
\begin{tabular}{|c|c|p{7cm}|}
 
15610
 \hline
 
15611
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15612
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15613
 
 
15614
\end{tabular}
 
15615
 
 
15616
\vspace{0.3cm}
 
15617
 
 
15618
 \noindent {\bf Return Type:} 
 
15619
{\tt 
 
15620
string
 
15621
}
 
15622
 
 
15623
 
 
15624
value of the field
 
15625
\vspace{0.3cm}
 
15626
\vspace{0.3cm}
 
15627
\vspace{0.3cm}
 
15628
\subsubsection{RPC name:~get\_revision\_id}
 
15629
 
 
15630
{\bf Overview:} 
 
15631
Get the revision\_id field of the given PPCI.
 
15632
 
 
15633
 \noindent {\bf Signature:} 
 
15634
\begin{verbatim} int get_revision_id (session_id s, PPCI ref self)\end{verbatim}
 
15635
 
 
15636
 
 
15637
\noindent{\bf Arguments:}
 
15638
 
 
15639
 
 
15640
\vspace{0.3cm}
 
15641
\begin{tabular}{|c|c|p{7cm}|}
 
15642
 \hline
 
15643
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15644
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15645
 
 
15646
\end{tabular}
 
15647
 
 
15648
\vspace{0.3cm}
 
15649
 
 
15650
 \noindent {\bf Return Type:} 
 
15651
{\tt 
 
15652
int
 
15653
}
 
15654
 
 
15655
 
 
15656
value of the field
 
15657
\vspace{0.3cm}
 
15658
\vspace{0.3cm}
 
15659
\vspace{0.3cm}
 
15660
\subsubsection{RPC name:~get\_class\_code}
 
15661
 
 
15662
{\bf Overview:} 
 
15663
Get the class\_code field of the given PPCI.
 
15664
 
 
15665
 \noindent {\bf Signature:} 
 
15666
\begin{verbatim} int get_class_code (session_id s, PPCI ref self)\end{verbatim}
 
15667
 
 
15668
 
 
15669
\noindent{\bf Arguments:}
 
15670
 
 
15671
 
 
15672
\vspace{0.3cm}
 
15673
\begin{tabular}{|c|c|p{7cm}|}
 
15674
 \hline
 
15675
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15676
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15677
 
 
15678
\end{tabular}
 
15679
 
 
15680
\vspace{0.3cm}
 
15681
 
 
15682
 \noindent {\bf Return Type:} 
 
15683
{\tt 
 
15684
int
 
15685
}
 
15686
 
 
15687
 
 
15688
value of the field
 
15689
\vspace{0.3cm}
 
15690
\vspace{0.3cm}
 
15691
\vspace{0.3cm}
 
15692
\subsubsection{RPC name:~get\_class\_name}
 
15693
 
 
15694
{\bf Overview:} 
 
15695
Get the class\_name field of the given PPCI.
 
15696
 
 
15697
 \noindent {\bf Signature:} 
 
15698
\begin{verbatim} string get_class_name (session_id s, PPCI ref self)\end{verbatim}
 
15699
 
 
15700
 
 
15701
\noindent{\bf Arguments:}
 
15702
 
 
15703
 
 
15704
\vspace{0.3cm}
 
15705
\begin{tabular}{|c|c|p{7cm}|}
 
15706
 \hline
 
15707
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15708
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15709
 
 
15710
\end{tabular}
 
15711
 
 
15712
\vspace{0.3cm}
 
15713
 
 
15714
 \noindent {\bf Return Type:} 
 
15715
{\tt 
 
15716
string
 
15717
}
 
15718
 
 
15719
 
 
15720
value of the field
 
15721
\vspace{0.3cm}
 
15722
\vspace{0.3cm}
 
15723
\vspace{0.3cm}
 
15724
\subsubsection{RPC name:~get\_subsystem\_vendor\_id}
 
15725
 
 
15726
{\bf Overview:} 
 
15727
Get the subsystem\_vendor\_id field of the given PPCI.
 
15728
 
 
15729
 \noindent {\bf Signature:} 
 
15730
\begin{verbatim} int get_subsystem_vendor_id (session_id s, PPCI ref self)\end{verbatim}
 
15731
 
 
15732
 
 
15733
\noindent{\bf Arguments:}
 
15734
 
 
15735
 
 
15736
\vspace{0.3cm}
 
15737
\begin{tabular}{|c|c|p{7cm}|}
 
15738
 \hline
 
15739
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15740
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15741
 
 
15742
\end{tabular}
 
15743
 
 
15744
\vspace{0.3cm}
 
15745
 
 
15746
 \noindent {\bf Return Type:} 
 
15747
{\tt 
 
15748
int
 
15749
}
 
15750
 
 
15751
 
 
15752
value of the field
 
15753
\vspace{0.3cm}
 
15754
\vspace{0.3cm}
 
15755
\vspace{0.3cm}
 
15756
\subsubsection{RPC name:~get\_subsystem\_vendor\_name}
 
15757
 
 
15758
{\bf Overview:} 
 
15759
Get the subsystem\_vendor\_name field of the given PPCI.
 
15760
 
 
15761
 \noindent {\bf Signature:} 
 
15762
\begin{verbatim} string get_subsystem_vendor_name (session_id s, PPCI ref self)\end{verbatim}
 
15763
 
 
15764
 
 
15765
\noindent{\bf Arguments:}
 
15766
 
 
15767
 
 
15768
\vspace{0.3cm}
 
15769
\begin{tabular}{|c|c|p{7cm}|}
 
15770
 \hline
 
15771
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15772
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15773
 
 
15774
\end{tabular}
 
15775
 
 
15776
\vspace{0.3cm}
 
15777
 
 
15778
 \noindent {\bf Return Type:} 
 
15779
{\tt 
 
15780
string
 
15781
}
 
15782
 
 
15783
 
 
15784
value of the field
 
15785
\vspace{0.3cm}
 
15786
\vspace{0.3cm}
 
15787
\vspace{0.3cm}
 
15788
\subsubsection{RPC name:~get\_subsystem\_id}
 
15789
 
 
15790
{\bf Overview:} 
 
15791
Get the subsystem\_id field of the given PPCI.
 
15792
 
 
15793
 \noindent {\bf Signature:} 
 
15794
\begin{verbatim} int get_subsystem_id (session_id s, PPCI ref self)\end{verbatim}
 
15795
 
 
15796
 
 
15797
\noindent{\bf Arguments:}
 
15798
 
 
15799
 
 
15800
\vspace{0.3cm}
 
15801
\begin{tabular}{|c|c|p{7cm}|}
 
15802
 \hline
 
15803
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15804
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15805
 
 
15806
\end{tabular}
 
15807
 
 
15808
\vspace{0.3cm}
 
15809
 
 
15810
 \noindent {\bf Return Type:} 
 
15811
{\tt 
 
15812
int
 
15813
}
 
15814
 
 
15815
 
 
15816
value of the field
 
15817
\vspace{0.3cm}
 
15818
\vspace{0.3cm}
 
15819
\vspace{0.3cm}
 
15820
\subsubsection{RPC name:~get\_subsystem\_name}
 
15821
 
 
15822
{\bf Overview:} 
 
15823
Get the subsystem\_name field of the given PPCI.
 
15824
 
 
15825
 \noindent {\bf Signature:} 
 
15826
\begin{verbatim} string get_subsystem_name (session_id s, PPCI ref self)\end{verbatim}
 
15827
 
 
15828
 
 
15829
\noindent{\bf Arguments:}
 
15830
 
 
15831
 
 
15832
\vspace{0.3cm}
 
15833
\begin{tabular}{|c|c|p{7cm}|}
 
15834
 \hline
 
15835
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15836
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15837
 
 
15838
\end{tabular}
 
15839
 
 
15840
\vspace{0.3cm}
 
15841
 
 
15842
 \noindent {\bf Return Type:} 
 
15843
{\tt 
 
15844
string
 
15845
}
 
15846
 
 
15847
 
 
15848
value of the field
 
15849
\vspace{0.3cm}
 
15850
\vspace{0.3cm}
 
15851
\vspace{0.3cm}
 
15852
\subsubsection{RPC name:~get\_driver}
 
15853
 
 
15854
{\bf Overview:} 
 
15855
Get the driver field of the given PPCI.
 
15856
 
 
15857
 \noindent {\bf Signature:} 
 
15858
\begin{verbatim} string get_driver (session_id s, PPCI ref self)\end{verbatim}
 
15859
 
 
15860
 
 
15861
\noindent{\bf Arguments:}
 
15862
 
 
15863
 
 
15864
\vspace{0.3cm}
 
15865
\begin{tabular}{|c|c|p{7cm}|}
 
15866
 \hline
 
15867
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15868
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15869
 
 
15870
\end{tabular}
 
15871
 
 
15872
\vspace{0.3cm}
 
15873
 
 
15874
 \noindent {\bf Return Type:} 
 
15875
{\tt 
 
15876
string
 
15877
}
 
15878
 
 
15879
 
 
15880
value of the field
 
15881
\vspace{0.3cm}
 
15882
\vspace{0.3cm}
 
15883
\vspace{0.3cm}
 
15884
\subsubsection{RPC name:~get\_by\_uuid}
 
15885
 
 
15886
{\bf Overview:} 
 
15887
Get a reference to the PPCI instance with the specified UUID.
 
15888
 
 
15889
 \noindent {\bf Signature:} 
 
15890
\begin{verbatim} (PPCI ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
15891
 
 
15892
 
 
15893
\noindent{\bf Arguments:}
 
15894
 
 
15895
 
 
15896
\vspace{0.3cm}
 
15897
\begin{tabular}{|c|c|p{7cm}|}
 
15898
 \hline
 
15899
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15900
{\tt string } & uuid & UUID of object to return \\ \hline 
 
15901
 
 
15902
\end{tabular}
 
15903
 
 
15904
\vspace{0.3cm}
 
15905
 
 
15906
 \noindent {\bf Return Type:} 
 
15907
{\tt 
 
15908
PPCI ref
 
15909
}
 
15910
 
 
15911
 
 
15912
reference to the object
 
15913
\vspace{0.3cm}
 
15914
\vspace{0.3cm}
 
15915
\vspace{0.3cm}
 
15916
\subsubsection{RPC name:~get\_record}
 
15917
 
 
15918
{\bf Overview:} 
 
15919
Get a record containing the current state of the given PPCI.
 
15920
 
 
15921
 \noindent {\bf Signature:} 
 
15922
\begin{verbatim} (PPCI record) get_record (session_id s, PPCI ref self)\end{verbatim}
 
15923
 
 
15924
 
 
15925
\noindent{\bf Arguments:}
 
15926
 
 
15927
 
 
15928
\vspace{0.3cm}
 
15929
\begin{tabular}{|c|c|p{7cm}|}
 
15930
 \hline
 
15931
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
15932
{\tt PPCI ref } & self & reference to the object \\ \hline 
 
15933
 
 
15934
\end{tabular}
 
15935
 
 
15936
\vspace{0.3cm}
 
15937
 
 
15938
 \noindent {\bf Return Type:} 
 
15939
{\tt 
 
15940
PPCI record
 
15941
}
 
15942
 
 
15943
 
 
15944
all fields from the object
 
15945
\vspace{0.3cm}
 
15946
\vspace{0.3cm}
 
15947
\vspace{0.3cm}
 
15948
 
 
15949
\vspace{1cm}
 
15950
\newpage
 
15951
\section{Class: DSCSI}
 
15952
\subsection{Fields for class: DSCSI}
 
15953
\begin{longtable}{|lllp{0.38\textwidth}|}
 
15954
\hline
 
15955
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf DSCSI} \\
 
15956
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
15957
half-virtualized SCSI device.}} \\
 
15958
\hline
 
15959
Quals & Field & Type & Description \\
 
15960
\hline
 
15961
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
15962
$\mathit{RO}_\mathit{inst}$ &  {\tt VM} & VM ref & the virtual machine \\
 
15963
$\mathit{RO}_\mathit{inst}$ &  {\tt PSCSI} & PSCSI ref & the physical SCSI device \\
 
15964
$\mathit{RO}_\mathit{run}$ &  {\tt HBA} & DSCSI\_HBA ref & the half-virtualized SCSI host bus adapter \\
 
15965
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_host} & int & the virtual host number \\
 
15966
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_channel} & int & the virtual channel number \\
 
15967
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_target} & int & the virtual target number \\
 
15968
$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_lun} & int & the virtual logical unit number \\
 
15969
$\mathit{RO}_\mathit{inst}$ &  {\tt virtual\_HCTL} & string & the virtual HCTL \\
 
15970
$\mathit{RO}_\mathit{run}$ &  {\tt runtime\_properties} & (string $\rightarrow$ string) Map & Device runtime properties \\
 
15971
\hline
 
15972
\end{longtable}
 
15973
\subsection{RPCs associated with class: DSCSI}
 
15974
\subsubsection{RPC name:~get\_all}
 
15975
 
 
15976
{\bf Overview:} 
 
15977
Return a list of all the DSCSIs known to the system.
 
15978
 
 
15979
 \noindent {\bf Signature:} 
 
15980
\begin{verbatim} ((DSCSI ref) Set) get_all (session_id s)\end{verbatim}
 
15981
 
 
15982
 
 
15983
\vspace{0.3cm}
 
15984
 
 
15985
 \noindent {\bf Return Type:} 
 
15986
{\tt 
 
15987
(DSCSI ref) Set
 
15988
}
 
15989
 
 
15990
 
 
15991
references to all objects
 
15992
\vspace{0.3cm}
 
15993
\vspace{0.3cm}
 
15994
\vspace{0.3cm}
 
15995
\subsubsection{RPC name:~get\_uuid}
 
15996
 
 
15997
{\bf Overview:} 
 
15998
Get the uuid field of the given DSCSI.
 
15999
 
 
16000
 \noindent {\bf Signature:} 
 
16001
\begin{verbatim} string get_uuid (session_id s, DSCSI ref self)\end{verbatim}
 
16002
 
 
16003
 
 
16004
\noindent{\bf Arguments:}
 
16005
 
 
16006
 
 
16007
\vspace{0.3cm}
 
16008
\begin{tabular}{|c|c|p{7cm}|}
 
16009
 \hline
 
16010
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16011
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16012
 
 
16013
\end{tabular}
 
16014
 
 
16015
\vspace{0.3cm}
 
16016
 
 
16017
 \noindent {\bf Return Type:} 
 
16018
{\tt
 
16019
string
 
16020
}
 
16021
 
 
16022
 
 
16023
value of the field
 
16024
\vspace{0.3cm}
 
16025
\vspace{0.3cm}
 
16026
\vspace{0.3cm}
 
16027
\subsubsection{RPC name:~get\_VM}
 
16028
 
 
16029
{\bf Overview:} 
 
16030
Get the VM field of the given DSCSI.
 
16031
 
 
16032
 \noindent {\bf Signature:} 
 
16033
\begin{verbatim} (VM ref) get_VM (session_id s, DSCSI ref self)\end{verbatim}
 
16034
 
 
16035
 
 
16036
\noindent{\bf Arguments:}
 
16037
 
 
16038
 
 
16039
\vspace{0.3cm}
 
16040
\begin{tabular}{|c|c|p{7cm}|}
 
16041
 \hline
 
16042
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16043
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16044
 
 
16045
\end{tabular}
 
16046
 
 
16047
\vspace{0.3cm}
 
16048
 
 
16049
 \noindent {\bf Return Type:} 
 
16050
{\tt 
 
16051
VM ref
 
16052
}
 
16053
 
 
16054
 
 
16055
value of the field
 
16056
\vspace{0.3cm}
 
16057
\vspace{0.3cm}
 
16058
\vspace{0.3cm}
 
16059
\subsubsection{RPC name:~get\_PSCSI}
 
16060
 
 
16061
{\bf Overview:} 
 
16062
Get the PSCSI field of the given DSCSI.
 
16063
 
 
16064
 \noindent {\bf Signature:} 
 
16065
\begin{verbatim} (PSCSI ref) get_PSCSI (session_id s, DSCSI ref self)\end{verbatim}
 
16066
 
 
16067
 
 
16068
\noindent{\bf Arguments:}
 
16069
 
 
16070
 
 
16071
\vspace{0.3cm}
 
16072
\begin{tabular}{|c|c|p{7cm}|}
 
16073
 \hline
 
16074
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16075
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16076
 
 
16077
\end{tabular}
 
16078
 
 
16079
\vspace{0.3cm}
 
16080
 
 
16081
 \noindent {\bf Return Type:} 
 
16082
{\tt 
 
16083
PSCSI ref
 
16084
}
 
16085
 
 
16086
 
 
16087
value of the field
 
16088
\vspace{0.3cm}
 
16089
\vspace{0.3cm}
 
16090
\vspace{0.3cm}
 
16091
\subsubsection{RPC name:~get\_HBA}
 
16092
 
 
16093
{\bf Overview:} 
 
16094
Get the HBA field of the given DSCSI.
 
16095
 
 
16096
 \noindent {\bf Signature:} 
 
16097
\begin{verbatim} (DSCSI_HBA ref) get_HBA (session_id s, DSCSI ref self)\end{verbatim}
 
16098
 
 
16099
 
 
16100
\noindent{\bf Arguments:}
 
16101
 
 
16102
 
 
16103
\vspace{0.3cm}
 
16104
\begin{tabular}{|c|c|p{7cm}|}
 
16105
 \hline
 
16106
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16107
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16108
 
 
16109
\end{tabular}
 
16110
 
 
16111
\vspace{0.3cm}
 
16112
 
 
16113
 \noindent {\bf Return Type:} 
 
16114
{\tt 
 
16115
DSCSI\_HBA ref
 
16116
}
 
16117
 
 
16118
 
 
16119
value of the field
 
16120
\vspace{0.3cm}
 
16121
\vspace{0.3cm}
 
16122
\vspace{0.3cm}
 
16123
\subsubsection{RPC name:~get\_virtual\_host}
 
16124
 
 
16125
{\bf Overview:} 
 
16126
Get the virtual\_host field of the given DSCSI.
 
16127
 
 
16128
 \noindent {\bf Signature:} 
 
16129
\begin{verbatim} int get_virtual_host (session_id s, DSCSI ref self)\end{verbatim}
 
16130
 
 
16131
 
 
16132
\noindent{\bf Arguments:}
 
16133
 
 
16134
 
 
16135
\vspace{0.3cm}
 
16136
\begin{tabular}{|c|c|p{7cm}|}
 
16137
 \hline
 
16138
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16139
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16140
 
 
16141
\end{tabular}
 
16142
 
 
16143
\vspace{0.3cm}
 
16144
 
 
16145
 \noindent {\bf Return Type:} 
 
16146
{\tt 
 
16147
int
 
16148
}
 
16149
 
 
16150
 
 
16151
value of the field
 
16152
\vspace{0.3cm}
 
16153
\vspace{0.3cm}
 
16154
\vspace{0.3cm}
 
16155
\subsubsection{RPC name:~get\_virtual\_channel}
 
16156
 
 
16157
{\bf Overview:} 
 
16158
Get the virtual\_channel field of the given DSCSI.
 
16159
 
 
16160
 \noindent {\bf Signature:} 
 
16161
\begin{verbatim} int get_virtual_channel (session_id s, DSCSI ref self)\end{verbatim}
 
16162
 
 
16163
 
 
16164
\noindent{\bf Arguments:}
 
16165
 
 
16166
 
 
16167
\vspace{0.3cm}
 
16168
\begin{tabular}{|c|c|p{7cm}|}
 
16169
 \hline
 
16170
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16171
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16172
 
 
16173
\end{tabular}
 
16174
 
 
16175
\vspace{0.3cm}
 
16176
 
 
16177
 \noindent {\bf Return Type:} 
 
16178
{\tt 
 
16179
int
 
16180
}
 
16181
 
 
16182
 
 
16183
value of the field
 
16184
\vspace{0.3cm}
 
16185
\vspace{0.3cm}
 
16186
\vspace{0.3cm}
 
16187
\subsubsection{RPC name:~get\_virtual\_target}
 
16188
 
 
16189
{\bf Overview:} 
 
16190
Get the virtual\_target field of the given DSCSI.
 
16191
 
 
16192
 \noindent {\bf Signature:} 
 
16193
\begin{verbatim} int get_virtual_target (session_id s, DSCSI ref self)\end{verbatim}
 
16194
 
 
16195
 
 
16196
\noindent{\bf Arguments:}
 
16197
 
 
16198
 
 
16199
\vspace{0.3cm}
 
16200
\begin{tabular}{|c|c|p{7cm}|}
 
16201
 \hline
 
16202
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16203
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16204
 
 
16205
\end{tabular}
 
16206
 
 
16207
\vspace{0.3cm}
 
16208
 
 
16209
 \noindent {\bf Return Type:} 
 
16210
{\tt 
 
16211
int
 
16212
}
 
16213
 
 
16214
 
 
16215
value of the field
 
16216
\vspace{0.3cm}
 
16217
\vspace{0.3cm}
 
16218
\vspace{0.3cm}
 
16219
\subsubsection{RPC name:~get\_virtual\_lun}
 
16220
 
 
16221
{\bf Overview:} 
 
16222
Get the virtual\_lun field of the given DSCSI.
 
16223
 
 
16224
 \noindent {\bf Signature:} 
 
16225
\begin{verbatim} int get_virtual_lun (session_id s, DSCSI ref self)\end{verbatim}
 
16226
 
 
16227
 
 
16228
\noindent{\bf Arguments:}
 
16229
 
 
16230
 
 
16231
\vspace{0.3cm}
 
16232
\begin{tabular}{|c|c|p{7cm}|}
 
16233
 \hline
 
16234
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16235
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16236
 
 
16237
\end{tabular}
 
16238
 
 
16239
\vspace{0.3cm}
 
16240
 
 
16241
 \noindent {\bf Return Type:} 
 
16242
{\tt 
 
16243
int
 
16244
}
 
16245
 
 
16246
 
 
16247
value of the field
 
16248
\vspace{0.3cm}
 
16249
\vspace{0.3cm}
 
16250
\vspace{0.3cm}
 
16251
\subsubsection{RPC name:~get\_virtual\_HCTL}
 
16252
 
 
16253
{\bf Overview:} 
 
16254
Get the virtual\_HCTL field of the given DSCSI.
 
16255
 
 
16256
 \noindent {\bf Signature:} 
 
16257
\begin{verbatim} string get_virtual_HCTL (session_id s, DSCSI ref self)\end{verbatim}
 
16258
 
 
16259
 
 
16260
\noindent{\bf Arguments:}
 
16261
 
 
16262
 
 
16263
\vspace{0.3cm}
 
16264
\begin{tabular}{|c|c|p{7cm}|}
 
16265
 \hline
 
16266
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16267
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16268
 
 
16269
\end{tabular}
 
16270
 
 
16271
\vspace{0.3cm}
 
16272
 
 
16273
 \noindent {\bf Return Type:} 
 
16274
{\tt 
 
16275
string
 
16276
}
 
16277
 
 
16278
 
 
16279
value of the field
 
16280
\vspace{0.3cm}
 
16281
\vspace{0.3cm}
 
16282
\vspace{0.3cm}
 
16283
\subsubsection{RPC name:~get\_runtime\_properties}
 
16284
 
 
16285
{\bf Overview:} 
 
16286
Get the runtime\_properties field of the given DSCSI.
 
16287
 
 
16288
 \noindent {\bf Signature:} 
 
16289
\begin{verbatim} ((string -> string) Map) get_runtime_properties (session_id s, DSCSI ref self)\end{verbatim}
 
16290
 
 
16291
 
 
16292
\noindent{\bf Arguments:}
 
16293
 
 
16294
 
 
16295
\vspace{0.3cm}
 
16296
\begin{tabular}{|c|c|p{7cm}|}
 
16297
 \hline
 
16298
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16299
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16300
 
 
16301
\end{tabular}
 
16302
 
 
16303
\vspace{0.3cm}
 
16304
 
 
16305
 \noindent {\bf Return Type:} 
 
16306
{\tt 
 
16307
(string $\rightarrow$ string) Map
 
16308
}
 
16309
 
 
16310
 
 
16311
value of the field
 
16312
\vspace{0.3cm}
 
16313
\vspace{0.3cm}
 
16314
\vspace{0.3cm}
 
16315
\subsubsection{RPC name:~create}
 
16316
 
 
16317
{\bf Overview:} 
 
16318
Create a new DSCSI instance, and create a new DSCSI\_HBA instance as needed
 
16319
that the new DSCSI instance connects to, and return the handle of the new
 
16320
DSCSI instance.
 
16321
 
 
16322
 \noindent {\bf Signature:} 
 
16323
\begin{verbatim} (DSCSI ref) create (session_id s, DSCSI record args)\end{verbatim}
 
16324
 
 
16325
 
 
16326
\noindent{\bf Arguments:}
 
16327
 
 
16328
 
 
16329
\vspace{0.3cm}
 
16330
\begin{tabular}{|c|c|p{7cm}|}
 
16331
 \hline
 
16332
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16333
{\tt DSCSI record } & args & All constructor arguments \\ \hline 
 
16334
 
 
16335
\end{tabular}
 
16336
 
 
16337
\vspace{0.3cm}
 
16338
 
 
16339
 \noindent {\bf Return Type:} 
 
16340
{\tt 
 
16341
DSCSI ref
 
16342
}
 
16343
 
 
16344
 
 
16345
reference to the newly created object
 
16346
\vspace{0.3cm}
 
16347
\vspace{0.3cm}
 
16348
\vspace{0.3cm}
 
16349
\subsubsection{RPC name:~destroy}
 
16350
 
 
16351
{\bf Overview:} 
 
16352
Destroy the specified DSCSI instance, and destroy a DSCSI\_HBA instance as
 
16353
needed that the specified DSCSI instance connects to.
 
16354
 
 
16355
 \noindent {\bf Signature:} 
 
16356
\begin{verbatim} void destroy (session_id s, DSCSI ref self)\end{verbatim}
 
16357
 
 
16358
 
 
16359
\noindent{\bf Arguments:}
 
16360
 
 
16361
 
 
16362
\vspace{0.3cm}
 
16363
\begin{tabular}{|c|c|p{7cm}|}
 
16364
 \hline
 
16365
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16366
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16367
 
 
16368
\end{tabular}
 
16369
 
 
16370
\vspace{0.3cm}
 
16371
 
 
16372
 \noindent {\bf Return Type:} 
 
16373
{\tt 
 
16374
void
 
16375
}
 
16376
 
 
16377
 
 
16378
\vspace{0.3cm}
 
16379
\vspace{0.3cm}
 
16380
\vspace{0.3cm}
 
16381
\subsubsection{RPC name:~get\_by\_uuid}
 
16382
 
 
16383
{\bf Overview:} 
 
16384
Get a reference to the DSCSI instance with the specified UUID.
 
16385
 
 
16386
 \noindent {\bf Signature:} 
 
16387
\begin{verbatim} (DSCSI ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
16388
 
 
16389
 
 
16390
\noindent{\bf Arguments:}
 
16391
 
 
16392
 
 
16393
\vspace{0.3cm}
 
16394
\begin{tabular}{|c|c|p{7cm}|}
 
16395
 \hline
 
16396
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16397
{\tt string } & uuid & UUID of object to return \\ \hline 
 
16398
 
 
16399
\end{tabular}
 
16400
 
 
16401
\vspace{0.3cm}
 
16402
 
 
16403
 \noindent {\bf Return Type:} 
 
16404
{\tt 
 
16405
DSCSI ref
 
16406
}
 
16407
 
 
16408
 
 
16409
reference to the object
 
16410
\vspace{0.3cm}
 
16411
\vspace{0.3cm}
 
16412
\vspace{0.3cm}
 
16413
\subsubsection{RPC name:~get\_record}
 
16414
 
 
16415
{\bf Overview:} 
 
16416
Get a record containing the current state of the given DSCSI.
 
16417
 
 
16418
 \noindent {\bf Signature:} 
 
16419
\begin{verbatim} (DSCSI record) get_record (session_id s, DSCSI ref self)\end{verbatim}
 
16420
 
 
16421
 
 
16422
\noindent{\bf Arguments:}
 
16423
 
 
16424
 
 
16425
\vspace{0.3cm}
 
16426
\begin{tabular}{|c|c|p{7cm}|}
 
16427
 \hline
 
16428
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16429
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16430
 
 
16431
\end{tabular}
 
16432
 
 
16433
\vspace{0.3cm}
 
16434
 
 
16435
 \noindent {\bf Return Type:} 
 
16436
{\tt 
 
16437
DSCSI record
 
16438
}
 
16439
 
 
16440
 
 
16441
all fields from the object
 
16442
\vspace{0.3cm}
 
16443
\vspace{0.3cm}
 
16444
\vspace{0.3cm}
 
16445
 
 
16446
\vspace{1cm}
 
16447
\newpage
 
16448
\section{Class: DSCSI\_HBA}
 
16449
\subsection{Fields for class: DSCSI\_HBA}
 
16450
\begin{longtable}{|lllp{0.38\textwidth}|}
 
16451
\hline
 
16452
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf DSCSI\_HBA} \\
 
16453
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
16454
half-virtualized SCSI host bus adapter.}} \\
 
16455
\hline
 
16456
Quals & Field & Type & Description \\
 
16457
\hline
 
16458
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
16459
$\mathit{RO}_\mathit{inst}$ &  {\tt VM} & VM ref & the virtual machine \\
 
16460
$\mathit{RO}_\mathit{run}$ &  {\tt PSCSI\_HBAs} & (PSCSI\_HBA ref) Set & the physical SCSI HBAs \\
 
16461
$\mathit{RO}_\mathit{run}$ &  {\tt DSCSIs} & (DSCSI ref) Set & the half-virtualized SCSI devices which are connected to this DSCSI HBA \\
 
16462
$\mathit{RO}_\mathit{inst}$ &  {\tt virtual\_host} & int & the virtual host number \\
 
16463
$\mathit{RO}_\mathit{inst}$ &  {\tt assignment\_mode} & string & the assignment mode of the half-virtualized SCSI devices which are connected to this DSCSI HBA \\
 
16464
\hline
 
16465
\end{longtable}
 
16466
\subsection{RPCs associated with class: DSCSI\_HBA}
 
16467
\subsubsection{RPC name:~get\_all}
 
16468
 
 
16469
{\bf Overview:} 
 
16470
Return a list of all the DSCSI HBAs known to the system.
 
16471
 
 
16472
 \noindent {\bf Signature:} 
 
16473
\begin{verbatim} ((DSCSI_HBA ref) Set) get_all (session_id s)\end{verbatim}
 
16474
 
 
16475
 
 
16476
\vspace{0.3cm}
 
16477
 
 
16478
 \noindent {\bf Return Type:} 
 
16479
{\tt 
 
16480
(DSCSI\_HBA ref) Set
 
16481
}
 
16482
 
 
16483
 
 
16484
references to all objects
 
16485
\vspace{0.3cm}
 
16486
\vspace{0.3cm}
 
16487
\vspace{0.3cm}
 
16488
\subsubsection{RPC name:~get\_uuid}
 
16489
 
 
16490
{\bf Overview:} 
 
16491
Get the uuid field of the given DSCSI HBA.
 
16492
 
 
16493
 \noindent {\bf Signature:} 
 
16494
\begin{verbatim} string get_uuid (session_id s, DSCSI_HBA ref self)\end{verbatim}
 
16495
 
 
16496
 
 
16497
\noindent{\bf Arguments:}
 
16498
 
 
16499
 
 
16500
\vspace{0.3cm}
 
16501
\begin{tabular}{|c|c|p{7cm}|}
 
16502
 \hline
 
16503
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16504
{\tt DSCSI ref } & self & reference to the object \\ \hline 
 
16505
 
 
16506
\end{tabular}
 
16507
 
 
16508
\vspace{0.3cm}
 
16509
 
 
16510
 \noindent {\bf Return Type:} 
 
16511
{\tt
 
16512
string
 
16513
}
 
16514
 
 
16515
 
 
16516
value of the field
 
16517
\vspace{0.3cm}
 
16518
\vspace{0.3cm}
 
16519
\vspace{0.3cm}
 
16520
\subsubsection{RPC name:~get\_VM}
 
16521
 
 
16522
{\bf Overview:} 
 
16523
Get the VM field of the given DSCSI HBA.
 
16524
 
 
16525
 \noindent {\bf Signature:} 
 
16526
\begin{verbatim} (VM ref) get_VM (session_id s, DSCSI_HBA ref self)\end{verbatim}
 
16527
 
 
16528
 
 
16529
\noindent{\bf Arguments:}
 
16530
 
 
16531
 
 
16532
\vspace{0.3cm}
 
16533
\begin{tabular}{|c|c|p{7cm}|}
 
16534
 \hline
 
16535
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16536
{\tt DSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
16537
 
 
16538
\end{tabular}
 
16539
 
 
16540
\vspace{0.3cm}
 
16541
 
 
16542
 \noindent {\bf Return Type:} 
 
16543
{\tt 
 
16544
VM ref
 
16545
}
 
16546
 
 
16547
 
 
16548
value of the field
 
16549
\vspace{0.3cm}
 
16550
\vspace{0.3cm}
 
16551
\vspace{0.3cm}
 
16552
\subsubsection{RPC name:~get\_PSCSI\_HBAs}
 
16553
 
 
16554
{\bf Overview:} 
 
16555
Get the PSCSI\_HBAs field of the given DSCSI HBA.
 
16556
 
 
16557
 \noindent {\bf Signature:} 
 
16558
\begin{verbatim} ((PSCSI_HBA ref) Set) get_PSCSI_HBAs (session_id s, DSCSI_HBA ref self)\end{verbatim}
 
16559
 
 
16560
 
 
16561
\noindent{\bf Arguments:}
 
16562
 
 
16563
 
 
16564
\vspace{0.3cm}
 
16565
\begin{tabular}{|c|c|p{7cm}|}
 
16566
 \hline
 
16567
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16568
{\tt DSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
16569
 
 
16570
\end{tabular}
 
16571
 
 
16572
\vspace{0.3cm}
 
16573
 
 
16574
 \noindent {\bf Return Type:} 
 
16575
{\tt 
 
16576
(PSCSI\_HBA ref) Set
 
16577
}
 
16578
 
 
16579
 
 
16580
value of the field
 
16581
\vspace{0.3cm}
 
16582
\vspace{0.3cm}
 
16583
\vspace{0.3cm}
 
16584
\subsubsection{RPC name:~get\_DSCSIs}
 
16585
 
 
16586
{\bf Overview:} 
 
16587
Get the DSCSIs field of the given DSCSI HBA.
 
16588
 
 
16589
 \noindent {\bf Signature:} 
 
16590
\begin{verbatim} ((DSCSI ref) Set) get_DSCSIs (session_id s, DSCSI_HBA ref self)\end{verbatim}
 
16591
 
 
16592
 
 
16593
\noindent{\bf Arguments:}
 
16594
 
 
16595
 
 
16596
\vspace{0.3cm}
 
16597
\begin{tabular}{|c|c|p{7cm}|}
 
16598
 \hline
 
16599
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16600
{\tt DSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
16601
 
 
16602
\end{tabular}
 
16603
 
 
16604
\vspace{0.3cm}
 
16605
 
 
16606
 \noindent {\bf Return Type:} 
 
16607
{\tt 
 
16608
(DSCSI ref) Set
 
16609
}
 
16610
 
 
16611
 
 
16612
value of the field
 
16613
\vspace{0.3cm}
 
16614
\vspace{0.3cm}
 
16615
\vspace{0.3cm}
 
16616
\subsubsection{RPC name:~get\_virtual\_host}
 
16617
 
 
16618
{\bf Overview:} 
 
16619
Get the virtual\_host field of the given DSCSI HBA.
 
16620
 
 
16621
 \noindent {\bf Signature:} 
 
16622
\begin{verbatim} int get_virtual_host (session_id s, DSCSI_HBA ref self)\end{verbatim}
 
16623
 
 
16624
 
 
16625
\noindent{\bf Arguments:}
 
16626
 
 
16627
 
 
16628
\vspace{0.3cm}
 
16629
\begin{tabular}{|c|c|p{7cm}|}
 
16630
 \hline
 
16631
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16632
{\tt DSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
16633
 
 
16634
\end{tabular}
 
16635
 
 
16636
\vspace{0.3cm}
 
16637
 
 
16638
 \noindent {\bf Return Type:} 
 
16639
{\tt 
 
16640
int
 
16641
}
 
16642
 
 
16643
 
 
16644
value of the field
 
16645
\vspace{0.3cm}
 
16646
\vspace{0.3cm}
 
16647
\vspace{0.3cm}
 
16648
\subsubsection{RPC name:~get\_assignment\_mode}
 
16649
 
 
16650
{\bf Overview:} 
 
16651
Get the assignment\_mode field of the given DSCSI HBA.
 
16652
 
 
16653
 \noindent {\bf Signature:} 
 
16654
\begin{verbatim} string get_assignment_mode (session_id s, DSCSI_HBA ref self)\end{verbatim}
 
16655
 
 
16656
 
 
16657
\noindent{\bf Arguments:}
 
16658
 
 
16659
 
 
16660
\vspace{0.3cm}
 
16661
\begin{tabular}{|c|c|p{7cm}|}
 
16662
 \hline
 
16663
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16664
{\tt DSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
16665
 
 
16666
\end{tabular}
 
16667
 
 
16668
\vspace{0.3cm}
 
16669
 
 
16670
 \noindent {\bf Return Type:} 
 
16671
{\tt 
 
16672
string
 
16673
}
 
16674
 
 
16675
 
 
16676
value of the field
 
16677
\vspace{0.3cm}
 
16678
\vspace{0.3cm}
 
16679
\vspace{0.3cm}
 
16680
\subsubsection{RPC name:~create}
 
16681
 
 
16682
{\bf Overview:} 
 
16683
Create a new DSCSI\_HBA instance, and create new DSCSI instances of
 
16684
half-virtualized SCSI devices which are connected to the half-virtualized
 
16685
SCSI host bus adapter, and return the handle of the new DSCSI\_HBA instance.
 
16686
 
 
16687
 \noindent {\bf Signature:} 
 
16688
\begin{verbatim} (DSCSI_HBA ref) create (session_id s, DSCSI_HBA record args)\end{verbatim}
 
16689
 
 
16690
 
 
16691
\noindent{\bf Arguments:}
 
16692
 
 
16693
 
 
16694
\vspace{0.3cm}
 
16695
\begin{tabular}{|c|c|p{7cm}|}
 
16696
 \hline
 
16697
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16698
{\tt DSCSI\_HBA record } & args & All constructor arguments \\ \hline 
 
16699
 
 
16700
\end{tabular}
 
16701
 
 
16702
\vspace{0.3cm}
 
16703
 
 
16704
 \noindent {\bf Return Type:} 
 
16705
{\tt 
 
16706
DSCSI\_HBA ref
 
16707
}
 
16708
 
 
16709
 
 
16710
reference to the newly created object
 
16711
\vspace{0.3cm}
 
16712
\vspace{0.3cm}
 
16713
\vspace{0.3cm}
 
16714
\subsubsection{RPC name:~destroy}
 
16715
 
 
16716
{\bf Overview:} 
 
16717
Destroy the specified DSCSI\_HBA instance, and destroy DSCSI instances of
 
16718
half-virtualized SCSI devices which are connected to the half-virtualized SCSI
 
16719
host bus adapter.
 
16720
 
 
16721
 \noindent {\bf Signature:} 
 
16722
\begin{verbatim} void destroy (session_id s, DSCSI_HBA ref self)\end{verbatim}
 
16723
 
 
16724
 
 
16725
\noindent{\bf Arguments:}
 
16726
 
 
16727
 
 
16728
\vspace{0.3cm}
 
16729
\begin{tabular}{|c|c|p{7cm}|}
 
16730
 \hline
 
16731
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16732
{\tt DSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
16733
 
 
16734
\end{tabular}
 
16735
 
 
16736
\vspace{0.3cm}
 
16737
 
 
16738
 \noindent {\bf Return Type:} 
 
16739
{\tt 
 
16740
void
 
16741
}
 
16742
 
 
16743
 
 
16744
\vspace{0.3cm}
 
16745
\vspace{0.3cm}
 
16746
\vspace{0.3cm}
 
16747
\subsubsection{RPC name:~get\_by\_uuid}
 
16748
 
 
16749
{\bf Overview:} 
 
16750
Get a reference to the DSCSI\_HBA instance with the specified UUID.
 
16751
 
 
16752
 \noindent {\bf Signature:} 
 
16753
\begin{verbatim} (DSCSI_HBA ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
16754
 
 
16755
 
 
16756
\noindent{\bf Arguments:}
 
16757
 
 
16758
 
 
16759
\vspace{0.3cm}
 
16760
\begin{tabular}{|c|c|p{7cm}|}
 
16761
 \hline
 
16762
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16763
{\tt string } & uuid & UUID of object to return \\ \hline 
 
16764
 
 
16765
\end{tabular}
 
16766
 
 
16767
\vspace{0.3cm}
 
16768
 
 
16769
 \noindent {\bf Return Type:} 
 
16770
{\tt 
 
16771
DSCSI\_HBA ref
 
16772
}
 
16773
 
 
16774
 
 
16775
reference to the object
 
16776
\vspace{0.3cm}
 
16777
\vspace{0.3cm}
 
16778
\vspace{0.3cm}
 
16779
\subsubsection{RPC name:~get\_record}
 
16780
 
 
16781
{\bf Overview:} 
 
16782
Get a record containing the current state of the given DSCSI HBA.
 
16783
 
 
16784
 \noindent {\bf Signature:} 
 
16785
\begin{verbatim} (DSCSI_HBA record) get_record (session_id s, DSCSI_HBA ref self)\end{verbatim}
 
16786
 
 
16787
 
 
16788
\noindent{\bf Arguments:}
 
16789
 
 
16790
 
 
16791
\vspace{0.3cm}
 
16792
\begin{tabular}{|c|c|p{7cm}|}
 
16793
 \hline
 
16794
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16795
{\tt DSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
16796
 
 
16797
\end{tabular}
 
16798
 
 
16799
\vspace{0.3cm}
 
16800
 
 
16801
 \noindent {\bf Return Type:} 
 
16802
{\tt 
 
16803
DSCSI\_HBA record
 
16804
}
 
16805
 
 
16806
 
 
16807
all fields from the object
 
16808
\vspace{0.3cm}
 
16809
\vspace{0.3cm}
 
16810
\vspace{0.3cm}
 
16811
 
 
16812
\vspace{1cm}
 
16813
\newpage
 
16814
\section{Class: PSCSI}
 
16815
\subsection{Fields for class: PSCSI}
 
16816
\begin{longtable}{|lllp{0.38\textwidth}|}
 
16817
\hline
 
16818
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf PSCSI} \\
 
16819
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
16820
physical SCSI device.}} \\
 
16821
\hline
 
16822
Quals & Field & Type & Description \\
 
16823
\hline
 
16824
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
16825
$\mathit{RO}_\mathit{run}$ &  {\tt host} & host ref &  the physical machine to which this PSCSI is connected \\
 
16826
$\mathit{RO}_\mathit{run}$ &  {\tt HBA} & PSCSI\_HBA ref &  the physical SCSI host bus adapter \\
 
16827
$\mathit{RO}_\mathit{run}$ &  {\tt physical\_host} & int & the physical host number \\
 
16828
$\mathit{RO}_\mathit{run}$ &  {\tt physical\_channel} & int & the physical channel number \\
 
16829
$\mathit{RO}_\mathit{run}$ &  {\tt physical\_target} & int & the physical target number \\
 
16830
$\mathit{RO}_\mathit{run}$ &  {\tt physical\_lun} & int & the physical logical unit number \\
 
16831
$\mathit{RO}_\mathit{run}$ &  {\tt physical\_HCTL} & string & the physical HCTL \\
 
16832
$\mathit{RO}_\mathit{run}$ &  {\tt vendor\_name} & string & the vendor name \\
 
16833
$\mathit{RO}_\mathit{run}$ &  {\tt model} & string & the model \\
 
16834
$\mathit{RO}_\mathit{run}$ &  {\tt type\_id} & int & the SCSI type ID \\
 
16835
$\mathit{RO}_\mathit{run}$ &  {\tt type} & string &  the SCSI type \\
 
16836
$\mathit{RO}_\mathit{run}$ &  {\tt dev\_name} & string & the SCSI device name (e.g. sda or st0) \\
 
16837
$\mathit{RO}_\mathit{run}$ &  {\tt sg\_name} & string & the SCSI generic device name (e.g. sg0) \\
 
16838
$\mathit{RO}_\mathit{run}$ &  {\tt revision} & string & the revision \\
 
16839
$\mathit{RO}_\mathit{run}$ &  {\tt scsi\_id} & string & the SCSI ID \\
 
16840
$\mathit{RO}_\mathit{run}$ &  {\tt scsi\_level} & int & the SCSI level \\
 
16841
\hline
 
16842
\end{longtable}
 
16843
\subsection{RPCs associated with class: PSCSI}
 
16844
\subsubsection{RPC name:~get\_all}
 
16845
 
 
16846
{\bf Overview:} 
 
16847
Return a list of all the PSCSIs known to the system.
 
16848
 
 
16849
 \noindent {\bf Signature:} 
 
16850
\begin{verbatim} ((PSCSI ref) Set) get_all (session_id s)\end{verbatim}
 
16851
 
 
16852
 
 
16853
\vspace{0.3cm}
 
16854
 
 
16855
 \noindent {\bf Return Type:} 
 
16856
{\tt 
 
16857
(PSCSI ref) Set
 
16858
}
 
16859
 
 
16860
 
 
16861
references to all objects
 
16862
\vspace{0.3cm}
 
16863
\vspace{0.3cm}
 
16864
\vspace{0.3cm}
 
16865
\subsubsection{RPC name:~get\_uuid}
 
16866
 
 
16867
{\bf Overview:} 
 
16868
Get the uuid field of the given PSCSI.
 
16869
 
 
16870
 \noindent {\bf Signature:} 
 
16871
\begin{verbatim} string get_uuid (session_id s, PSCSI ref self)\end{verbatim}
 
16872
 
 
16873
 
 
16874
\noindent{\bf Arguments:}
 
16875
 
 
16876
 
 
16877
\vspace{0.3cm}
 
16878
\begin{tabular}{|c|c|p{7cm}|}
 
16879
 \hline
 
16880
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16881
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
16882
 
 
16883
\end{tabular}
 
16884
 
 
16885
\vspace{0.3cm}
 
16886
 
 
16887
 \noindent {\bf Return Type:} 
 
16888
{\tt 
 
16889
string
 
16890
}
 
16891
 
 
16892
 
 
16893
value of the field
 
16894
\vspace{0.3cm}
 
16895
\vspace{0.3cm}
 
16896
\vspace{0.3cm}
 
16897
\subsubsection{RPC name:~get\_host}
 
16898
 
 
16899
{\bf Overview:} 
 
16900
Get the host field of the given PSCSI.
 
16901
 
 
16902
 \noindent {\bf Signature:} 
 
16903
\begin{verbatim} (host ref) get_host (session_id s, PSCSI ref self)\end{verbatim}
 
16904
 
 
16905
 
 
16906
\noindent{\bf Arguments:}
 
16907
 
 
16908
 
 
16909
\vspace{0.3cm}
 
16910
\begin{tabular}{|c|c|p{7cm}|}
 
16911
 \hline
 
16912
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16913
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
16914
 
 
16915
\end{tabular}
 
16916
 
 
16917
\vspace{0.3cm}
 
16918
 
 
16919
 \noindent {\bf Return Type:} 
 
16920
{\tt 
 
16921
host ref
 
16922
}
 
16923
 
 
16924
 
 
16925
value of the field
 
16926
\vspace{0.3cm}
 
16927
\vspace{0.3cm}
 
16928
\vspace{0.3cm}
 
16929
\subsubsection{RPC name:~get\_HBA}
 
16930
 
 
16931
{\bf Overview:} 
 
16932
Get the HBA field of the given PSCSI.
 
16933
 
 
16934
 \noindent {\bf Signature:} 
 
16935
\begin{verbatim} (PSCSI_HBA ref) get_HBA (session_id s, PSCSI ref self)\end{verbatim}
 
16936
 
 
16937
 
 
16938
\noindent{\bf Arguments:}
 
16939
 
 
16940
 
 
16941
\vspace{0.3cm}
 
16942
\begin{tabular}{|c|c|p{7cm}|}
 
16943
 \hline
 
16944
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16945
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
16946
 
 
16947
\end{tabular}
 
16948
 
 
16949
\vspace{0.3cm}
 
16950
 
 
16951
 \noindent {\bf Return Type:} 
 
16952
{\tt 
 
16953
PSCSI\_HBA ref
 
16954
}
 
16955
 
 
16956
 
 
16957
value of the field
 
16958
\vspace{0.3cm}
 
16959
\vspace{0.3cm}
 
16960
\vspace{0.3cm}
 
16961
\subsubsection{RPC name:~get\_physical\_host}
 
16962
 
 
16963
{\bf Overview:} 
 
16964
Get the physical\_host field of the given PSCSI.
 
16965
 
 
16966
 \noindent {\bf Signature:} 
 
16967
\begin{verbatim} int get_physical_host (session_id s, PSCSI ref self)\end{verbatim}
 
16968
 
 
16969
 
 
16970
\noindent{\bf Arguments:}
 
16971
 
 
16972
 
 
16973
\vspace{0.3cm}
 
16974
\begin{tabular}{|c|c|p{7cm}|}
 
16975
 \hline
 
16976
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
16977
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
16978
 
 
16979
\end{tabular}
 
16980
 
 
16981
\vspace{0.3cm}
 
16982
 
 
16983
 \noindent {\bf Return Type:} 
 
16984
{\tt 
 
16985
int
 
16986
}
 
16987
 
 
16988
 
 
16989
value of the field
 
16990
\vspace{0.3cm}
 
16991
\vspace{0.3cm}
 
16992
\vspace{0.3cm}
 
16993
\subsubsection{RPC name:~get\_physical\_channel}
 
16994
 
 
16995
{\bf Overview:} 
 
16996
Get the physical\_channel field of the given PSCSI.
 
16997
 
 
16998
 \noindent {\bf Signature:} 
 
16999
\begin{verbatim} int get_physical_channel (session_id s, PSCSI ref self)\end{verbatim}
 
17000
 
 
17001
 
 
17002
\noindent{\bf Arguments:}
 
17003
 
 
17004
 
 
17005
\vspace{0.3cm}
 
17006
\begin{tabular}{|c|c|p{7cm}|}
 
17007
 \hline
 
17008
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17009
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17010
 
 
17011
\end{tabular}
 
17012
 
 
17013
\vspace{0.3cm}
 
17014
 
 
17015
 \noindent {\bf Return Type:} 
 
17016
{\tt 
 
17017
int
 
17018
}
 
17019
 
 
17020
 
 
17021
value of the field
 
17022
\vspace{0.3cm}
 
17023
\vspace{0.3cm}
 
17024
\vspace{0.3cm}
 
17025
\subsubsection{RPC name:~get\_physical\_target}
 
17026
 
 
17027
{\bf Overview:} 
 
17028
Get the physical\_target field of the given PSCSI.
 
17029
 
 
17030
 \noindent {\bf Signature:} 
 
17031
\begin{verbatim} int get_physical_target (session_id s, PSCSI ref self)\end{verbatim}
 
17032
 
 
17033
 
 
17034
\noindent{\bf Arguments:}
 
17035
 
 
17036
 
 
17037
\vspace{0.3cm}
 
17038
\begin{tabular}{|c|c|p{7cm}|}
 
17039
 \hline
 
17040
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17041
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17042
 
 
17043
\end{tabular}
 
17044
 
 
17045
\vspace{0.3cm}
 
17046
 
 
17047
 \noindent {\bf Return Type:} 
 
17048
{\tt 
 
17049
int
 
17050
}
 
17051
 
 
17052
 
 
17053
value of the field
 
17054
\vspace{0.3cm}
 
17055
\vspace{0.3cm}
 
17056
\vspace{0.3cm}
 
17057
\subsubsection{RPC name:~get\_physical\_lun}
 
17058
 
 
17059
{\bf Overview:} 
 
17060
Get the physical\_lun field of the given PSCSI.
 
17061
 
 
17062
 \noindent {\bf Signature:} 
 
17063
\begin{verbatim} int get_physical_lun (session_id s, PSCSI ref self)\end{verbatim}
 
17064
 
 
17065
 
 
17066
\noindent{\bf Arguments:}
 
17067
 
 
17068
 
 
17069
\vspace{0.3cm}
 
17070
\begin{tabular}{|c|c|p{7cm}|}
 
17071
 \hline
 
17072
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17073
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17074
 
 
17075
\end{tabular}
 
17076
 
 
17077
\vspace{0.3cm}
 
17078
 
 
17079
 \noindent {\bf Return Type:} 
 
17080
{\tt 
 
17081
int
 
17082
}
 
17083
 
 
17084
 
 
17085
value of the field
 
17086
\vspace{0.3cm}
 
17087
\vspace{0.3cm}
 
17088
\vspace{0.3cm}
 
17089
\subsubsection{RPC name:~get\_physical\_HCTL}
 
17090
 
 
17091
{\bf Overview:} 
 
17092
Get the physical\_HCTL field of the given PSCSI.
 
17093
 
 
17094
 \noindent {\bf Signature:} 
 
17095
\begin{verbatim} string get_physical_HCTL (session_id s, PSCSI ref self)\end{verbatim}
 
17096
 
 
17097
 
 
17098
\noindent{\bf Arguments:}
 
17099
 
 
17100
 
 
17101
\vspace{0.3cm}
 
17102
\begin{tabular}{|c|c|p{7cm}|}
 
17103
 \hline
 
17104
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17105
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17106
 
 
17107
\end{tabular}
 
17108
 
 
17109
\vspace{0.3cm}
 
17110
 
 
17111
 \noindent {\bf Return Type:} 
 
17112
{\tt 
 
17113
string
 
17114
}
 
17115
 
 
17116
 
 
17117
value of the field
 
17118
\vspace{0.3cm}
 
17119
\vspace{0.3cm}
 
17120
\vspace{0.3cm}
 
17121
\subsubsection{RPC name:~get\_vendor\_name}
 
17122
 
 
17123
{\bf Overview:} 
 
17124
Get the vendor\_name field of the given PSCSI.
 
17125
 
 
17126
 \noindent {\bf Signature:} 
 
17127
\begin{verbatim} string get_vendor_name (session_id s, PSCSI ref self)\end{verbatim}
 
17128
 
 
17129
 
 
17130
\noindent{\bf Arguments:}
 
17131
 
 
17132
 
 
17133
\vspace{0.3cm}
 
17134
\begin{tabular}{|c|c|p{7cm}|}
 
17135
 \hline
 
17136
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17137
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17138
 
 
17139
\end{tabular}
 
17140
 
 
17141
\vspace{0.3cm}
 
17142
 
 
17143
 \noindent {\bf Return Type:} 
 
17144
{\tt 
 
17145
string
 
17146
}
 
17147
 
 
17148
 
 
17149
value of the field
 
17150
\vspace{0.3cm}
 
17151
\vspace{0.3cm}
 
17152
\vspace{0.3cm}
 
17153
\subsubsection{RPC name:~get\_model}
 
17154
 
 
17155
{\bf Overview:} 
 
17156
Get the model field of the given PSCSI.
 
17157
 
 
17158
 \noindent {\bf Signature:} 
 
17159
\begin{verbatim} string get_model (session_id s, PSCSI ref self)\end{verbatim}
 
17160
 
 
17161
 
 
17162
\noindent{\bf Arguments:}
 
17163
 
 
17164
 
 
17165
\vspace{0.3cm}
 
17166
\begin{tabular}{|c|c|p{7cm}|}
 
17167
 \hline
 
17168
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17169
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17170
 
 
17171
\end{tabular}
 
17172
 
 
17173
\vspace{0.3cm}
 
17174
 
 
17175
 \noindent {\bf Return Type:} 
 
17176
{\tt 
 
17177
string
 
17178
}
 
17179
 
 
17180
 
 
17181
value of the field
 
17182
\vspace{0.3cm}
 
17183
\vspace{0.3cm}
 
17184
\vspace{0.3cm}
 
17185
\subsubsection{RPC name:~get\_type\_id}
 
17186
 
 
17187
{\bf Overview:} 
 
17188
Get the type\_id field of the given PSCSI.
 
17189
 
 
17190
 \noindent {\bf Signature:} 
 
17191
\begin{verbatim} int get_type_id (session_id s, PSCSI ref self)\end{verbatim}
 
17192
 
 
17193
 
 
17194
\noindent{\bf Arguments:}
 
17195
 
 
17196
 
 
17197
\vspace{0.3cm}
 
17198
\begin{tabular}{|c|c|p{7cm}|}
 
17199
 \hline
 
17200
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17201
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17202
 
 
17203
\end{tabular}
 
17204
 
 
17205
\vspace{0.3cm}
 
17206
 
 
17207
 \noindent {\bf Return Type:} 
 
17208
{\tt 
 
17209
int
 
17210
}
 
17211
 
 
17212
 
 
17213
value of the field
 
17214
\vspace{0.3cm}
 
17215
\vspace{0.3cm}
 
17216
\vspace{0.3cm}
 
17217
\subsubsection{RPC name:~get\_type}
 
17218
 
 
17219
{\bf Overview:} 
 
17220
Get the type field of the given PSCSI.
 
17221
 
 
17222
 \noindent {\bf Signature:} 
 
17223
\begin{verbatim} string get_type (session_id s, PSCSI ref self)\end{verbatim}
 
17224
 
 
17225
 
 
17226
\noindent{\bf Arguments:}
 
17227
 
 
17228
 
 
17229
\vspace{0.3cm}
 
17230
\begin{tabular}{|c|c|p{7cm}|}
 
17231
 \hline
 
17232
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17233
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17234
 
 
17235
\end{tabular}
 
17236
 
 
17237
\vspace{0.3cm}
 
17238
 
 
17239
 \noindent {\bf Return Type:} 
 
17240
{\tt 
 
17241
string
 
17242
}
 
17243
 
 
17244
 
 
17245
value of the field
 
17246
\vspace{0.3cm}
 
17247
\vspace{0.3cm}
 
17248
\vspace{0.3cm}
 
17249
\subsubsection{RPC name:~get\_dev\_name}
 
17250
 
 
17251
{\bf Overview:} 
 
17252
Get the dev\_name field of the given PSCSI.
 
17253
 
 
17254
 \noindent {\bf Signature:} 
 
17255
\begin{verbatim} string get_dev_name (session_id s, PSCSI ref self)\end{verbatim}
 
17256
 
 
17257
 
 
17258
\noindent{\bf Arguments:}
 
17259
 
 
17260
 
 
17261
\vspace{0.3cm}
 
17262
\begin{tabular}{|c|c|p{7cm}|}
 
17263
 \hline
 
17264
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17265
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17266
 
 
17267
\end{tabular}
 
17268
 
 
17269
\vspace{0.3cm}
 
17270
 
 
17271
 \noindent {\bf Return Type:} 
 
17272
{\tt 
 
17273
string
 
17274
}
 
17275
 
 
17276
 
 
17277
value of the field
 
17278
\vspace{0.3cm}
 
17279
\vspace{0.3cm}
 
17280
\vspace{0.3cm}
 
17281
\subsubsection{RPC name:~get\_sg\_name}
 
17282
 
 
17283
{\bf Overview:} 
 
17284
Get the sg\_name field of the given PSCSI.
 
17285
 
 
17286
 \noindent {\bf Signature:} 
 
17287
\begin{verbatim} string get_sg_name (session_id s, PSCSI ref self)\end{verbatim}
 
17288
 
 
17289
 
 
17290
\noindent{\bf Arguments:}
 
17291
 
 
17292
 
 
17293
\vspace{0.3cm}
 
17294
\begin{tabular}{|c|c|p{7cm}|}
 
17295
 \hline
 
17296
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17297
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17298
 
 
17299
\end{tabular}
 
17300
 
 
17301
\vspace{0.3cm}
 
17302
 
 
17303
 \noindent {\bf Return Type:} 
 
17304
{\tt 
 
17305
string
 
17306
}
 
17307
 
 
17308
 
 
17309
value of the field
 
17310
\vspace{0.3cm}
 
17311
\vspace{0.3cm}
 
17312
\vspace{0.3cm}
 
17313
\subsubsection{RPC name:~get\_revision}
 
17314
 
 
17315
{\bf Overview:} 
 
17316
Get the revision field of the given PSCSI.
 
17317
 
 
17318
 \noindent {\bf Signature:} 
 
17319
\begin{verbatim} string get_revision (session_id s, PSCSI ref self)\end{verbatim}
 
17320
 
 
17321
 
 
17322
\noindent{\bf Arguments:}
 
17323
 
 
17324
 
 
17325
\vspace{0.3cm}
 
17326
\begin{tabular}{|c|c|p{7cm}|}
 
17327
 \hline
 
17328
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17329
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17330
 
 
17331
\end{tabular}
 
17332
 
 
17333
\vspace{0.3cm}
 
17334
 
 
17335
 \noindent {\bf Return Type:} 
 
17336
{\tt 
 
17337
string
 
17338
}
 
17339
 
 
17340
 
 
17341
value of the field
 
17342
\vspace{0.3cm}
 
17343
\vspace{0.3cm}
 
17344
\vspace{0.3cm}
 
17345
\subsubsection{RPC name:~get\_scsi\_id}
 
17346
 
 
17347
{\bf Overview:} 
 
17348
Get the scsi\_id field of the given PSCSI.
 
17349
 
 
17350
 \noindent {\bf Signature:} 
 
17351
\begin{verbatim} string get_scsi_id (session_id s, PSCSI ref self)\end{verbatim}
 
17352
 
 
17353
 
 
17354
\noindent{\bf Arguments:}
 
17355
 
 
17356
 
 
17357
\vspace{0.3cm}
 
17358
\begin{tabular}{|c|c|p{7cm}|}
 
17359
 \hline
 
17360
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17361
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17362
 
 
17363
\end{tabular}
 
17364
 
 
17365
\vspace{0.3cm}
 
17366
 
 
17367
 \noindent {\bf Return Type:} 
 
17368
{\tt 
 
17369
string
 
17370
}
 
17371
 
 
17372
 
 
17373
value of the field
 
17374
\vspace{0.3cm}
 
17375
\vspace{0.3cm}
 
17376
\vspace{0.3cm}
 
17377
\subsubsection{RPC name:~get\_scsi\_level}
 
17378
 
 
17379
{\bf Overview:} 
 
17380
Get the scsi\_level field of the given PSCSI.
 
17381
 
 
17382
 \noindent {\bf Signature:} 
 
17383
\begin{verbatim} int get_scsi_level (session_id s, PSCSI ref self)\end{verbatim}
 
17384
 
 
17385
 
 
17386
\noindent{\bf Arguments:}
 
17387
 
 
17388
 
 
17389
\vspace{0.3cm}
 
17390
\begin{tabular}{|c|c|p{7cm}|}
 
17391
 \hline
 
17392
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17393
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17394
 
 
17395
\end{tabular}
 
17396
 
 
17397
\vspace{0.3cm}
 
17398
 
 
17399
 \noindent {\bf Return Type:} 
 
17400
{\tt 
 
17401
int
 
17402
}
 
17403
 
 
17404
 
 
17405
value of the field
 
17406
\vspace{0.3cm}
 
17407
\vspace{0.3cm}
 
17408
\vspace{0.3cm}
 
17409
\subsubsection{RPC name:~get\_by\_uuid}
 
17410
 
 
17411
{\bf Overview:} 
 
17412
Get a reference to the PSCSI instance with the specified UUID.
 
17413
 
 
17414
 \noindent {\bf Signature:} 
 
17415
\begin{verbatim} (PSCSI ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
17416
 
 
17417
 
 
17418
\noindent{\bf Arguments:}
 
17419
 
 
17420
 
 
17421
\vspace{0.3cm}
 
17422
\begin{tabular}{|c|c|p{7cm}|}
 
17423
 \hline
 
17424
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17425
{\tt string } & uuid & UUID of object to return \\ \hline 
 
17426
 
 
17427
\end{tabular}
 
17428
 
 
17429
\vspace{0.3cm}
 
17430
 
 
17431
 \noindent {\bf Return Type:} 
 
17432
{\tt 
 
17433
PSCSI ref
 
17434
}
 
17435
 
 
17436
 
 
17437
reference to the object
 
17438
\vspace{0.3cm}
 
17439
\vspace{0.3cm}
 
17440
\vspace{0.3cm}
 
17441
\subsubsection{RPC name:~get\_record}
 
17442
 
 
17443
{\bf Overview:} 
 
17444
Get a record containing the current state of the given PSCSI.
 
17445
 
 
17446
 \noindent {\bf Signature:} 
 
17447
\begin{verbatim} (PSCSI record) get_record (session_id s, PSCSI ref self)\end{verbatim}
 
17448
 
 
17449
 
 
17450
\noindent{\bf Arguments:}
 
17451
 
 
17452
 
 
17453
\vspace{0.3cm}
 
17454
\begin{tabular}{|c|c|p{7cm}|}
 
17455
 \hline
 
17456
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17457
{\tt PSCSI ref } & self & reference to the object \\ \hline 
 
17458
 
 
17459
\end{tabular}
 
17460
 
 
17461
\vspace{0.3cm}
 
17462
 
 
17463
 \noindent {\bf Return Type:} 
 
17464
{\tt 
 
17465
PSCSI record
 
17466
}
 
17467
 
 
17468
 
 
17469
all fields from the object
 
17470
\vspace{0.3cm}
 
17471
\vspace{0.3cm}
 
17472
\vspace{0.3cm}
 
17473
 
 
17474
\vspace{1cm}
 
17475
\newpage
 
17476
\section{Class: PSCSI\_HBA}
 
17477
\subsection{Fields for class: PSCSI\_HBA}
 
17478
\begin{longtable}{|lllp{0.38\textwidth}|}
 
17479
\hline
 
17480
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf PSCSI\_HBA} \\
 
17481
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
17482
physical SCSI host bus adapter.}} \\
 
17483
\hline
 
17484
Quals & Field & Type & Description \\
 
17485
\hline
 
17486
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
17487
$\mathit{RO}_\mathit{run}$ &  {\tt host} & host ref &  the physical machine to which this PSCSI HBA is connected \\
 
17488
$\mathit{RO}_\mathit{run}$ &  {\tt physical\_host} & int & the physical host number \\
 
17489
$\mathit{RO}_\mathit{run}$ &  {\tt PSCSIs} & (PSCSI ref) Set & the physical SCSI devices which are connected to this PSCSI HBA \\
 
17490
\hline
 
17491
\end{longtable}
 
17492
\subsection{RPCs associated with class: PSCSI\_HBA}
 
17493
\subsubsection{RPC name:~get\_all}
 
17494
 
 
17495
{\bf Overview:} 
 
17496
Return a list of all the PSCSI HBAs known to the system.
 
17497
 
 
17498
 \noindent {\bf Signature:} 
 
17499
\begin{verbatim} ((PSCSI_HBA ref) Set) get_all (session_id s)\end{verbatim}
 
17500
 
 
17501
 
 
17502
\vspace{0.3cm}
 
17503
 
 
17504
 \noindent {\bf Return Type:} 
 
17505
{\tt 
 
17506
(PSCSI\_HBA ref) Set
 
17507
}
 
17508
 
 
17509
 
 
17510
references to all objects
 
17511
\vspace{0.3cm}
 
17512
\vspace{0.3cm}
 
17513
\vspace{0.3cm}
 
17514
\subsubsection{RPC name:~get\_uuid}
 
17515
 
 
17516
{\bf Overview:} 
 
17517
Get the uuid field of the given PSCSI HBA.
 
17518
 
 
17519
 \noindent {\bf Signature:} 
 
17520
\begin{verbatim} string get_uuid (session_id s, PSCSI_HBA ref self)\end{verbatim}
 
17521
 
 
17522
 
 
17523
\noindent{\bf Arguments:}
 
17524
 
 
17525
 
 
17526
\vspace{0.3cm}
 
17527
\begin{tabular}{|c|c|p{7cm}|}
 
17528
 \hline
 
17529
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17530
{\tt PSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
17531
 
 
17532
\end{tabular}
 
17533
 
 
17534
\vspace{0.3cm}
 
17535
 
 
17536
 \noindent {\bf Return Type:} 
 
17537
{\tt 
 
17538
string
 
17539
}
 
17540
 
 
17541
 
 
17542
value of the field
 
17543
\vspace{0.3cm}
 
17544
\vspace{0.3cm}
 
17545
\vspace{0.3cm}
 
17546
\subsubsection{RPC name:~get\_host}
 
17547
 
 
17548
{\bf Overview:} 
 
17549
Get the host field of the given PSCSI HBA.
 
17550
 
 
17551
 \noindent {\bf Signature:} 
 
17552
\begin{verbatim} (host ref) get_host (session_id s, PSCSI_HBA ref self)\end{verbatim}
 
17553
 
 
17554
 
 
17555
\noindent{\bf Arguments:}
 
17556
 
 
17557
 
 
17558
\vspace{0.3cm}
 
17559
\begin{tabular}{|c|c|p{7cm}|}
 
17560
 \hline
 
17561
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17562
{\tt PSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
17563
 
 
17564
\end{tabular}
 
17565
 
 
17566
\vspace{0.3cm}
 
17567
 
 
17568
 \noindent {\bf Return Type:} 
 
17569
{\tt 
 
17570
host ref
 
17571
}
 
17572
 
 
17573
 
 
17574
value of the field
 
17575
\vspace{0.3cm}
 
17576
\vspace{0.3cm}
 
17577
\vspace{0.3cm}
 
17578
\subsubsection{RPC name:~get\_physical\_host}
 
17579
 
 
17580
{\bf Overview:} 
 
17581
Get the physical\_host field of the given PSCSI HBA.
 
17582
 
 
17583
 \noindent {\bf Signature:} 
 
17584
\begin{verbatim} int get_physical_host (session_id s, PSCSI_HBA ref self)\end{verbatim}
 
17585
 
 
17586
 
 
17587
\noindent{\bf Arguments:}
 
17588
 
 
17589
 
 
17590
\vspace{0.3cm}
 
17591
\begin{tabular}{|c|c|p{7cm}|}
 
17592
 \hline
 
17593
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17594
{\tt PSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
17595
 
 
17596
\end{tabular}
 
17597
 
 
17598
\vspace{0.3cm}
 
17599
 
 
17600
 \noindent {\bf Return Type:} 
 
17601
{\tt 
 
17602
int
 
17603
}
 
17604
 
 
17605
 
 
17606
value of the field
 
17607
\vspace{0.3cm}
 
17608
\vspace{0.3cm}
 
17609
\vspace{0.3cm}
 
17610
\subsubsection{RPC name:~get\_PSCSIs}
 
17611
 
 
17612
{\bf Overview:} 
 
17613
Get the PSCSIs field of the given PSCSI HBA.
 
17614
 
 
17615
 \noindent {\bf Signature:} 
 
17616
\begin{verbatim} ((PSCSI ref) Set) get_PSCSIs (session_id s, PSCSI_HBA ref self)\end{verbatim}
 
17617
 
 
17618
 
 
17619
\noindent{\bf Arguments:}
 
17620
 
 
17621
 
 
17622
\vspace{0.3cm}
 
17623
\begin{tabular}{|c|c|p{7cm}|}
 
17624
 \hline
 
17625
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17626
{\tt PSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
17627
 
 
17628
\end{tabular}
 
17629
 
 
17630
\vspace{0.3cm}
 
17631
 
 
17632
 \noindent {\bf Return Type:} 
 
17633
{\tt 
 
17634
(PSCSI ref) Set
 
17635
}
 
17636
 
 
17637
 
 
17638
value of the field
 
17639
\vspace{0.3cm}
 
17640
\vspace{0.3cm}
 
17641
\vspace{0.3cm}
 
17642
\subsubsection{RPC name:~get\_by\_uuid}
 
17643
 
 
17644
{\bf Overview:} 
 
17645
Get a reference to the PSCSI HBA instance with the specified UUID.
 
17646
 
 
17647
 \noindent {\bf Signature:} 
 
17648
\begin{verbatim} (PSCSI_HBA ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
17649
 
 
17650
 
 
17651
\noindent{\bf Arguments:}
 
17652
 
 
17653
 
 
17654
\vspace{0.3cm}
 
17655
\begin{tabular}{|c|c|p{7cm}|}
 
17656
 \hline
 
17657
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17658
{\tt string } & uuid & UUID of object to return \\ \hline 
 
17659
 
 
17660
\end{tabular}
 
17661
 
 
17662
\vspace{0.3cm}
 
17663
 
 
17664
 \noindent {\bf Return Type:} 
 
17665
{\tt 
 
17666
PSCSI\_HBA ref
 
17667
}
 
17668
 
 
17669
 
 
17670
reference to the object
 
17671
\vspace{0.3cm}
 
17672
\vspace{0.3cm}
 
17673
\vspace{0.3cm}
 
17674
\subsubsection{RPC name:~get\_record}
 
17675
 
 
17676
{\bf Overview:} 
 
17677
Get a record containing the current state of the given PSCSI HBA.
 
17678
 
 
17679
 \noindent {\bf Signature:} 
 
17680
\begin{verbatim} (PSCSI_HBA record) get_record (session_id s, PSCSI_HBA ref self)\end{verbatim}
 
17681
 
 
17682
 
 
17683
\noindent{\bf Arguments:}
 
17684
 
 
17685
 
 
17686
\vspace{0.3cm}
 
17687
\begin{tabular}{|c|c|p{7cm}|}
 
17688
 \hline
 
17689
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17690
{\tt PSCSI\_HBA ref } & self & reference to the object \\ \hline 
 
17691
 
 
17692
\end{tabular}
 
17693
 
 
17694
\vspace{0.3cm}
 
17695
 
 
17696
 \noindent {\bf Return Type:} 
 
17697
{\tt 
 
17698
PSCSI\_HBA record
 
17699
}
 
17700
 
 
17701
 
 
17702
all fields from the object
 
17703
\vspace{0.3cm}
 
17704
\vspace{0.3cm}
 
17705
\vspace{0.3cm}
 
17706
 
 
17707
\vspace{1cm}
 
17708
\newpage
 
17709
\section{Class: user}
 
17710
\subsection{Fields for class: user}
 
17711
\begin{longtable}{|lllp{0.38\textwidth}|}
 
17712
\hline
 
17713
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf user} \\
 
17714
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
 
17715
user of the system.}} \\
 
17716
\hline
 
17717
Quals & Field & Type & Description \\
 
17718
\hline
 
17719
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
 
17720
$\mathit{RO}_\mathit{ins}$ &  {\tt short\_name} & string & short name (e.g. userid) \\
 
17721
$\mathit{RW}$ &  {\tt fullname} & string & full name \\
 
17722
\hline
 
17723
\end{longtable}
 
17724
\subsection{RPCs associated with class: user}
 
17725
\subsubsection{RPC name:~get\_uuid}
 
17726
 
 
17727
{\bf Overview:} 
 
17728
Get the uuid field of the given user.
 
17729
 
 
17730
 \noindent {\bf Signature:} 
 
17731
\begin{verbatim} string get_uuid (session_id s, user ref self)\end{verbatim}
 
17732
 
 
17733
 
 
17734
\noindent{\bf Arguments:}
 
17735
 
 
17736
 
 
17737
\vspace{0.3cm}
 
17738
\begin{tabular}{|c|c|p{7cm}|}
 
17739
 \hline
 
17740
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17741
{\tt user ref } & self & reference to the object \\ \hline 
 
17742
 
 
17743
\end{tabular}
 
17744
 
 
17745
\vspace{0.3cm}
 
17746
 
 
17747
 \noindent {\bf Return Type:} 
 
17748
{\tt 
 
17749
string
 
17750
}
 
17751
 
 
17752
 
 
17753
value of the field
 
17754
\vspace{0.3cm}
 
17755
\vspace{0.3cm}
 
17756
\vspace{0.3cm}
 
17757
\subsubsection{RPC name:~get\_short\_name}
 
17758
 
 
17759
{\bf Overview:} 
 
17760
Get the short\_name field of the given user.
 
17761
 
 
17762
 \noindent {\bf Signature:} 
 
17763
\begin{verbatim} string get_short_name (session_id s, user ref self)\end{verbatim}
 
17764
 
 
17765
 
 
17766
\noindent{\bf Arguments:}
 
17767
 
 
17768
 
 
17769
\vspace{0.3cm}
 
17770
\begin{tabular}{|c|c|p{7cm}|}
 
17771
 \hline
 
17772
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17773
{\tt user ref } & self & reference to the object \\ \hline 
 
17774
 
 
17775
\end{tabular}
 
17776
 
 
17777
\vspace{0.3cm}
 
17778
 
 
17779
 \noindent {\bf Return Type:} 
 
17780
{\tt 
 
17781
string
 
17782
}
 
17783
 
 
17784
 
 
17785
value of the field
 
17786
\vspace{0.3cm}
 
17787
\vspace{0.3cm}
 
17788
\vspace{0.3cm}
 
17789
\subsubsection{RPC name:~get\_fullname}
 
17790
 
 
17791
{\bf Overview:} 
 
17792
Get the fullname field of the given user.
 
17793
 
 
17794
 \noindent {\bf Signature:} 
 
17795
\begin{verbatim} string get_fullname (session_id s, user ref self)\end{verbatim}
 
17796
 
 
17797
 
 
17798
\noindent{\bf Arguments:}
 
17799
 
 
17800
 
 
17801
\vspace{0.3cm}
 
17802
\begin{tabular}{|c|c|p{7cm}|}
 
17803
 \hline
 
17804
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17805
{\tt user ref } & self & reference to the object \\ \hline 
 
17806
 
 
17807
\end{tabular}
 
17808
 
 
17809
\vspace{0.3cm}
 
17810
 
 
17811
 \noindent {\bf Return Type:} 
 
17812
{\tt 
 
17813
string
 
17814
}
 
17815
 
 
17816
 
 
17817
value of the field
 
17818
\vspace{0.3cm}
 
17819
\vspace{0.3cm}
 
17820
\vspace{0.3cm}
 
17821
\subsubsection{RPC name:~set\_fullname}
 
17822
 
 
17823
{\bf Overview:} 
 
17824
Set the fullname field of the given user.
 
17825
 
 
17826
 \noindent {\bf Signature:} 
 
17827
\begin{verbatim} void set_fullname (session_id s, user ref self, string value)\end{verbatim}
 
17828
 
 
17829
 
 
17830
\noindent{\bf Arguments:}
 
17831
 
 
17832
 
 
17833
\vspace{0.3cm}
 
17834
\begin{tabular}{|c|c|p{7cm}|}
 
17835
 \hline
 
17836
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17837
{\tt user ref } & self & reference to the object \\ \hline 
 
17838
 
 
17839
{\tt string } & value & New value to set \\ \hline 
 
17840
 
 
17841
\end{tabular}
 
17842
 
 
17843
\vspace{0.3cm}
 
17844
 
 
17845
 \noindent {\bf Return Type:} 
 
17846
{\tt 
 
17847
void
 
17848
}
 
17849
 
 
17850
 
 
17851
 
 
17852
\vspace{0.3cm}
 
17853
\vspace{0.3cm}
 
17854
\vspace{0.3cm}
 
17855
\subsubsection{RPC name:~create}
 
17856
 
 
17857
{\bf Overview:} 
 
17858
Create a new user instance, and return its handle.
 
17859
 
 
17860
 \noindent {\bf Signature:} 
 
17861
\begin{verbatim} (user ref) create (session_id s, user record args)\end{verbatim}
 
17862
 
 
17863
 
 
17864
\noindent{\bf Arguments:}
 
17865
 
 
17866
 
 
17867
\vspace{0.3cm}
 
17868
\begin{tabular}{|c|c|p{7cm}|}
 
17869
 \hline
 
17870
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17871
{\tt user record } & args & All constructor arguments \\ \hline 
 
17872
 
 
17873
\end{tabular}
 
17874
 
 
17875
\vspace{0.3cm}
 
17876
 
 
17877
 \noindent {\bf Return Type:} 
 
17878
{\tt 
 
17879
user ref
 
17880
}
 
17881
 
 
17882
 
 
17883
reference to the newly created object
 
17884
\vspace{0.3cm}
 
17885
\vspace{0.3cm}
 
17886
\vspace{0.3cm}
 
17887
\subsubsection{RPC name:~destroy}
 
17888
 
 
17889
{\bf Overview:} 
 
17890
Destroy the specified user instance.
 
17891
 
 
17892
 \noindent {\bf Signature:} 
 
17893
\begin{verbatim} void destroy (session_id s, user ref self)\end{verbatim}
 
17894
 
 
17895
 
 
17896
\noindent{\bf Arguments:}
 
17897
 
 
17898
 
 
17899
\vspace{0.3cm}
 
17900
\begin{tabular}{|c|c|p{7cm}|}
 
17901
 \hline
 
17902
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17903
{\tt user ref } & self & reference to the object \\ \hline 
 
17904
 
 
17905
\end{tabular}
 
17906
 
 
17907
\vspace{0.3cm}
 
17908
 
 
17909
 \noindent {\bf Return Type:} 
 
17910
{\tt 
 
17911
void
 
17912
}
 
17913
 
 
17914
 
 
17915
 
 
17916
\vspace{0.3cm}
 
17917
\vspace{0.3cm}
 
17918
\vspace{0.3cm}
 
17919
\subsubsection{RPC name:~get\_by\_uuid}
 
17920
 
 
17921
{\bf Overview:} 
 
17922
Get a reference to the user instance with the specified UUID.
 
17923
 
 
17924
 \noindent {\bf Signature:} 
 
17925
\begin{verbatim} (user ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
17926
 
 
17927
 
 
17928
\noindent{\bf Arguments:}
 
17929
 
 
17930
 
 
17931
\vspace{0.3cm}
 
17932
\begin{tabular}{|c|c|p{7cm}|}
 
17933
 \hline
 
17934
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17935
{\tt string } & uuid & UUID of object to return \\ \hline 
 
17936
 
 
17937
\end{tabular}
 
17938
 
 
17939
\vspace{0.3cm}
 
17940
 
 
17941
 \noindent {\bf Return Type:} 
 
17942
{\tt 
 
17943
user ref
 
17944
}
 
17945
 
 
17946
 
 
17947
reference to the object
 
17948
\vspace{0.3cm}
 
17949
\vspace{0.3cm}
 
17950
\vspace{0.3cm}
 
17951
\subsubsection{RPC name:~get\_record}
 
17952
 
 
17953
{\bf Overview:} 
 
17954
Get a record containing the current state of the given user.
 
17955
 
 
17956
 \noindent {\bf Signature:} 
 
17957
\begin{verbatim} (user record) get_record (session_id s, user ref self)\end{verbatim}
 
17958
 
 
17959
 
 
17960
\noindent{\bf Arguments:}
 
17961
 
 
17962
 
 
17963
\vspace{0.3cm}
 
17964
\begin{tabular}{|c|c|p{7cm}|}
 
17965
 \hline
 
17966
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
17967
{\tt user ref } & self & reference to the object \\ \hline 
 
17968
 
 
17969
\end{tabular}
 
17970
 
 
17971
\vspace{0.3cm}
 
17972
 
 
17973
 \noindent {\bf Return Type:} 
 
17974
{\tt 
 
17975
user record
 
17976
}
 
17977
 
 
17978
 
 
17979
all fields from the object
 
17980
\vspace{0.3cm}
 
17981
\vspace{0.3cm}
 
17982
\vspace{0.3cm}
 
17983
 
 
17984
\vspace{1cm}
 
17985
\newpage
 
17986
\section{Class: XSPolicy}
 
17987
\subsection{Fields for class: XSPolicy}
 
17988
\begin{longtable}{|lllp{0.38\textwidth}|}
 
17989
\hline
 
17990
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf XSPolicy} \\
 
17991
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A Xen Security Policy}} \\
 
17992
\hline
 
17993
Quals & Field & Type & Description \\
 
17994
\hline
 
17995
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string  & unique identifier / object reference \\
 
17996
$\mathit{RW}$              &  {\tt repr} & string  & representation of policy, i.e., XML \\
 
17997
$\mathit{RO}_\mathit{run}$ &  {\tt type} & xs\_type & type of the policy \\
 
17998
$\mathit{RO}_\mathit{run}$ & {\tt flags} & xs\_instantiationflags & policy
 
17999
status flags \\
 
18000
\hline
 
18001
\end{longtable}
 
18002
\subsection{Semantics of the class: XSPolicy}
 
18003
 
 
18004
The XSPolicy class is used for administering Xen Security policies. Through
 
18005
this class a new policy can be uploaded to the system, loaded into the
 
18006
Xen hypervisor for enforcement and be set as the policy that the
 
18007
system is automatically loading when the machine is started.
 
18008
 
 
18009
This class returns information about the currently administered policy,
 
18010
including a reference to the policy. This reference can then be used with
 
18011
policy-specific classes, i.e., the ACMPolicy class, to allow retrieval of
 
18012
information or changes to be made to a particular policy.
 
18013
 
 
18014
\subsection{Structure and datatypes of class: XSPolicy}
 
18015
 
 
18016
Format of the security label:
 
18017
 
 
18018
A security label consist of the three different parts {\it policy type},
 
18019
{\it policy name} and {\it label} separated with colons. To specify
 
18020
the virtual machine label for an ACM-type policy {\it xm-test}, the
 
18021
security label string would be {\it ACM:xm-test:blue}, where blue
 
18022
denotes the virtual machine's label. The format of resource labels is
 
18023
the same.\\[0.5cm]
 
18024
The following flags are used by this class:
 
18025
 
 
18026
\begin{longtable}{|l|l|l|}
 
18027
\hline
 
18028
{\tt xs\_type} & value & meaning \\
 
18029
\hline
 
18030
\hspace{0.5cm}{\tt XS\_POLICY\_ACM} & (1 $<<$ 0) & ACM-type policy \\
 
18031
\hline
 
18032
\end{longtable}
 
18033
 
 
18034
\begin{longtable}{|l|l|l|}
 
18035
\hline
 
18036
{\tt xs\_instantiationflags} & value & meaning \\
 
18037
\hline
 
18038
\hspace{0.5cm}{\tt XS\_INST\_NONE} & 0 & do nothing \\
 
18039
\hspace{0.5cm}{\tt XS\_INST\_BOOT} & (1 $<<$ 0) & make system boot with this policy \\
 
18040
\hspace{0.5cm}{\tt XS\_INST\_LOAD} & (1 $<<$ 1) & load policy immediately \\
 
18041
\hline
 
18042
\end{longtable}
 
18043
 
 
18044
\begin{longtable}{|l|l|l|}
 
18045
\hline
 
18046
{\tt xs\_policystate} & type & meaning \\
 
18047
\hline
 
18048
\hspace{0.5cm}{\tt xserr} & int & Error code from operation (if applicable) \\
 
18049
\hspace{0.5cm}{\tt xs\_ref}  & XSPolicy ref & reference to the XS policy as returned by the API \\
 
18050
\hspace{0.5cm}{\tt repr} & string & representation of the policy, i.e., XML \\
 
18051
\hspace{0.5cm}{\tt type} & xs\_type & the type of the policy \\
 
18052
\hspace{0.5cm}{\tt flags } & xs\_instantiationflags  & instantiation flags of the policy \\
 
18053
\hspace{0.5cm}{\tt version} & string & version of the policy \\
 
18054
\hspace{0.5cm}{\tt errors} & string & Base64-encoded sequence of integer tuples consisting \\
 
18055
& & of (error code, detail); will be returned as part  \\
 
18056
& & of the xs\_setpolicy function. \\
 
18057
\hline
 
18058
\end{longtable}
 
18059
 
 
18060
\subsection{Additional RPCs associated with class: XSPolicy}
 
18061
\subsubsection{RPC name:~get\_xstype}
 
18062
 
 
18063
{\bf Overview:}
 
18064
Return the Xen Security Policy types supported by this system
 
18065
 
 
18066
 \noindent {\bf Signature:}
 
18067
\begin{verbatim} xs_type get_xstype (session_id s)\end{verbatim}
 
18068
 
 
18069
 \noindent {\bf Return Type:}
 
18070
{\tt
 
18071
xs\_type
 
18072
}
 
18073
 
 
18074
flags representing the supported Xen security policy types
 
18075
 \vspace{0.3cm}
 
18076
\vspace{0.3cm}
 
18077
\vspace{0.3cm}
 
18078
\subsubsection{RPC name:~set\_xspolicy}
 
18079
 
 
18080
{\bf Overview:}
 
18081
Set the current XSPolicy. This function can also be be used for updating of
 
18082
an existing policy whose name must be equivalent to the one of the
 
18083
currently running policy.
 
18084
 
 
18085
\noindent {\bf Signature:}
 
18086
\begin{verbatim} xs_policystate set_xspolicy (session_id s, xs_type type, string repr,
 
18087
xs_instantiationflags flags, bool overwrite)\end{verbatim}
 
18088
 
 
18089
\noindent{\bf Arguments:}
 
18090
 
 
18091
\vspace{0.3cm}
 
18092
 
 
18093
\begin{tabular}{|c|c|p{7cm}|}
 
18094
 \hline
 
18095
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18096
{\tt xs\_type } & type & the type of policy \\ \hline
 
18097
{\tt string} & repr & representation of the policy, i.e., XML \\ \hline
 
18098
{\tt xs\_instantiationflags}    & flags & flags for the setting of the policy \\ \hline
 
18099
{\tt bool}   & overwrite & whether to overwrite an existing policy \\ \hline
 
18100
 
 
18101
\end{tabular}
 
18102
 
 
18103
\vspace{0.3cm}
 
18104
 
 
18105
 
 
18106
 \noindent {\bf Return Type:}
 
18107
{\tt
 
18108
xs\_policystate
 
18109
}
 
18110
 
 
18111
 
 
18112
State information about the policy. In case an error occurred, the 'xs\_err'
 
18113
field contains the error code. The 'errors' may contain further information
 
18114
about the error.
 
18115
 \vspace{0.3cm}
 
18116
\vspace{0.3cm}
 
18117
\vspace{0.3cm}
 
18118
\subsubsection{RPC name:~reset\_xspolicy}
 
18119
 
 
18120
{\bf Overview:}
 
18121
Attempt to reset the system's policy by installing the default policy.
 
18122
Since this function is implemented as an update to the current policy, it
 
18123
underlies the same restrictions. This function may fail if for example
 
18124
other domains than Domain-0 are running and use a different label than
 
18125
Domain-0
 
18126
 
 
18127
\noindent {\bf Signature:}
 
18128
\begin{verbatim} xs_policystate reset_xspolicy (session_id s, xs_type type)
 
18129
\end{verbatim}
 
18130
 
 
18131
\noindent{\bf Arguments:}
 
18132
 
 
18133
\vspace{0.3cm}
 
18134
 
 
18135
\begin{tabular}{|c|c|p{7cm}|}
 
18136
 \hline
 
18137
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18138
{\tt xs\_type } & type & the type of policy \\ \hline
 
18139
 
 
18140
\end{tabular}
 
18141
 
 
18142
\vspace{0.3cm}
 
18143
 
 
18144
 
 
18145
 \noindent {\bf Return Type:}
 
18146
{\tt
 
18147
xs\_policystate
 
18148
}
 
18149
 
 
18150
 
 
18151
State information about the policy. In case an error occurred, the 'xs\_err'
 
18152
field contains the error code. The 'errors' may contain further information
 
18153
about the error.
 
18154
\vspace{0.3cm}
 
18155
\vspace{0.3cm}
 
18156
\vspace{0.3cm}
 
18157
\subsubsection{RPC name:~get\_xspolicy}
 
18158
 
 
18159
{\bf Overview:}
 
18160
Get information regarding the currently set Xen Security Policy
 
18161
 
 
18162
 \noindent {\bf Signature:}
 
18163
\begin{verbatim} xs_policystate get_xspolicy (session_id s)\end{verbatim}
 
18164
 
 
18165
\vspace{0.3cm}
 
18166
 
 
18167
 \noindent {\bf Return Type:}
 
18168
{\tt
 
18169
xs\_policystate
 
18170
}
 
18171
 
 
18172
 
 
18173
Policy state information.
 
18174
\vspace{0.3cm}
 
18175
\vspace{0.3cm}
 
18176
\vspace{0.3cm}
 
18177
\subsubsection{RPC name:~rm\_xsbootpolicy}
 
18178
 
 
18179
{\bf Overview:}
 
18180
Remove any policy from the default boot configuration.
 
18181
 
 
18182
 \noindent {\bf Signature:}
 
18183
\begin{verbatim} void rm_xsbootpolicy (session_id s)\end{verbatim}
 
18184
 
 
18185
\vspace{0.3cm}
 
18186
 
 
18187
\noindent{\bf Possible Error Codes:} {\tt SECURITY\_ERROR}
 
18188
 
 
18189
\vspace{0.3cm}
 
18190
\vspace{0.3cm}
 
18191
\vspace{0.3cm}
 
18192
\subsubsection{RPC name:~get\_labeled\_resources}
 
18193
 
 
18194
{\bf Overview:}
 
18195
Get a list of resources that have been labeled.
 
18196
 
 
18197
 \noindent {\bf Signature:}
 
18198
\begin{verbatim} ((string -> string) Map) get_labeled_resources (session_id s)\end{verbatim}
 
18199
 
 
18200
 
 
18201
\vspace{0.3cm}
 
18202
 
 
18203
 \noindent {\bf Return Type:}
 
18204
{\tt
 
18205
(string $\rightarrow$ string) Map
 
18206
}
 
18207
 
 
18208
 
 
18209
A map of resources with their labels.
 
18210
\vspace{0.3cm}
 
18211
\vspace{0.3cm}
 
18212
\vspace{0.3cm}
 
18213
\subsubsection{RPC name:~set\_resource\_label}
 
18214
 
 
18215
{\bf Overview:}
 
18216
Label the given resource with the given label. An empty label removes any label
 
18217
from the resource.
 
18218
 
 
18219
 \noindent {\bf Signature:}
 
18220
\begin{verbatim} void set_resource_label (session_id s, string resource, string
 
18221
label, string old_label)\end{verbatim}
 
18222
 
 
18223
 
 
18224
\noindent{\bf Arguments:}
 
18225
 
 
18226
 
 
18227
\vspace{0.3cm}
 
18228
\begin{tabular}{|c|c|p{7cm}|}
 
18229
 \hline
 
18230
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18231
{\tt string } & resource & resource to label \\ \hline
 
18232
{\tt string } & label & label for the resource \\ \hline
 
18233
{\tt string } & old\_label & Optional label value that the security label \\
 
18234
& & must currently have for the change to succeed. \\ \hline
 
18235
 
 
18236
\end{tabular}
 
18237
 
 
18238
\vspace{0.3cm}
 
18239
 
 
18240
\noindent{\bf Possible Error Codes:} {\tt SECURITY\_ERROR}
 
18241
 
 
18242
\vspace{0.3cm}
 
18243
\vspace{0.3cm}
 
18244
\vspace{0.3cm}
 
18245
\subsubsection{RPC name:~get\_resource\_label}
 
18246
 
 
18247
{\bf Overview:}
 
18248
Get the label of the given resource.
 
18249
 
 
18250
 \noindent {\bf Signature:}
 
18251
\begin{verbatim} string get_resource_label (session_id s, string resource)\end{verbatim}
 
18252
 
 
18253
 
 
18254
\noindent{\bf Arguments:}
 
18255
 
 
18256
 
 
18257
\vspace{0.3cm}
 
18258
\begin{tabular}{|c|c|p{7cm}|}
 
18259
 \hline
 
18260
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18261
{\tt string } & resource & resource to label \\ \hline
 
18262
 
 
18263
\end{tabular}
 
18264
 
 
18265
\vspace{0.3cm}
 
18266
 
 
18267
 \noindent {\bf Return Type:}
 
18268
{\tt
 
18269
string
 
18270
}
 
18271
 
 
18272
 
 
18273
The label of the given resource.
 
18274
\vspace{0.3cm}
 
18275
\vspace{0.3cm}
 
18276
\vspace{0.3cm}
 
18277
\subsubsection{RPC name:~can\_run}
 
18278
 
 
18279
{\bf Overview:}
 
18280
Check whether a VM with the given security label could run on the system.
 
18281
 
 
18282
 \noindent {\bf Signature:}
 
18283
\begin{verbatim} int can_run (session_id s, string security_label)\end{verbatim}
 
18284
 
 
18285
 
 
18286
\noindent{\bf Arguments:}
 
18287
 
 
18288
 
 
18289
\vspace{0.3cm}
 
18290
\begin{tabular}{|c|c|p{7cm}|}
 
18291
 \hline
 
18292
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18293
{\tt string } & security\_label & reference to the object \\ \hline
 
18294
 
 
18295
\end{tabular}
 
18296
 
 
18297
\vspace{0.3cm}
 
18298
 
 
18299
 \noindent {\bf Return Type:}
 
18300
{\tt
 
18301
int
 
18302
}
 
18303
 
 
18304
 
 
18305
Error code indicating whether a VM with the given security label could run.
 
18306
If zero, it can run.
 
18307
 
 
18308
\vspace{0.3cm}
 
18309
 
 
18310
\noindent{\bf Possible Error Codes:} {\tt SECURITY\_ERROR}
 
18311
 
 
18312
\subsubsection{RPC name:~get\_all}
 
18313
 
 
18314
{\bf Overview:}
 
18315
Return a list of all the XSPolicies known to the system.
 
18316
 
 
18317
 \noindent {\bf Signature:}
 
18318
\begin{verbatim} ((XSPolicy ref) Set) get_all (session_id s)\end{verbatim}
 
18319
 
 
18320
 
 
18321
\vspace{0.3cm}
 
18322
 
 
18323
 \noindent {\bf Return Type:}
 
18324
{\tt
 
18325
(XSPolicy ref) Set
 
18326
}
 
18327
 
 
18328
 
 
18329
A list of all the IDs of all the XSPolicies
 
18330
\vspace{0.3cm}
 
18331
\vspace{0.3cm}
 
18332
\vspace{0.3cm}
 
18333
\subsubsection{RPC name:~get\_uuid}
 
18334
 
 
18335
{\bf Overview:}
 
18336
Get the uuid field of the given XSPolicy.
 
18337
 
 
18338
 \noindent {\bf Signature:}
 
18339
\begin{verbatim} string get_uuid (session_id s, XSPolicy ref self)\end{verbatim}
 
18340
 
 
18341
 
 
18342
\noindent{\bf Arguments:}
 
18343
 
 
18344
 
 
18345
\vspace{0.3cm}
 
18346
\begin{tabular}{|c|c|p{7cm}|}
 
18347
 \hline
 
18348
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18349
{\tt XSPolicy ref } & self & reference to the object \\ \hline
 
18350
 
 
18351
\end{tabular}
 
18352
 
 
18353
\vspace{0.3cm}
 
18354
 
 
18355
 \noindent {\bf Return Type:}
 
18356
{\tt
 
18357
string
 
18358
}
 
18359
 
 
18360
 
 
18361
value of the field
 
18362
\vspace{0.3cm}
 
18363
\vspace{0.3cm}
 
18364
\vspace{0.3cm}
 
18365
\subsubsection{RPC name:~get\_record}
 
18366
 
 
18367
{\bf Overview:}
 
18368
Get a record of the referenced XSPolicy.
 
18369
 
 
18370
 \noindent {\bf Signature:}
 
18371
\begin{verbatim} (XSPolicy record) get_record (session_id s, xs_ref xspolicy)\end{verbatim}
 
18372
 
 
18373
 
 
18374
\noindent{\bf Arguments:}
 
18375
 
 
18376
 
 
18377
\vspace{0.3cm}
 
18378
\begin{tabular}{|c|c|p{7cm}|}
 
18379
 \hline
 
18380
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18381
{\tt xs ref } & self & reference to the object \\ \hline
 
18382
 
 
18383
\end{tabular}
 
18384
 
 
18385
\vspace{0.3cm}
 
18386
 
 
18387
 \noindent {\bf Return Type:}
 
18388
{\tt
 
18389
XSPolicy record
 
18390
}
 
18391
 
 
18392
 
 
18393
all fields from the object
 
18394
\vspace{0.3cm}
 
18395
\vspace{0.3cm}
 
18396
\vspace{0.3cm}
 
18397
\newpage
 
18398
\section{Class: ACMPolicy}
 
18399
\subsection{Fields for class: ACMPolicy}
 
18400
\begin{longtable}{|lllp{0.38\textwidth}|}
 
18401
\hline
 
18402
\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf ACMPolicy} \\
 
18403
\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em An ACM Security Policy}} \\
 
18404
\hline
 
18405
Quals & Field & Type & Description \\
 
18406
\hline
 
18407
$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier / object reference \\
 
18408
$\mathit{RW}$              &  {\tt repr} & string & representation of policy, in XML \\
 
18409
$\mathit{RO}_\mathit{run}$ &  {\tt type} & xs\_type & type of the policy \\
 
18410
$\mathit{RO}_\mathit{run}$ & {\tt flags} & xs\_instantiationflags & policy
 
18411
status flags \\
 
18412
\hline
 
18413
\end{longtable}
 
18414
 
 
18415
\subsection{Structure and datatypes of class: ACMPolicy}
 
18416
 
 
18417
\vspace{0.5cm}
 
18418
The following data structures are used:
 
18419
 
 
18420
\begin{longtable}{|l|l|l|}
 
18421
\hline
 
18422
{\tt RIP acm\_policyheader} & type & meaning \\
 
18423
\hline
 
18424
\hspace{0.5cm}{\tt policyname}   & string & name of the policy \\
 
18425
\hspace{0.5cm}{\tt policyurl }   & string & URL of the policy \\
 
18426
\hspace{0.5cm}{\tt date}         & string & data of the policy \\
 
18427
\hspace{0.5cm}{\tt reference}    & string & reference of the policy \\
 
18428
\hspace{0.5cm}{\tt namespaceurl} & string & namespaceurl of the policy \\
 
18429
\hspace{0.5cm}{\tt version}      & string & version of the policy \\
 
18430
\hline
 
18431
\end{longtable}
 
18432
 
 
18433
\vspace{0.3cm}
 
18434
\vspace{0.3cm}
 
18435
\vspace{0.3cm}
 
18436
\subsubsection{RPC name:~get\_header}
 
18437
 
 
18438
{\bf Overview:}
 
18439
Get the referenced policy's header information.
 
18440
 
 
18441
 \noindent {\bf Signature:}
 
18442
\begin{verbatim} acm_policyheader get_header (session_id s, xs ref self)\end{verbatim}
 
18443
 
 
18444
 
 
18445
\noindent{\bf Arguments:}
 
18446
 
 
18447
 
 
18448
\vspace{0.3cm}
 
18449
\begin{tabular}{|c|c|p{7cm}|}
 
18450
 \hline
 
18451
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18452
{\tt xs ref } & self & reference to the object \\ \hline
 
18453
 
 
18454
\end{tabular}
 
18455
 
 
18456
\vspace{0.3cm}
 
18457
 
 
18458
 \noindent {\bf Return Type:}
 
18459
{\tt
 
18460
acm\_policyheader
 
18461
}
 
18462
 
 
18463
 
 
18464
The policy's header information.
 
18465
\vspace{0.3cm}
 
18466
\vspace{0.3cm}
 
18467
\vspace{0.3cm}
 
18468
\subsubsection{RPC name:~get\_xml}
 
18469
 
 
18470
{\bf Overview:}
 
18471
Get the XML representation of the given policy.
 
18472
 
 
18473
 \noindent {\bf Signature:}
 
18474
\begin{verbatim} string get_XML (session_id s, xs ref self)\end{verbatim}
 
18475
 
 
18476
 
 
18477
\noindent{\bf Arguments:}
 
18478
 
 
18479
 
 
18480
\vspace{0.3cm}
 
18481
\begin{tabular}{|c|c|p{7cm}|}
 
18482
 \hline
 
18483
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18484
{\tt xs ref } & self & reference to the object \\ \hline
 
18485
 
 
18486
\end{tabular}
 
18487
 
 
18488
\vspace{0.3cm}
 
18489
 
 
18490
 \noindent {\bf Return Type:}
 
18491
{\tt
 
18492
string
 
18493
}
 
18494
 
 
18495
 
 
18496
XML representation of the referenced policy
 
18497
\vspace{0.3cm}
 
18498
\vspace{0.3cm}
 
18499
\vspace{0.3cm}
 
18500
\subsubsection{RPC name:~get\_map}
 
18501
 
 
18502
{\bf Overview:}
 
18503
Get the mapping information of the given policy.
 
18504
 
 
18505
 \noindent {\bf Signature:}
 
18506
\begin{verbatim} string get_map (session_id s, xs ref self)\end{verbatim}
 
18507
 
 
18508
 
 
18509
\noindent{\bf Arguments:}
 
18510
 
 
18511
 
 
18512
\vspace{0.3cm}
 
18513
\begin{tabular}{|c|c|p{7cm}|}
 
18514
 \hline
 
18515
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18516
{\tt xs ref } & self & reference to the object \\ \hline
 
18517
 
 
18518
\end{tabular}
 
18519
 
 
18520
\vspace{0.3cm}
 
18521
 
 
18522
 \noindent {\bf Return Type:}
 
18523
{\tt
 
18524
string
 
18525
}
 
18526
 
 
18527
 
 
18528
Mapping information of the referenced policy.
 
18529
\vspace{0.3cm}
 
18530
\vspace{0.3cm}
 
18531
\vspace{0.3cm}
 
18532
\subsubsection{RPC name:~get\_binary}
 
18533
 
 
18534
{\bf Overview:}
 
18535
Get the binary policy representation of the referenced policy.
 
18536
 
 
18537
 \noindent {\bf Signature:}
 
18538
\begin{verbatim} string get_binary (session_id s, xs ref self)\end{verbatim}
 
18539
 
 
18540
 
 
18541
\noindent{\bf Arguments:}
 
18542
 
 
18543
 
 
18544
\vspace{0.3cm}
 
18545
\begin{tabular}{|c|c|p{7cm}|}
 
18546
 \hline
 
18547
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18548
{\tt xs ref } & self & reference to the object \\ \hline
 
18549
 
 
18550
\end{tabular}
 
18551
 
 
18552
\vspace{0.3cm}
 
18553
 
 
18554
 \noindent {\bf Return Type:}
 
18555
{\tt
 
18556
string
 
18557
}
 
18558
 
 
18559
 
 
18560
Base64-encoded representation of the binary policy.
 
18561
\vspace{0.3cm}
 
18562
\vspace{0.3cm}
 
18563
\vspace{0.3cm}
 
18564
\subsubsection{RPC name:~get\_enforced\_binary}
 
18565
 
 
18566
{\bf Overview:}
 
18567
Get the binary policy representation of the currently enforced ACM policy.
 
18568
In case the default policy is loaded in the hypervisor, a policy may be
 
18569
managed by xend that is not yet loaded into the hypervisor.
 
18570
 
 
18571
 \noindent {\bf Signature:}
 
18572
\begin{verbatim} string get_enforced_binary (session_id s, xs ref self)\end{verbatim}
 
18573
 
 
18574
 
 
18575
\noindent{\bf Arguments:}
 
18576
 
 
18577
 
 
18578
\vspace{0.3cm}
 
18579
\begin{tabular}{|c|c|p{7cm}|}
 
18580
 \hline
 
18581
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18582
{\tt xs ref } & self & reference to the object \\ \hline
 
18583
 
 
18584
\end{tabular}
 
18585
 
 
18586
\vspace{0.3cm}
 
18587
 
 
18588
 \noindent {\bf Return Type:}
 
18589
{\tt
 
18590
string
 
18591
}
 
18592
 
 
18593
 
 
18594
Base64-encoded representation of the binary policy.
 
18595
\vspace{0.3cm}
 
18596
\vspace{0.3cm}
 
18597
\vspace{0.3cm}
 
18598
\subsubsection{RPC name:~get\_VM\_ssidref}
 
18599
 
 
18600
{\bf Overview:}
 
18601
Get the ACM ssidref of the given virtual machine.
 
18602
 
 
18603
 \noindent {\bf Signature:}
 
18604
\begin{verbatim} string get_VM_ssidref (session_id s, vm ref vm)\end{verbatim}
 
18605
 
 
18606
 
 
18607
\noindent{\bf Arguments:}
 
18608
 
 
18609
 
 
18610
\vspace{0.3cm}
 
18611
\begin{tabular}{|c|c|p{7cm}|}
 
18612
 \hline
 
18613
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18614
{\tt vm ref } & vm & reference to a valid VM \\ \hline
 
18615
 
 
18616
\end{tabular}
 
18617
 
 
18618
\vspace{0.3cm}
 
18619
 
 
18620
 \noindent {\bf Return Type:}
 
18621
{\tt
 
18622
int
 
18623
}
 
18624
 
 
18625
 
 
18626
The ssidref of the given virtual machine.
 
18627
 
 
18628
\vspace{0.3cm}
 
18629
 
 
18630
\noindent{\bf Possible Error Codes:}
 
18631
  {\tt HANDLE\_INVALID, VM\_BAD\_POWER\_STATE, SECURITY\_ERROR}
 
18632
 
 
18633
\vspace{0.3cm}
 
18634
\vspace{0.3cm}
 
18635
\vspace{0.3cm}
 
18636
\subsubsection{RPC name:~get\_all}
 
18637
 
 
18638
{\bf Overview:}
 
18639
Return a list of all the ACMPolicies known to the system.
 
18640
 
 
18641
 \noindent {\bf Signature:}
 
18642
\begin{verbatim} ((ACMPolicy ref) Set) get_all (session_id s)\end{verbatim}
 
18643
 
 
18644
 
 
18645
\vspace{0.3cm}
 
18646
 
 
18647
 \noindent {\bf Return Type:}
 
18648
{\tt
 
18649
(ACMPolicy ref) Set
 
18650
}
 
18651
 
 
18652
 
 
18653
A list of all the IDs of all the ACMPolicies
 
18654
\vspace{0.3cm}
 
18655
\vspace{0.3cm}
 
18656
\vspace{0.3cm}
 
18657
\subsubsection{RPC name:~get\_uuid}
 
18658
 
 
18659
{\bf Overview:}
 
18660
Get the uuid field of the given ACMPolicy.
 
18661
 
 
18662
 \noindent {\bf Signature:}
 
18663
\begin{verbatim} string get_uuid (session_id s, ACMPolicy ref self)\end{verbatim}
 
18664
 
 
18665
 
 
18666
\noindent{\bf Arguments:}
 
18667
 
 
18668
 
 
18669
\vspace{0.3cm}
 
18670
\begin{tabular}{|c|c|p{7cm}|}
 
18671
 \hline
 
18672
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18673
{\tt ACMPolicy ref } & self & reference to the object \\ \hline
 
18674
 
 
18675
\end{tabular}
 
18676
 
 
18677
\vspace{0.3cm}
 
18678
 
 
18679
 \noindent {\bf Return Type:}
 
18680
{\tt
 
18681
string
 
18682
}
 
18683
 
 
18684
 
 
18685
value of the field
 
18686
\vspace{0.3cm}
 
18687
\vspace{0.3cm}
 
18688
\vspace{0.3cm}
 
18689
\subsubsection{RPC name:~get\_record}
 
18690
 
 
18691
{\bf Overview:}
 
18692
Get a record of the referenced ACMPolicy.
 
18693
 
 
18694
 \noindent {\bf Signature:}
 
18695
\begin{verbatim} (XSPolicy record) get_record (session_id s, xs_ref xspolicy)\end{verbatim}
 
18696
 
 
18697
 
 
18698
\noindent{\bf Arguments:}
 
18699
 
 
18700
 
 
18701
\vspace{0.3cm}
 
18702
\begin{tabular}{|c|c|p{7cm}|}
 
18703
 \hline
 
18704
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18705
{\tt xs ref } & self & reference to the object \\ \hline
 
18706
 
 
18707
\end{tabular}
 
18708
 
 
18709
\vspace{0.3cm}
 
18710
 
 
18711
 \noindent {\bf Return Type:}
 
18712
{\tt
 
18713
XSPolicy record
 
18714
}
 
18715
 
 
18716
 
 
18717
all fields from the object
 
18718
 
 
18719
\newpage
 
18720
\section{Class: debug}
 
18721
\subsection{Fields for class: debug}
 
18722
{\bf Class debug has no fields.}
 
18723
\subsection{RPCs associated with class: debug}
 
18724
\subsubsection{RPC name:~get\_all}
 
18725
 
 
18726
{\bf Overview:} 
 
18727
Return a list of all the debug records known to the system
 
18728
 
 
18729
 \noindent {\bf Signature:} 
 
18730
\begin{verbatim} ((debug ref) Set) get_all (session_id s)\end{verbatim}
 
18731
 
 
18732
 
 
18733
\vspace{0.3cm}
 
18734
 
 
18735
 \noindent {\bf Return Type:} 
 
18736
{\tt 
 
18737
(debug ref) Set
 
18738
}
 
18739
 
 
18740
 
 
18741
A list of all the IDs of all the debug records
 
18742
\vspace{0.3cm}
 
18743
\vspace{0.3cm}
 
18744
\vspace{0.3cm}
 
18745
\subsubsection{RPC name:~return\_failure}
 
18746
 
 
18747
{\bf Overview:} 
 
18748
Return an API 'successful' failure.
 
18749
 
 
18750
 \noindent {\bf Signature:} 
 
18751
\begin{verbatim} void return_failure (session_id s)\end{verbatim}
 
18752
 
 
18753
 
 
18754
\vspace{0.3cm}
 
18755
 
 
18756
 \noindent {\bf Return Type:} 
 
18757
{\tt 
 
18758
void
 
18759
}
 
18760
 
 
18761
 
 
18762
 
 
18763
\vspace{0.3cm}
 
18764
\vspace{0.3cm}
 
18765
\vspace{0.3cm}
 
18766
\subsubsection{RPC name:~create}
 
18767
 
 
18768
{\bf Overview:} 
 
18769
Create a new debug instance, and return its handle.
 
18770
 
 
18771
 \noindent {\bf Signature:} 
 
18772
\begin{verbatim} (debug ref) create (session_id s, debug record args)\end{verbatim}
 
18773
 
 
18774
 
 
18775
\noindent{\bf Arguments:}
 
18776
 
 
18777
 
 
18778
\vspace{0.3cm}
 
18779
\begin{tabular}{|c|c|p{7cm}|}
 
18780
 \hline
 
18781
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18782
{\tt debug record } & args & All constructor arguments \\ \hline 
 
18783
 
 
18784
\end{tabular}
 
18785
 
 
18786
\vspace{0.3cm}
 
18787
 
 
18788
 \noindent {\bf Return Type:} 
 
18789
{\tt 
 
18790
debug ref
 
18791
}
 
18792
 
 
18793
 
 
18794
reference to the newly created object
 
18795
\vspace{0.3cm}
 
18796
\vspace{0.3cm}
 
18797
\vspace{0.3cm}
 
18798
\subsubsection{RPC name:~destroy}
 
18799
 
 
18800
{\bf Overview:} 
 
18801
Destroy the specified debug instance.
 
18802
 
 
18803
 \noindent {\bf Signature:} 
 
18804
\begin{verbatim} void destroy (session_id s, debug ref self)\end{verbatim}
 
18805
 
 
18806
 
 
18807
\noindent{\bf Arguments:}
 
18808
 
 
18809
 
 
18810
\vspace{0.3cm}
 
18811
\begin{tabular}{|c|c|p{7cm}|}
 
18812
 \hline
 
18813
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18814
{\tt debug ref } & self & reference to the object \\ \hline 
 
18815
 
 
18816
\end{tabular}
 
18817
 
 
18818
\vspace{0.3cm}
 
18819
 
 
18820
 \noindent {\bf Return Type:} 
 
18821
{\tt 
 
18822
void
 
18823
}
 
18824
 
 
18825
 
 
18826
 
 
18827
\vspace{0.3cm}
 
18828
\vspace{0.3cm}
 
18829
\vspace{0.3cm}
 
18830
\subsubsection{RPC name:~get\_by\_uuid}
 
18831
 
 
18832
{\bf Overview:} 
 
18833
Get a reference to the debug instance with the specified UUID.
 
18834
 
 
18835
 \noindent {\bf Signature:} 
 
18836
\begin{verbatim} (debug ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
 
18837
 
 
18838
 
 
18839
\noindent{\bf Arguments:}
 
18840
 
 
18841
 
 
18842
\vspace{0.3cm}
 
18843
\begin{tabular}{|c|c|p{7cm}|}
 
18844
 \hline
 
18845
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18846
{\tt string } & uuid & UUID of object to return \\ \hline 
 
18847
 
 
18848
\end{tabular}
 
18849
 
 
18850
\vspace{0.3cm}
 
18851
 
 
18852
 \noindent {\bf Return Type:} 
 
18853
{\tt 
 
18854
debug ref
 
18855
}
 
18856
 
 
18857
 
 
18858
reference to the object
 
18859
\vspace{0.3cm}
 
18860
\vspace{0.3cm}
 
18861
\vspace{0.3cm}
 
18862
\subsubsection{RPC name:~get\_record}
 
18863
 
 
18864
{\bf Overview:} 
 
18865
Get a record containing the current state of the given debug.
 
18866
 
 
18867
 \noindent {\bf Signature:} 
 
18868
\begin{verbatim} (debug record) get_record (session_id s, debug ref self)\end{verbatim}
 
18869
 
 
18870
 
 
18871
\noindent{\bf Arguments:}
 
18872
 
 
18873
 
 
18874
\vspace{0.3cm}
 
18875
\begin{tabular}{|c|c|p{7cm}|}
 
18876
 \hline
 
18877
{\bf type} & {\bf name} & {\bf description} \\ \hline
 
18878
{\tt debug ref } & self & reference to the object \\ \hline 
 
18879
 
 
18880
\end{tabular}
 
18881
 
 
18882
\vspace{0.3cm}
 
18883
 
 
18884
 \noindent {\bf Return Type:} 
 
18885
{\tt 
 
18886
debug record
 
18887
}
 
18888
 
 
18889
 
 
18890
all fields from the object
 
18891
\vspace{0.3cm}
 
18892
\vspace{0.3cm}
 
18893
\vspace{0.3cm}
 
18894