本文整理匯總了Java中com.holonplatform.core.datastore.DatastoreCommodityRegistrar類的典型用法代碼示例。如果您正苦於以下問題:Java DatastoreCommodityRegistrar類的具體用法?Java DatastoreCommodityRegistrar怎麽用?Java DatastoreCommodityRegistrar使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
DatastoreCommodityRegistrar類屬於com.holonplatform.core.datastore包,在下文中一共展示了DatastoreCommodityRegistrar類的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: configureDatastoreCommodityFactories
import com.holonplatform.core.datastore.DatastoreCommodityRegistrar; //導入依賴的package包/類
/**
* Register {@link com.holonplatform.spring.DatastoreCommodityFactory} annotated beans as <code>datastore</code>
* {@link DatastoreCommodityFactory}s.
* @param datastore Datastore to configure
* @param datastoreBeanName Datastore bean name to configure
* @param beanFactory Bean factory
*/
@SuppressWarnings({ "unchecked", "rawtypes" })
private static void configureDatastoreCommodityFactories(Datastore datastore, String datastoreBeanName,
ListableBeanFactory beanFactory) {
if (datastore instanceof DatastoreCommodityRegistrar) {
final Class<? extends DatastoreCommodityFactory> baseType = ((DatastoreCommodityRegistrar<?>) datastore)
.getCommodityFactoryType();
if (baseType != null) {
final String[] beanNames = beanFactory
.getBeanNamesForAnnotation(com.holonplatform.spring.DatastoreCommodityFactory.class);
if (beanNames != null && beanNames.length > 0) {
for (String beanName : beanNames) {
com.holonplatform.spring.DatastoreCommodityFactory dr = beanFactory.findAnnotationOnBean(
beanName, com.holonplatform.spring.DatastoreCommodityFactory.class);
String datastoreRef = AnnotationUtils.getStringValue(dr.datastoreBeanName());
if (datastoreRef == null || datastoreRef.equals(datastoreBeanName)) {
if (!baseType.isAssignableFrom(beanFactory.getType(beanName))) {
throw new BeanNotOfRequiredTypeException(beanName, baseType,
beanFactory.getType(beanName));
}
// register resolver
DatastoreCommodityFactory datastoreCommodityFactory = (DatastoreCommodityFactory) beanFactory
.getBean(beanName);
((DatastoreCommodityRegistrar) datastore).registerCommodity(datastoreCommodityFactory);
LOGGER.debug(() -> "Registered factory [" + datastoreCommodityFactory.getClass().getName()
+ "] into Datastore with bean name [" + datastoreBeanName + "]");
}
}
}
} else {
LOGGER.debug(
() -> "Datastore [" + datastore + "] does not declares a DatastoreCommodityFactory base type: "
+ "skipping DatastoreCommodityFactory beans configuration");
}
} else {
LOGGER.debug(() -> "Datastore [" + datastore
+ "] is not a DatastoreCommodityRegistrar: skipping DatastoreCommodityFactory beans configuration");
}
}