Il pacchetto protorpc.definition
offre le seguenti funzioni:
- define_enum(descriptor_enum, nome_modulo)
-
Definisce una classe Enum per un descrittore.
Argomenti- enum_descriptor
- EnumDescriptor da usare per creare la classe Enum.
- module_name
- Nome del modulo che assegna alla nuova classe descrittore.
Restituisce una nuova sottoclasse messages.Enum come descritto da
enum_descriptor
. - define_field(field_descriptor)
-
Definisce un'istanza di campo dal descrittore fornito.
Argomenti- field_descriptor
- Classe FieldDescriptor da utilizzare per creare l'istanza Field.
Restituisce una nuova istanza di campo come descritto in
field_descriptor
. - define_message(message_descriptor, module_name)
-
Definisce una classe Message dal descrittore fornito.
Argomenti- message_descriptor
- MessageDescriptor da utilizzare per descrivere la classe dei messaggi.
- module_name
- Il nome del modulo da assegnare alla nuova classe descrittore.
Restituisce una nuova sottoclassemessages.Message come descritto da
message_descriptor
. - define_service(service_descriptor, module)
-
Definisce un nuovo proxy di servizio.
Argomenti- service_descriptor
- Classe ServiceDescriptor che descrive il servizio.
- modulo
- Il modulo a cui aggiungere il servizio. I tipi di richiesta e risposta sono relativi a questo modulo.
Restituisce un proxy di classe in grado di comunicare con un server remoto.
- define_file(file_descriptor, module=None)
-
Definisce un modulo dal descrittore file specificato.
Argomenti- file_descriptor
- Istanza FileDescriptor da cui descrivere il modulo.
- module=None
- Modulo a cui aggiungere gli oggetti contenuti. Il nome del modulo sostituisce il valore in file_descriptor.package. Le definizioni vengono aggiunte al modulo esistente, se fornite.
Se non viene fornito alcun modulo, crea un nuovo modulo con il nome impostato sul pacchetto del descrittore del file. Se viene fornito un modulo, restituisce lo stesso modulo.
- import_file(file_descriptor, modules=Nessuno)
-
Importa un FileDescriptor in uno spazio del modulo. Simile a define_file(), ad eccezione del fatto che un nuovo modulo e gli eventuali moduli principali richiesti vengono creati e aggiunti al parametro moduli oppure a sys.modules se non viene specificato.
Argomenti- file_descriptor
- Istanza FileDescriptor da cui descrivere il modulo.
- modulesmodules=None
- Dizionario dei moduli da aggiornare. Verranno creati i moduli e i relativi elementi principali che
non esistono. Se viene trovato un modulo esistente corrispondente a
file_descriptor.package
, questo viene aggiornato con i contenuti di FileDescriptor.
Restituisce le corrispondenze all'argomento
modules
o a un nuovo modulo se non vengono trovate corrispondenze. - import_file_set(file_set, modules=Nessuno)
-
Argomenti
- file_set
- Una stringa o un'istanza FileSet. Se è una stringa, import_file_set() apre il file e legge il FileSet serializzato. Se è un'istanza FileSet, importa le definizioni da questa istanza.
- modules
- Dizionario dei moduli da aggiornare. Verranno creati i moduli e i relativi elementi principali che non esistono. Se viene trovato un modulo esistente che corrisponde a
file_descriptor.package
, viene aggiornato con i contenuti di FileDescriptor.