从Java代码访问模块定义的属性 [英] Accessing a module-defined property from Java code
问题描述
在扩展更早的答案时,我意识到我不知道是否可以访问模块定义的属性来自Java代码。例如,如果我有:
< define-property name =formfactorvalues =desktop,tablet,mobile />
SDK中的某些内容可以像这样吗?
String ff = [someClass] .getProperty(formfactor)`?
您必须使用延迟绑定。
最简单的方法是使用< replace-with>
规则,但它需要相当多的样板代码每个值的类都返回与来自getter的属性相同的值)
或者您可以使用生成器并使用< generate-with> ;
规则。
在任何情况下,您都需要在代码中使用接口或基类,编码或生成)将使用延迟绑定规则进行切换。
When expanding an earlier answer I realized I don't know if it is possible to access a module-defined property from Java code. For example, if I have:
<define-property name="formfactor" values="desktop,tablet,mobile" />
Is something available in the SDK to go like this?
String ff = [someClass].getProperty("formfactor")`?
You have to use deferred-binding.
The easiest way is to use <replace-with>
rules, but it requires quite a lot of boilerplate code (one per value, with classes that return the same value as the property from a getter)
Or you could use a generator and <generate-with>
rule.
In any case, you'll need an interface or base class to use in your code and whose exact implementation (either hand-coded or generated) will be switched using deferred binding rules.
这篇关于从Java代码访问模块定义的属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!