如何在 Liferay 7.4.3 (ga104) 中检索实例范围的配置?

问题描述 投票:0回答:1

我有一个用注释定义的配置接口

@ExtendedObjectClassDefinition(
       category = "logging",
       scope = ExtendedObjectClassDefinition.Scope.COMPANY
)

这样我就可以单独配置liferay实例。如何检索代码中的配置?

我尝试使用

ConfigurableUtil.createConfigurable(MyConfig.class, properties)

在我的激活方法中,它只接收系统范围的配置值。

java liferay liferay-7
1个回答
0
投票

为了弄清楚这一点,我总是 grep Liferay 的源代码,在本例中为

ExtendedObjectClassDefinition.Scope.COMPANY
,并查看它是如何使用的。

来自 AWSTranslator 的一个示例(第二顺序,相关配置是 AWSTranslatorConfiguration) - 请参阅 isEnabled 方法:

@Component(
    configurationPid = "com.liferay.translation.translator.aws.internal.configuration.AWSTranslatorConfiguration",
    service = Translator.class
)
public class AWSTranslator implements Translator {

    public boolean isEnabled(long companyId) throws ConfigurationException {
        AWSTranslatorConfiguration awsTranslatorConfiguration =
            _configurationProvider.getCompanyConfiguration(
                AWSTranslatorConfiguration.class, companyId);

        return awsTranslatorConfiguration.enabled();
    }

    @Reference
    private ConfigurationProvider _configurationProvider;

    // other irrelevant code omitted

}
© www.soinside.com 2019 - 2024. All rights reserved.