Я пытаюсь закодировать пакет OSGi, который можно запустить с использованием нескольких конфигураций. Цель моего пакета - переписать статические ссылки в html и перенаправить его на URL-адрес CDN. Для этого я использую org.apache.sling.rewriter.Transformer.Конфигурации считывания OSGi
@Component(metatype = true, label = "CDN Link Rewriter", configurationFactory = true, immediate = true)
@Service(value = TransformerFactory.class)
public class LinkTransformer implements Transformer,
TransformerFactory {
@Property(label = "Static URL Extensions", value = "js,jpg,png,css,gif")
private static final String STATIC_FILES_EXTNS = "static_file_extn";
@Property(label = "Domain Path", value = "")
private static final String DOMAIN_PATH = "domain_path";
@Property(label = "CDN Url prefix", value = "")
private static final String CDN_URL_PREFIX = "cdn_url_prefix";
@Property(label = "Tags to check", value = "a,img,link,script")
private static final String TAGS_TO_CHECK = "tags_to_check";
@Property(label = "Attributes to check", d value = "src,href")
private static final String ATTRS_TO_CHECK = "attrs_to_check";
@Property(value = "append-version", propertyPrivate = true)
private static final String PIPELINE_TYPE = "pipeline.type";
@Property(value = "global", propertyPrivate = true)
private static final String PIPELINE_MODE = "pipeline.mode";
@Activate
protected void activate(final Map<String, Object> props) {
this.update(props);
}
@Modified
protected void update(final Map<String, Object> props) {
}
public LinkTransformer() {
}
@Override
public void init(org.apache.sling.rewriter.ProcessingContext context,
org.apache.sling.rewriter.ProcessingComponentConfiguration config)
throws IOException {
}
@Override
public final Transformer createTransformer() {
return new LinkTransformer();
}
//some other methods
}
Проблема: я не могу получить доступ к своим конфигурациям в своем комплекте. Я могу создать несколько наборов конфигураций в консоли Felix. Но метод @Activate вызывается только во время установки пакета. Во время активации преобразования ссылок вызывается только метод init(). Следовательно, я не могу получить конфигурации. Может ли кто-нибудь сказать мне, как получить конфигурации?