Como ler configurações OSGi não ligadas ao código do componente

Como ler as configurações do OSGi que não estão vinculadas ao componente em execução.

Ambiente

Etapas

A abordagem recomendada para a leitura de várias configurações do OSGi é usar o ConfigurationAdmin [1], não para pesquisar os arquivos de configuração em seu aplicativo. Veja o código de amostra aqui [2].

[1] https://osgi.org/javadoc/r4v42/org/osgi/service/cm/ConfigurationAdmin.html
[2] http://felix.apache.org/documentation/subprojects/apache-felix-config-admin.html

O ConfigurationAdmin é um serviço OSGi, portanto, pode ser obtido por meio da anotação SCR em seu próprio código do componente OSGi.  Exemplo abaixo (org.sample.PrettyPrinterConfigurator é o PID da configuração):

@Reference
ConfigurationAdmin configAdmin;

@Activate
public void activate(ComponentContext componentContext) {
  Configuration config = configurationAdmin.getConfiguration(
    "org.sample.PrettyPrinterConfigurator");
  Dictionary props = config.getProperties();
}

 Adobe

Receba ajuda com mais rapidez e facilidade

Novo usuário?