Source code for com.vmware.vcenter.inventory_client

# -*- coding: utf-8 -*-
#---------------------------------------------------------------------------
# Copyright 2016 VMware, Inc.  All rights reserved.

# AUTO GENERATED FILE -- DO NOT MODIFY!
#
# vAPI stub file for package com.vmware.vcenter.inventory.
#---------------------------------------------------------------------------

"""
The ``com.vmware.vcenter.inventory_client`` component provides methods and
classes for retrieving vCenter datastore and network information for a given
:class:`list` of identifiers.

"""

__author__ = 'VMware, Inc.'
__docformat__ = 'restructuredtext en'

import sys

from vmware.vapi.bindings import type
from vmware.vapi.bindings.converter import TypeConverter
from vmware.vapi.bindings.enum import Enum
from vmware.vapi.bindings.error import VapiError
from vmware.vapi.bindings.struct import VapiStruct
from vmware.vapi.bindings.stub import VapiInterface, ApiInterfaceStub
from vmware.vapi.bindings.common import raise_core_exception
from vmware.vapi.data.validator import UnionValidator, HasFieldsOfValidator
from vmware.vapi.exception import CoreException
import com.vmware.vapi.std.errors_client


[docs]class Datastore(VapiInterface): """ The ``Datastore`` class provides methods to retrieve information about datastores. """ def __init__(self, config): """ :type config: :class:`vmware.vapi.bindings.stub.StubConfiguration` :param config: Configuration to be used for creating the stub. """ VapiInterface.__init__(self, config, _DatastoreStub)
[docs] class Info(VapiStruct): """ The ``Datastore.Info`` class contains information about a datastore. .. tip:: The arguments are used to initialize data attributes with the same names. """ def __init__(self, type=None, ): """ :type type: :class:`str` :param type: Type of the datastore. When clients pass a value of this class as a parameter, the attribute must be one of ``Datastore`` or ``StoragePod``. When methods return a value of this class as a return value, the attribute will be one of ``Datastore`` or ``StoragePod``. """ self.type = type VapiStruct.__init__(self)
Info._set_binding_type(type.StructType( 'com.vmware.vcenter.inventory.datastore.info', { 'type': type.StringType(), }, Info, False, None))
[docs] def find(self, datastores, ): """ Returns datastore information for the specified datastores. The key in the return value :class:`dict` is the datastore identifier and the value in the :class:`dict` is the datastore information. :type datastores: :class:`list` of :class:`str` :param datastores: Identifiers of the datastores for which information will be returned. The parameter must contain identifiers for the resource type: ``Datastore``. :rtype: :class:`dict` of :class:`str` and (:class:`Datastore.Info` or ``None``) :return: Datastore information for the specified datastores. The key in the return value :class:`dict` is the datastore identifier and the value in the :class:`dict` is the datastore information. The key in the return value :class:`dict` will be an identifier for the resource type: ``Datastore``. :raise: :class:`com.vmware.vapi.std.errors_client.NotFound` if no datastore can be found for one or more of the datastore identifiers in ``datastores`` :raise: :class:`com.vmware.vapi.std.errors_client.Unauthorized` if you do not have all of the privileges described as follows: * Method execution requires ``System.Read``. * The resource ``Datastore`` referenced by the parameter ``datastores`` requires ``System.Read``. """ return self._invoke('find', { 'datastores': datastores, })
[docs]class Network(VapiInterface): """ The ``Network`` class provides methods to retrieve information about vCenter Server networks. """ def __init__(self, config): """ :type config: :class:`vmware.vapi.bindings.stub.StubConfiguration` :param config: Configuration to be used for creating the stub. """ VapiInterface.__init__(self, config, _NetworkStub)
[docs] class Info(VapiStruct): """ The ``Network.Info`` class contains information about a vCenter Server network. .. tip:: The arguments are used to initialize data attributes with the same names. """ def __init__(self, type=None, ): """ :type type: :class:`str` :param type: Type of the vCenter Server network. When clients pass a value of this class as a parameter, the attribute must be one of ``Network``, ``DistributedVirtualPortgroup``, or ``OpaqueNetwork``. When methods return a value of this class as a return value, the attribute will be one of ``Network``, ``DistributedVirtualPortgroup``, or ``OpaqueNetwork``. """ self.type = type VapiStruct.__init__(self)
Info._set_binding_type(type.StructType( 'com.vmware.vcenter.inventory.network.info', { 'type': type.StringType(), }, Info, False, None))
[docs] def find(self, networks, ): """ Returns network information for the specified vCenter Server networks. The key in the return value :class:`dict` is the network identifier and the value in the :class:`dict` is the network information. :type networks: :class:`list` of :class:`str` :param networks: Identifiers of the vCenter Server networks for which information will be returned. The parameter must contain identifiers for the resource type: ``Network``. :rtype: :class:`dict` of :class:`str` and (:class:`Network.Info` or ``None``) :return: Network information for the specified vCenter Server networks. The key in the return value :class:`dict` is the network identifier and the value in the :class:`dict` is the network information. The key in the return value :class:`dict` will be an identifier for the resource type: ``Network``. :raise: :class:`com.vmware.vapi.std.errors_client.NotFound` if no datastore can be found for one or more of the vCenter Server network identifiers in ``networks`` :raise: :class:`com.vmware.vapi.std.errors_client.Unauthorized` if you do not have all of the privileges described as follows: * Method execution requires ``System.Read``. * The resource ``Network`` referenced by the parameter ``networks`` requires ``System.Read``. """ return self._invoke('find', { 'networks': networks, })
class _DatastoreStub(ApiInterfaceStub): def __init__(self, config): # properties for find operation find_input_type = type.StructType('operation-input', { 'datastores': type.ListType(type.IdType()), }) find_error_dict = { 'com.vmware.vapi.std.errors.not_found': type.ReferenceType(com.vmware.vapi.std.errors_client, 'NotFound'), } find_input_validator_list = [ ] find_output_validator_list = [ ] operations = { 'find': { 'input_type': find_input_type, 'output_type': type.MapType(type.IdType(), type.OptionalType(type.ReferenceType(sys.modules[__name__], 'Datastore.Info'))), 'errors': find_error_dict, 'input_validator_list': find_input_validator_list, 'output_validator_list': find_output_validator_list, }, } ApiInterfaceStub.__init__(self, iface_name='com.vmware.vcenter.inventory.datastore', config=config, operations=operations) class _NetworkStub(ApiInterfaceStub): def __init__(self, config): # properties for find operation find_input_type = type.StructType('operation-input', { 'networks': type.ListType(type.IdType()), }) find_error_dict = { 'com.vmware.vapi.std.errors.not_found': type.ReferenceType(com.vmware.vapi.std.errors_client, 'NotFound'), } find_input_validator_list = [ ] find_output_validator_list = [ ] operations = { 'find': { 'input_type': find_input_type, 'output_type': type.MapType(type.IdType(), type.OptionalType(type.ReferenceType(sys.modules[__name__], 'Network.Info'))), 'errors': find_error_dict, 'input_validator_list': find_input_validator_list, 'output_validator_list': find_output_validator_list, }, } ApiInterfaceStub.__init__(self, iface_name='com.vmware.vcenter.inventory.network', config=config, operations=operations)