A biblioteca Configurable Publisher Registry permite criar editores de telemetria personalizados e registrá-los no serviço de telemetria usando o Configurable Publisher Registry. A biblioteca abstrai a interface Binder e a serialização e desserialização de dados.
Visão geral da superfície da API
Ela fornece interfaces específicas da linguagem em Java e Rust para interagir com o registro de editores configuráveis. A biblioteca é responsável pelas seguintes áreas:
- Definição de editor:fornece classes básicas em Java ou traits em Rust para definir o comportamento de um editor.
- Definição de metadados:descreve seu editor, incluindo o nome e o protobuf
FileDescriptorSetque define as mensagens publicadas. Para mais informações, consulte Mensagens autodescritivas. Se você usa Java, a ferramenta geradora de descritores protobuf em Java pode ajudar a gerar os metadados do descritor protobuf. - Produção de dados:processa a lógica para produzir dados por assinatura ou sob demanda.
- Processamento de configuração:processa argumentos de configuração opcionais configurados por uma campanha de métricas ao gerar dados.
- Definição de metadados:descreve seu editor, incluindo o nome e o protobuf
- Codificação e decodificação de dados:oferece mecanismos para converter mensagens e configurações para e do formato de transmissão.
- Codecs:inclui codecs integrados e personalizados para serialização e desserialização de dados.
- Registro e ciclo de vida do editor:gerencia a conexão entre o editor e o serviço de telemetria.
Para exemplos detalhados e aplicativos completos e compiláveis que demonstram o
ciclo de vida completo, consulte os respectivos arquivos README.md na árvore de origem:
Biblioteca Java:
system/software_defined_vehicle/telemetry/sdk/java/configurable_publisher_registry/README.mdExemplo em Java:
samples/telemetry/publishers/java/sample_ivi_sdk_publisher/README.mdBiblioteca Rust:
system/software_defined_vehicle/telemetry/sdk/rust/configurable_publisher_registry/README.mdExemplo do Rust:
samples/telemetry/publishers/rust/sample_getter_publisher/README.md