Funções do módulo de definição
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
O pacote protorpc.definition
oferece as seguintes funções:
- define_enum(enum_descriptor, module_name)
-
Define uma classe Enum para um descritor.
Argumentos
- enum_descriptor
- EnumDescriptor a ser usado para criar a classe Enum.
- module_name
- O nome de módulo a ser dado à nova classe do descritor.
Retorna uma nova subclasse messages.Enum, conforme descrito por enum_descriptor
.
- define_field(field_descriptor)
-
Define uma instância de Field a partir do descritor fornecido.
Argumentos
- field_descriptor
- Classe FieldDescriptor a ser usada para criar a instância de Field.
Retorna uma nova instância de campo conforme descrita por field_descriptor
.
- define_message(message_descriptor, module_name)
-
Define uma classe Message a partir do descritor fornecido.
Argumentos
- message_descriptor
- O MessageDescriptor a ser usado para descrever a classe de mensagem.
- module_name
- O nome de módulo a ser dado à nova classe de descritor.
Retorna uma nova subclasse message.Message, conforme descrito por message_descriptor
.
- define_service(service_descriptor, module)
-
Define um novo proxy de serviço.
Argumentos
- service_descriptor
- A classe ServiceDescriptor que descreve o serviço.
- module
- O módulo ao qual o serviço será adicionado. Tipos de solicitação e resposta são encontrados relativos a este módulo.
Retorna um proxy de classe capaz de se comunicar com um servidor remoto.
- define_file(file_descriptor, module=None)
-
Define um módulo do descritor de arquivo fornecido.
Argumentos
- file_descriptor
- Instância de FileDescriptor a partir da qual o módulo será descrito.
- module=None
- O módulo ao qual os objetos contidos serão adicionados. O nome do módulo substitui o valor em file_descriptor.package. As definições são adicionadas ao módulo existente, se fornecido.
Caso um módulo não seja fornecido, um novo módulo será criado com seu nome definido como o pacote do descritor do arquivo. Caso um módulo seja fornecido, será retornado o mesmo módulo.
Funções do utilitário
- import_file(file_descriptor, modules=None)
-
Importa um FileDescriptor para um espaço de módulo. Semelhante a define_file(), exceto por um novo módulo e eventuais módulos pai obrigatórios que são criados e adicionados ao parâmetro modules, ou sys.modules caso não sejam fornecidos.
Argumentos
- file_descriptor
- Instância de FileDescriptor a partir da qual o módulo será descrito.
- modulesmodules=None
- Dicionário de módulos a serem atualizados. Os módulos e os pais deles que não existirem serão criados. Se é encontrado um módulo existente que corresponda a
file_descriptor.package
, esse módulo é atualizado com o conteúdo de FileDescriptor.
Retorna as correspondências para o argumento modules
ou um novo módulo se correspondências não são encontradas.
- import_file_set(file_set, modules=None)
-
Argumentos
- file_set
- Uma string ou uma instância de FileSet. Se é uma string, import_file_set() abre o arquivo e lê o FileSet serializado. Se é uma instância de FileSet, importa definições dessa instância.
- modules
- Dicionário de módulos a serem atualizados. Os módulos e os pais que não existirem serão criados. Se um módulo existente que corresponde a
file_descriptor.package
é encontrado, esse módulo é atualizado com o conteúdo de FileDescriptor.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-09-04 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-04 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eprotorpc.definition\u003c/code\u003e package provides functions for defining various components like Enums, Fields, Messages, and Services from their respective descriptors.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003edefine_file\u003c/code\u003e and \u003ccode\u003eimport_file\u003c/code\u003e allow creating or importing modules based on a \u003ccode\u003eFileDescriptor\u003c/code\u003e, with the latter automatically creating parent modules if necessary.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003edefine_enum\u003c/code\u003e, \u003ccode\u003edefine_field\u003c/code\u003e, \u003ccode\u003edefine_message\u003c/code\u003e, and \u003ccode\u003edefine_service\u003c/code\u003e each creates a new class or instance based on a descriptor, such as \u003ccode\u003eEnumDescriptor\u003c/code\u003e, \u003ccode\u003eFieldDescriptor\u003c/code\u003e, \u003ccode\u003eMessageDescriptor\u003c/code\u003e and \u003ccode\u003eServiceDescriptor\u003c/code\u003e respectively.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eimport_file_set\u003c/code\u003e can import definitions from a \u003ccode\u003eFileSet\u003c/code\u003e instance or a serialized \u003ccode\u003eFileSet\u003c/code\u003e string, updating a provided module dictionary or creating new modules if needed.\u003c/p\u003e\n"]]],[],null,["# Definition Module Functions\n\nThe `protorpc.definition` package provides the following functions:\n\ndefine_enum(enum_descriptor, module_name)\n\n: Defines an Enum class for a descriptor.\n\n **Arguments**\n\n enum_descriptor\n : EnumDescriptor to use to build the Enum class.\n\n module_name\n : Module name to give the new descriptor class.\n\n Returns a new [messages.Enum](/appengine/docs/legacy/standard/python/tools/protorpc/messages/enumclass) subclass as described by `enum_descriptor`.\n\ndefine_field(field_descriptor)\n\n: Defines a Field instance from the provided descriptor.\n\n **Arguments**\n\n field_descriptor\n : FieldDescriptor class to use to build the Field instance.\n\n Returns a new field instance as described by `field_descriptor`.\n\ndefine_message(message_descriptor, module_name)\n\n: Defines a Message class from the provided descriptor.\n\n **Arguments**\n\n message_descriptor\n : MessageDescriptor to use to describe the message class.\n\n module_name\n : The module name to give the new descriptor class.\n\n Returns a new [messages.Message sub-class](/appengine/docs/legacy/standard/python/tools/protorpc/messages/messageclass) as described by `message_descriptor`.\n\ndefine_service(service_descriptor, module)\n\n: Defines a new service proxy.\n\n **Arguments**\n\n service_descriptor\n : ServiceDescriptor class that describes the service.\n\n module\n : The module to add the service to. Request and response types are found relative to this module.\n\n Returns a class proxy capable of communicating with a remote server.\n\ndefine_file(file_descriptor, module=None)\n\n: Defines a module from the given file descriptor.\n\n **Arguments**\n\n file_descriptor\n : FileDescriptor instance from which to describe the module.\n\n module=None\n : Module to which to add contained objects. Module name overrides value in file_descriptor.package. Definitions are added to the existing module if provided.\n\n If no module is provided, creates a new module with its name set to the file descriptor's package. If a module is provided, returns the same module.\n\nimport_file(file_descriptor, modules=None)\n\n: Imports a FileDescriptor into a module space. Similar to [define_file()](#define_file), except that a new module and any required parent modules are created and added to the modules parameter, or sys.modules if not provided.\n\n **Arguments**\n\n file_descriptor\n : FileDescriptor instance from which to describe the module.\n\n modulesmodules=None\n : Dictionary of modules to update. Modules and their parents that\n do not exist will be created. If an existing module is found that\n matches `file_descriptor.package`, that module is updated with the FileDescriptor contents.\n\n Returns matches to the `modules` argument, or a new module if no matches are found.\n\nimport_file_set(file_set, modules=None)\n\n: \u003cbr /\u003e\n\n **Arguments**\n\n file_set\n : Either a string or a FileSet instance. If a string, import_file_set() opens the file and reads the serialized FileSet. If a FileSet instance, imports definitions from this instance.\n\n modules\n : Dictionary of modules to update. Modules and their parents that do not exist will be created. If an existing module is found that matches the `file_descriptor.package`, that module is updated with the FileDescriptor contents."]]