Collections 何时在Gradle中使用DomainObjectCollection和NamedDomainObjectCollection?
何时以及在什么情况下可以使用DomainObjectCollection和NamedDomainObjectCollection?你能给我举几个例子吗 从文档中我了解到,它们实现了Collections 何时在Gradle中使用DomainObjectCollection和NamedDomainObjectCollection?,collections,gradle,Collections,Gradle,何时以及在什么情况下可以使用DomainObjectCollection和NamedDomainObjectCollection?你能给我举几个例子吗 从文档中我了解到,它们实现了java.util.Collection和 DomainObjectCollection是一个专门的集合,它添加了 修改能力 通知和实时筛选子集合 因此,它们是支持“活性”的JavaCollections。但如何从这种类型实例化对象呢 通过项目对象还是如何?例如,我看到有一些DefaultNamedDomainObje
java.util.Collection
和
DomainObjectCollection是一个专门的集合,它添加了
修改能力
通知和实时筛选子集合
因此,它们是支持“活性”的JavaCollections。但如何从这种类型实例化对象呢
通过
项目
对象还是如何?例如,我看到有一些DefaultNamedDomainObjectList类实现了NamedDomainObjectList接口,但它们是内部类。只有NamedDomainObjectContainer
s可以通过公共API(project.container()
)实例化.只有NamedDomainObjectContainer
s可以通过公共API(project.container()
)实例化。gradle 5
new DefaultNamedDomainObjectList(
MyNamedClass.class,
new Instantiator() {
@Override
def <T> T newInstance(Class<? extends T> aClass, Object... objects) throws ObjectInstantiationException {
project.objects.newInstance(aClass, objects)
}
},
new DynamicPropertyNamer())
梯度5
new DefaultNamedDomainObjectList(
MyNamedClass.class,
new Instantiator() {
@Override
def <T> T newInstance(Class<? extends T> aClass, Object... objects) throws ObjectInstantiationException {
project.objects.newInstance(aClass, objects)
}
},
new DynamicPropertyNamer())