次のようなクラスがあるとします。
@References(
value={
@Reference(name="dataSources",cardinality=ReferenceCardinality.OPTIONAL_MULTIPLE,policy=ReferencePolicy.DYNAMIC,strategy=ReferenceStrategy.EVENT,bind="bind",unbind="unbind",referenceInterface=DataSourceProvider.class)
})
public class DataSourceStoreServiceImpl implements DataSourceStoreService {
List<DataSourceProvider> dataSourceProviders = new CopyOnWriteArrayList<DataSourceProvider>();
public void bind(DataSourceProvider dataSourceProvider) {
dataSourceProviders.add(dataSourceProvider);
}
public void unbind(DataSourceProvider dataSourceProvider) {
dataSourceProviders.remove(dataSourceProvider);
}
}
これは、MULTIPLE
カーディナリティを使用して参照を処理する方法です。
私の質問は、ボイラープレートなしでそれを行うことが可能かどうかです? 私が念頭に置いているのは、次のようなものです。
public class DataSourceStoreServiceImpl implements DataSourceStoreService {
@CollectionType(CopyOnWriteArrayList.class)
@Reference(name="dataSources",cardinality=ReferenceCardinality.OPTIONAL_MULTIPLE,policy=ReferencePolicy.DYNAMIC,strategy=ReferenceStrategy.EVENT,bind="bind",unbind="unbind",referenceInterface=DataSourceProvider.class)
List<DataSourceProvider> dataSourceProviders
}