1
0
mirror of https://github.com/vmware/vsphere-automation-sdk-python.git synced 2024-11-22 17:39:59 -05:00
vsphere-automation-sdk-python/vsphere/6.7.0/vmware.vapi.html

933 lines
50 KiB
HTML
Raw Normal View History

2018-08-07 19:42:25 -04:00
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>vmware.vapi package &mdash; vSphere Automation SDK for Python 6.7.0 documentation</title>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="index" title="Index"
href="genindex.html"/>
<link rel="search" title="Search" href="search.html"/>
<link rel="top" title="vSphere Automation SDK for Python 6.7.0 documentation" href="index.html"/>
<link rel="up" title="vmware package" href="vmware.html"/>
<link rel="next" title="vmware.vapi.lib package" href="vmware.vapi.lib.html"/>
<link rel="prev" title="vmware package" href="vmware.html"/>
<script src="_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="index.html" class="icon icon-home"> vSphere Automation SDK for Python
</a>
<div class="version">
6.7.0
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<p class="caption"><span class="caption-text">Contents:</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="com.html">com package</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="vmware.html">vmware package</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="vmware.html#subpackages">Subpackages</a><ul class="current">
<li class="toctree-l3 current"><a class="current reference internal" href="#">vmware.vapi package</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#subpackages">Subpackages</a></li>
<li class="toctree-l4"><a class="reference internal" href="#submodules">Submodules</a></li>
<li class="toctree-l4"><a class="reference internal" href="#module-vmware.vapi.core">vmware.vapi.core module</a></li>
<li class="toctree-l4"><a class="reference internal" href="#module-vmware.vapi.exception">vmware.vapi.exception module</a></li>
<li class="toctree-l4"><a class="reference internal" href="#module-vmware.vapi.message">vmware.vapi.message module</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">vSphere Automation SDK for Python</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> &raquo;</li>
<li><a href="vmware.html">vmware package</a> &raquo;</li>
<li>vmware.vapi package</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/vmware.vapi.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="module-vmware.vapi">
<span id="vmware-vapi-package"></span><h1>vmware.vapi package<a class="headerlink" href="#module-vmware.vapi" title="Permalink to this headline"></a></h1>
<div class="section" id="subpackages">
<h2>Subpackages<a class="headerlink" href="#subpackages" title="Permalink to this headline"></a></h2>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="vmware.vapi.lib.html">vmware.vapi.lib package</a><ul>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.lib.html#submodules">Submodules</a></li>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.lib.html#module-vmware.vapi.lib.connect">vmware.vapi.lib.connect module</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="vmware.vapi.security.html">vmware.vapi.security package</a><ul>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.security.html#subpackages">Subpackages</a><ul>
<li class="toctree-l3"><a class="reference internal" href="vmware.vapi.security.client.html">vmware.vapi.security.client package</a><ul>
<li class="toctree-l4"><a class="reference internal" href="vmware.vapi.security.client.html#submodules">Submodules</a></li>
<li class="toctree-l4"><a class="reference internal" href="vmware.vapi.security.client.html#module-vmware.vapi.security.client.security_context_filter">vmware.vapi.security.client.security_context_filter module</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.security.html#submodules">Submodules</a></li>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.security.html#module-vmware.vapi.security.session">vmware.vapi.security.session module</a></li>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.security.html#module-vmware.vapi.security.sso">vmware.vapi.security.sso module</a></li>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.security.html#module-vmware.vapi.security.user_password">vmware.vapi.security.user_password module</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="vmware.vapi.stdlib.html">vmware.vapi.stdlib package</a><ul>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.stdlib.html#subpackages">Subpackages</a><ul>
<li class="toctree-l3"><a class="reference internal" href="vmware.vapi.stdlib.client.html">vmware.vapi.stdlib.client package</a><ul>
<li class="toctree-l4"><a class="reference internal" href="vmware.vapi.stdlib.client.html#submodules">Submodules</a></li>
<li class="toctree-l4"><a class="reference internal" href="vmware.vapi.stdlib.client.html#module-vmware.vapi.stdlib.client.factories">vmware.vapi.stdlib.client.factories module</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="vmware.vapi.vmc.html">vmware.vapi.vmc package</a><ul>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.vmc.html#submodules">Submodules</a></li>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.vmc.html#vmware-vapi-vmc-client-module">vmware.vapi.vmc.client module</a></li>
<li class="toctree-l2"><a class="reference internal" href="vmware.vapi.vmc.html#module-vmware.vapi.vmc.csp_filter">vmware.vapi.vmc.csp_filter module</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div class="section" id="submodules">
<h2>Submodules<a class="headerlink" href="#submodules" title="Permalink to this headline"></a></h2>
</div>
<div class="section" id="module-vmware.vapi.core">
<span id="vmware-vapi-core-module"></span><h2>vmware.vapi.core module<a class="headerlink" href="#module-vmware.vapi.core" title="Permalink to this headline"></a></h2>
<p>Core Protocol Definition classes</p>
<dl class="class">
<dt id="vmware.vapi.core.ApiInterface">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">ApiInterface</code><a class="headerlink" href="#vmware.vapi.core.ApiInterface" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>The ApiInterface interface provides introspection APIs for a
vAPI interface; it is implemented by API providers.</p>
<dl class="method">
<dt id="vmware.vapi.core.ApiInterface.get_definition">
<code class="descname">get_definition</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ApiInterface.get_definition" title="Permalink to this definition"></a></dt>
<dd><p>Returns interface definition</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#vmware.vapi.core.InterfaceDefinition" title="vmware.vapi.core.InterfaceDefinition"><code class="xref py py-class docutils literal notranslate"><span class="pre">InterfaceDefinition</span></code></a></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Interface definition</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.ApiInterface.get_identifier">
<code class="descname">get_identifier</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ApiInterface.get_identifier" title="Permalink to this definition"></a></dt>
<dd><p>Returns interface identifier</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#vmware.vapi.core.InterfaceIdentifier" title="vmware.vapi.core.InterfaceIdentifier"><code class="xref py py-class docutils literal notranslate"><span class="pre">InterfaceIdentifier</span></code></a></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Interface identifier</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.ApiInterface.get_method_definition">
<code class="descname">get_method_definition</code><span class="sig-paren">(</span><em>method_id</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ApiInterface.get_method_definition" title="Permalink to this definition"></a></dt>
<dd><p>Returns the method definition</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#vmware.vapi.core.MethodDefinition" title="vmware.vapi.core.MethodDefinition"><code class="xref py py-class docutils literal notranslate"><span class="pre">MethodDefinition</span></code></a></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Method definition</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.ApiInterface.invoke">
<code class="descname">invoke</code><span class="sig-paren">(</span><em>ctx</em>, <em>method_id</em>, <em>input_value</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ApiInterface.invoke" title="Permalink to this definition"></a></dt>
<dd><p>Invokes the specified method using the execution context and
the input provided</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>ctx</strong> (<a class="reference internal" href="#vmware.vapi.core.ExecutionContext" title="vmware.vapi.core.ExecutionContext"><code class="xref py py-class docutils literal notranslate"><span class="pre">ExecutionContext</span></code></a>) Execution context for this method</li>
<li><strong>method_id</strong> (<a class="reference internal" href="#vmware.vapi.core.MethodIdentifier" title="vmware.vapi.core.MethodIdentifier"><code class="xref py py-class docutils literal notranslate"><span class="pre">MethodIdentifier</span></code></a>) Method identifier</li>
<li><strong>input_value</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.data.value.StructValue</span></code>) Method input parameters</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="#vmware.vapi.core.MethodResult" title="vmware.vapi.core.MethodResult"><code class="xref py py-class docutils literal notranslate"><span class="pre">MethodResult</span></code></a></p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">Result of the method invocation</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.ApiProvider">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">ApiProvider</code><a class="headerlink" href="#vmware.vapi.core.ApiProvider" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>The ApiProvider interface is used for invocation of operations</p>
<dl class="method">
<dt id="vmware.vapi.core.ApiProvider.invoke">
<code class="descname">invoke</code><span class="sig-paren">(</span><em>service_id</em>, <em>operation_id</em>, <em>input_value</em>, <em>ctx</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ApiProvider.invoke" title="Permalink to this definition"></a></dt>
<dd><p>Invokes the specified method using the input value and the
the execution context provided</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>service_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) Service identifier</li>
<li><strong>operation_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) Operation identifier</li>
<li><strong>input_value</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.data.value.StructValue</span></code>) Input parameters for the method</li>
<li><strong>ctx</strong> (<a class="reference internal" href="#vmware.vapi.core.ExecutionContext" title="vmware.vapi.core.ExecutionContext"><code class="xref py py-class docutils literal notranslate"><span class="pre">ExecutionContext</span></code></a>) Execution context for the method</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="#vmware.vapi.core.MethodResult" title="vmware.vapi.core.MethodResult"><code class="xref py py-class docutils literal notranslate"><span class="pre">MethodResult</span></code></a></p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">Result of the method invocation</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.ApplicationContext">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">ApplicationContext</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ApplicationContext" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#vmware.vapi.core.CustomDict" title="vmware.vapi.core.CustomDict"><code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.core.CustomDict</span></code></a></p>
<p>Interface representing additional data associated with the request for
method execution represented by this ExecutionContext.
The additional data format is key-value pairs of String.</p>
<p>This additional data is provided by the client initiating the
execution, it is then transported as is over the wire and is
available for the provider-side service implementations on the server.
This extra data is completely opaque for the infrastructure, in other
words it is a contract between the client and the service implementation
only.</p>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.CustomDict">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">CustomDict</code><a class="headerlink" href="#vmware.vapi.core.CustomDict" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">dict</span></code></p>
<p>Interface for implementing Custom dict classes with additional constraints.</p>
<p>Overriding __setitem__ as not enough for adding additional constraints on
key/value pairs of dictionaries. We also have to override update and
setdefault, so that even they use __setitem__.</p>
<dl class="method">
<dt id="vmware.vapi.core.CustomDict.setdefault">
<code class="descname">setdefault</code><span class="sig-paren">(</span><em>k</em><span class="optional">[</span>, <em>d</em><span class="optional">]</span><span class="sig-paren">)</span> &#x2192; D.get(k,d), also set D[k]=d if k not in D<a class="headerlink" href="#vmware.vapi.core.CustomDict.setdefault" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.CustomDict.update">
<code class="descname">update</code><span class="sig-paren">(</span><span class="optional">[</span><em>E</em>, <span class="optional">]</span><em>**F</em><span class="sig-paren">)</span> &#x2192; None. Update D from dict/iterable E and F.<a class="headerlink" href="#vmware.vapi.core.CustomDict.update" title="Permalink to this definition"></a></dt>
<dd><p>If E is present and has a .keys() method, then does: for k in E: D[k] = E[k]
If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v
In either case, this is followed by: for k in F: D[k] = F[k]</p>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.ExecutionContext">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">ExecutionContext</code><span class="sig-paren">(</span><em>application_context=None</em>, <em>security_context=None</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ExecutionContext" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>This class provides out-of-band context information that is passed along
with a method invocation</p>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.InterfaceDefinition">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">InterfaceDefinition</code><span class="sig-paren">(</span><em>id_</em>, <em>method_ids</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.InterfaceDefinition" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>The InterfaceDefinition class contains detailed information about a
vAPI interface. This should contain all the information required
to address an interface in the vAPI runtime.</p>
<dl class="method">
<dt id="vmware.vapi.core.InterfaceDefinition.get_identifier">
<code class="descname">get_identifier</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.InterfaceDefinition.get_identifier" title="Permalink to this definition"></a></dt>
<dd><p>Returns the interface identifier</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#vmware.vapi.core.InterfaceIdentifier" title="vmware.vapi.core.InterfaceIdentifier"><code class="xref py py-class docutils literal notranslate"><span class="pre">InterfaceIdentifier</span></code></a></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Returns the interface identifer of this interface</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.InterfaceDefinition.get_method_identifiers">
<code class="descname">get_method_identifiers</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.InterfaceDefinition.get_method_identifiers" title="Permalink to this definition"></a></dt>
<dd><p>Returns the list of method identifiers of the methods exposed by this
interface. Each method identifier is unique within an interface. The
method identifiers returned are unordered</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">list</span></code> of <a class="reference internal" href="#vmware.vapi.core.MethodIdentifier" title="vmware.vapi.core.MethodIdentifier"><code class="xref py py-class docutils literal notranslate"><span class="pre">MethodIdentifier</span></code></a></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">List of method identifiers of the methods exposed by this
interface</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.InterfaceIdentifier">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">InterfaceIdentifier</code><span class="sig-paren">(</span><em>iface</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.InterfaceIdentifier" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>InterfaceIdentifier has the information required to uniquely
address a vAPI interface</p>
<dl class="method">
<dt id="vmware.vapi.core.InterfaceIdentifier.get_name">
<code class="descname">get_name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.InterfaceIdentifier.get_name" title="Permalink to this definition"></a></dt>
<dd><p>Returns the string identifier of the interface</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">String identifier of the interface</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.MethodDefinition">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">MethodDefinition</code><span class="sig-paren">(</span><em>id_</em>, <em>input_</em>, <em>output</em>, <em>errors</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodDefinition" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>This class contains detailed information about a vAPI method. This should
contain all the information required to address a method in the vAPI
runtime.</p>
<dl class="method">
<dt id="vmware.vapi.core.MethodDefinition.get_error_definition">
<code class="descname">get_error_definition</code><span class="sig-paren">(</span><em>error_name</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodDefinition.get_error_definition" title="Permalink to this definition"></a></dt>
<dd><p>Returns the error definition with the specified name reported by this
method or None if this method doesnt report an error with the specified
name.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>error_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) Name of the error definition to return</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.data.definition.ErrorDefinition</span></code></td>
</tr>
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">Error definition with the specified name reported by this
method or None if this method doesnt report an error with the
specified name.</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.MethodDefinition.get_error_definitions">
<code class="descname">get_error_definitions</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodDefinition.get_error_definitions" title="Permalink to this definition"></a></dt>
<dd><p>Returns a set of error definitions describing the errors that this
method can report</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">set</span></code> of
<code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.data.definition.ErrorDefinition</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Set of error definitions describing the errors that this
method can report</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.MethodDefinition.get_identifier">
<code class="descname">get_identifier</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodDefinition.get_identifier" title="Permalink to this definition"></a></dt>
<dd><p>Returns the method identifier</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#vmware.vapi.core.MethodIdentifier" title="vmware.vapi.core.MethodIdentifier"><code class="xref py py-class docutils literal notranslate"><span class="pre">MethodIdentifier</span></code></a></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">MethodIdentifier of this method</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.MethodDefinition.get_input_definition">
<code class="descname">get_input_definition</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodDefinition.get_input_definition" title="Permalink to this definition"></a></dt>
<dd><p>Returns the struct definition corresponding to the methods input
parameters. The field names in the struct definition are the parameter
names and the field values correspond to the data definition of the
respective fields.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.data.definition.StructDefinition</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">StructDefinition correspoding to the methods input</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.MethodDefinition.get_output_definition">
<code class="descname">get_output_definition</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodDefinition.get_output_definition" title="Permalink to this definition"></a></dt>
<dd><p>Returns the data definition of the methods output</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.data.definition.DataDefinition</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Data definition of the methods output</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.MethodIdentifier">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">MethodIdentifier</code><span class="sig-paren">(</span><em>iface</em>, <em>method</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodIdentifier" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>This class identifies a <code class="xref py py-class docutils literal notranslate"><span class="pre">ApiMethod</span></code> instance</p>
<dl class="method">
<dt id="vmware.vapi.core.MethodIdentifier.get_interface_identifier">
<code class="descname">get_interface_identifier</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodIdentifier.get_interface_identifier" title="Permalink to this definition"></a></dt>
<dd><p>Returns the interface identifier of the method</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#vmware.vapi.core.InterfaceIdentifier" title="vmware.vapi.core.InterfaceIdentifier"><code class="xref py py-class docutils literal notranslate"><span class="pre">InterfaceIdentifier</span></code></a></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">InterfaceIdentifier of this method</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.MethodIdentifier.get_name">
<code class="descname">get_name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodIdentifier.get_name" title="Permalink to this definition"></a></dt>
<dd><p>Returns the string identifier of the method</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">String identifier of the method</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.MethodResult">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">MethodResult</code><span class="sig-paren">(</span><em>output=None</em>, <em>error=None</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodResult" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>The MethodResult class contains the result of a method call.
It contains either the output of the method invocation or
an error reported by the method invocation. These are mutually
exclusive.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Variables:</th><td class="field-body"><ul class="first last simple">
<li><a class="reference internal" href="#vmware.vapi.core.MethodResult.output" title="vmware.vapi.core.MethodResult.output"><strong>output</strong></a> Method output</li>
<li><a class="reference internal" href="#vmware.vapi.core.MethodResult.error" title="vmware.vapi.core.MethodResult.error"><strong>error</strong></a> Method error</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="vmware.vapi.core.MethodResult.error">
<code class="descname">error</code><a class="headerlink" href="#vmware.vapi.core.MethodResult.error" title="Permalink to this definition"></a></dt>
<dd><table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.data.value.ErrorValue</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Method error</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="attribute">
<dt id="vmware.vapi.core.MethodResult.output">
<code class="descname">output</code><a class="headerlink" href="#vmware.vapi.core.MethodResult.output" title="Permalink to this definition"></a></dt>
<dd><table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.data.value.DataValue</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Method output</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="vmware.vapi.core.MethodResult.success">
<code class="descname">success</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.MethodResult.success" title="Permalink to this definition"></a></dt>
<dd><p>Check if the method completed successfully.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">False if the method reported an error, True otherwise</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.ProviderDefinition">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">ProviderDefinition</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ProviderDefinition" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>The ProviderDefinition class contains details information about a
vAPI provider</p>
<dl class="method">
<dt id="vmware.vapi.core.ProviderDefinition.get_identifier">
<code class="descname">get_identifier</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.ProviderDefinition.get_identifier" title="Permalink to this definition"></a></dt>
<dd><p>Returns the provider identifier.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Provider identifier</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.core.SecurityContext">
<em class="property">class </em><code class="descclassname">vmware.vapi.core.</code><code class="descname">SecurityContext</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.core.SecurityContext" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#vmware.vapi.core.CustomDict" title="vmware.vapi.core.CustomDict"><code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.core.CustomDict</span></code></a></p>
<p>Implementations of this interface will provide all needed data for
authentication for the given invocation.</p>
</dd></dl>
</div>
<div class="section" id="module-vmware.vapi.exception">
<span id="vmware-vapi-exception-module"></span><h2>vmware.vapi.exception module<a class="headerlink" href="#module-vmware.vapi.exception" title="Permalink to this headline"></a></h2>
<p>vAPI CoreException Class</p>
<dl class="exception">
<dt id="vmware.vapi.exception.CoreException">
<em class="property">exception </em><code class="descclassname">vmware.vapi.exception.</code><code class="descname">CoreException</code><span class="sig-paren">(</span><em>message</em>, <em>cause=None</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.exception.CoreException" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Exception</span></code></p>
<p>This exception is raised by various components of the vAPI runtime
infrastructure to indicate failures in that infrastructure.</p>
<p>Server-side the exception is caught by specific components and an
internal_server_error is reported to the client that invoked the
request. Client-side the exception may be raised for certain failures
before a request was sent to the server or after the response was
received from the server. Similarly, server-side the exception may
be raised for failures that occur when a provider implementation
invokes the vAPI runtime.</p>
<p>This exception is not part of the vAPI message protocol, and it must
never be raised by provider implementations.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Variables:</th><td class="field-body"><a class="reference internal" href="#vmware.vapi.exception.CoreException.messages" title="vmware.vapi.exception.CoreException.messages"><strong>messages</strong></a> Generator of error messages describing why the Exception
was raised</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="vmware.vapi.exception.CoreException.messages">
<code class="descname">messages</code><a class="headerlink" href="#vmware.vapi.exception.CoreException.messages" title="Permalink to this definition"></a></dt>
<dd><table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">generator of <a class="reference internal" href="#vmware.vapi.message.Message" title="vmware.vapi.message.Message"><code class="xref py py-class docutils literal notranslate"><span class="pre">vmware.vapi.message.Message</span></code></a></td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">Generator of error messages describing why the Exception
was raised</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
</div>
<div class="section" id="module-vmware.vapi.message">
<span id="vmware-vapi-message-module"></span><h2>vmware.vapi.message module<a class="headerlink" href="#module-vmware.vapi.message" title="Permalink to this headline"></a></h2>
<p>vAPI Message class</p>
<dl class="class">
<dt id="vmware.vapi.message.Message">
<em class="property">class </em><code class="descclassname">vmware.vapi.message.</code><code class="descname">Message</code><span class="sig-paren">(</span><em>id_</em>, <em>def_msg</em>, <em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.message.Message" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>This class encapsulates the concept of a localizable message.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Variables:</th><td class="field-body"><ul class="first last simple">
<li><strong>id</strong> The unique message identifier</li>
<li><strong>def_msg</strong> An english language default</li>
<li><strong>args</strong> The arguments to be used for the messsage</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.message.MessageBundle">
<em class="property">class </em><code class="descclassname">vmware.vapi.message.</code><code class="descname">MessageBundle</code><span class="sig-paren">(</span><em>messages</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.message.MessageBundle" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>Base class for all message bundle classes.</p>
<dl class="method">
<dt id="vmware.vapi.message.MessageBundle.get">
<code class="descname">get</code><span class="sig-paren">(</span><em>msg_id</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.message.MessageBundle.get" title="Permalink to this definition"></a></dt>
<dd><p>Returns the message template for the given message identifier</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>msg_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) Message identifier</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></td>
</tr>
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">Message template</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><strong>KeyError</strong> If the message identifier is not found</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.message.MessageFactory">
<em class="property">class </em><code class="descclassname">vmware.vapi.message.</code><code class="descname">MessageFactory</code><span class="sig-paren">(</span><em>msg_bundle</em>, <em>formatter</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.message.MessageFactory" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>A factory class to generate localizable messages</p>
<dl class="method">
<dt id="vmware.vapi.message.MessageFactory.get_message">
<code class="descname">get_message</code><span class="sig-paren">(</span><em>id_</em>, <em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.message.MessageFactory.get_message" title="Permalink to this definition"></a></dt>
<dd><p>Return a message object for the given id with the given args.
If the message is not found, a default unknown message is returned.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>id</strong> (<em>string</em>) The unique message identifier</li>
<li><strong>args</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">list</span></code> of <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code>) The arguments to be used for constructing this message</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="#vmware.vapi.message.Message" title="vmware.vapi.message.Message"><code class="xref py py-class docutils literal notranslate"><span class="pre">Message</span></code></a></p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">The message object constructed using the given arguments</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="vmware.vapi.message.MessageFormatter">
<em class="property">class </em><code class="descclassname">vmware.vapi.message.</code><code class="descname">MessageFormatter</code><a class="headerlink" href="#vmware.vapi.message.MessageFormatter" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>Base class for all message formatter classes</p>
<dl class="classmethod">
<dt id="vmware.vapi.message.MessageFormatter.format_msg">
<em class="property">classmethod </em><code class="descname">format_msg</code><span class="sig-paren">(</span><em>msg</em>, <em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#vmware.vapi.message.MessageFormatter.format_msg" title="Permalink to this definition"></a></dt>
<dd><p>Format the message using the specified arguments</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>msg</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) Message template</li>
<li><strong>args</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">list</span></code> of <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code>) Arguments for the message</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">Localized message</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>
</dd></dl>
</div>
</div>
</div>
<div class="articleComments">
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="vmware.vapi.lib.html" class="btn btn-neutral float-right" title="vmware.vapi.lib package" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="vmware.html" class="btn btn-neutral" title="vmware package" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2018, VMware, Inc..
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'./',
VERSION:'6.7.0',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
</script>
</body>
</html>