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.
- 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.