El paquete protorpc.definition
proporciona las siguientes funciones:
- define_enum(enum_descriptor, module_name)
-
Define una clase Enum de un descriptor.
Argumentos- enum_descriptor
- EnumDescriptor que se va a usar para crear la clase Enum.
- module_name
- Nombre del módulo que se asignará a la nueva clase de descriptor.
Devuelve una nueva subclase messages.Enum tal como se describe en
enum_descriptor
. - define_field(field_descriptor)
-
Define una instancia de Field a partir del descriptor proporcionado.
Argumentos- field_descriptor Clase
- FieldDescriptor que se usa para crear la instancia Field.
Devuelve una nueva instancia de campo tal como se describe en
field_descriptor
. - define_message(message_descriptor, module_name)
-
Define una instancia de Message a partir del descriptor proporcionado.
Argumentos- message_descriptor
- MessageDescriptor que se usa para describir la clase del mensaje.
- module_name
- Nombre del módulo que se asignará a la nueva clase de descriptor.
Devuelve una nueva subclase messages.Message descrita por
message_descriptor
. - define_service(service_descriptor, module)
-
Define un proxy de servicio nuevo.
Argumentos- service_descriptor
- Clase ServiceDescriptor que describe el servicio.
- module
- El módulo al que se va a añadir el servicio. Los tipos de solicitud y de respuesta son relativos a este módulo.
Devuelve un proxy de clase capaz de comunicarse con un servidor remoto.
- define_file(file_descriptor, module=None)
-
Define un módulo a partir del descriptor de archivo.
Argumentos- file_descriptor
- Instancia de FileDescriptor desde la que se describe el módulo.
- module=None
- Módulo al que añadir los objetos contenidos. El nombre del módulo sobrescribe el valor en file_descriptor.package. Las definiciones se añaden al módulo existente si se proporciona.
Si no se proporciona ningún módulo, se crea uno nuevo con el nombre del paquete del descriptor de archivo. Si se proporciona un módulo, se devuelve el mismo módulo.
- import_file(file_descriptor, modules=None)
-
Importa una clase FileDescriptor en un espacio de módulo. Es similar a define_file(), pero se crea un nuevo módulo y los módulos principales necesarios, y se añaden al parámetro modules o a sys.modules si no se proporciona.
Argumentos- file_descriptor
- Instancia de FileDescriptor desde la que se describe el módulo.
- modulesmodules=None
- Diccionario de módulos que se van a actualizar. Se crearán los módulos y sus elementos principales que no existan. Si se encuentra un módulo que coincida con
file_descriptor.package
, se actualizará con el contenido de FileDescriptor.
Devuelve coincidencias con el argumento
modules
o un nuevo módulo si no se encuentra ninguna coincidencia. - import_file_set(file_set, modules=None)
-
Argumentos
- file_set
- Una cadena o una instancia de FileSet. Si es una cadena, import_file_set() abre el archivo y lee el elemento FileSet serializado. Si es una instancia, importa las definiciones de esta instancia.
- modules
- Diccionario de módulos que se van a actualizar. Los módulos y los módulos principales que no existan se crearán. Si se encuentra un módulo que coincida con el
file_descriptor.package
, se actualizará con el contenido de FileDescriptor.