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 usar para criar a classe Enum.
- module_name
- Nome do módulo para atribuir à nova classe de descritores.
Devolve uma nova subclasse messages.Enum, conforme descrito por
enum_descriptor
. - define_field(field_descriptor)
-
Define uma instância Field a partir do descritor fornecido.
Argumentos- field_descriptor
- Classe FieldDescriptor a usar para criar a instância Field.
Devolve uma nova instância de campo conforme descrito por
field_descriptor
. - define_message(message_descriptor, module_name)
-
Define uma classe Message a partir do descritor fornecido.
Argumentos- message_descriptor
- MessageDescriptor a usar para descrever a classe de mensagens.
- module_name
- O nome do módulo a atribuir à nova classe de descritor.
Devolve uma nova messages.Message sub-class, conforme descrito por
message_descriptor
. - define_service(service_descriptor, module)
-
Define um novo proxy de serviço.
Argumentos- service_descriptor
- Classe ServiceDescriptor que descreve o serviço.
- module
- O módulo ao qual adicionar o serviço. Os tipos de pedidos e respostas encontram-se relativos a este módulo.
Devolve um proxy de classe capaz de comunicar com um servidor remoto.
- define_file(file_descriptor, module=None)
-
Define um módulo a partir do descritor de ficheiro fornecido.
Argumentos- file_descriptor
- Instância FileDescriptor a partir da qual descrever o módulo.
- module=None
- Módulo ao qual adicionar objetos contidos. O nome do módulo substitui o valor em file_descriptor.package. As definições são adicionadas ao módulo existente, se forem fornecidas.
Se não for fornecido nenhum módulo, cria um novo módulo com o nome definido para o pacote do descritor de ficheiro. Se for fornecido um módulo, devolve 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 que é criado um novo módulo e todos os módulos principais necessários são adicionados ao parâmetro modules ou sys.modules, se não for fornecido.
Argumentos- file_descriptor
- Instância FileDescriptor a partir da qual descrever o módulo.
- modulesmodules=None
- Dicionário de módulos a atualizar. Os módulos e os respetivos elementos principais que não existam são criados. Se for encontrado um módulo existente que
corresponda a
file_descriptor.package
, esse módulo é atualizado com o conteúdo de FileDescriptor.
Devolve correspondências para o argumento
modules
ou um novo módulo se não forem encontradas correspondências. - import_file_set(file_set, modules=None)
-
Argumentos
- file_set
- Uma string ou uma instância FileSet. Se for uma string, import_file_set() abre o ficheiro e lê o FileSet serializado. Se uma instância FileSet importar definições desta instância.
- modules
- Dicionário de módulos a atualizar. Os módulos e os respetivos elementos principais que não existam são criados. Se for encontrado um módulo existente que corresponda ao
file_descriptor.package
, esse módulo é atualizado com o conteúdo do FileDescriptor.