当前位置: 首页>>代码示例>>Java>>正文


Java Injector.getAllBindings方法代码示例

本文整理汇总了Java中com.google.inject.Injector.getAllBindings方法的典型用法代码示例。如果您正苦于以下问题:Java Injector.getAllBindings方法的具体用法?Java Injector.getAllBindings怎么用?Java Injector.getAllBindings使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.google.inject.Injector的用法示例。


在下文中一共展示了Injector.getAllBindings方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: GuiceQueryPluginFactory

import com.google.inject.Injector; //导入方法依赖的package包/类
@Inject
@SuppressWarnings("unchecked")
public GuiceQueryPluginFactory(Injector injector)
{
	m_injector = injector;
	Map<Key<?>, Binding<?>> bindings = injector.getAllBindings();

	for (Key<?> key : bindings.keySet())
	{
		Class<?> bindingClass = key.getTypeLiteral().getRawType();
		if (QueryPlugin.class.isAssignableFrom(bindingClass))
		{
			PluginName ann = (PluginName) bindingClass.getAnnotation(PluginName.class);
			if (ann == null)
				throw new IllegalStateException("Aggregator class " + bindingClass.getName() +
						" does not have required annotation " + PluginName.class.getName());

			m_plugins.put(ann.name(), (Class<QueryPlugin>)bindingClass);
		}
	}
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:22,代码来源:GuiceQueryPluginFactory.java

示例2: GuiceGroupByFactory

import com.google.inject.Injector; //导入方法依赖的package包/类
@Inject
@SuppressWarnings("unchecked")
public GuiceGroupByFactory(Injector injector)
{
	this.injector = injector;
	Map<Key<?>, Binding<?>> bindings = injector.getAllBindings();

	for (Key<?> key : bindings.keySet())
	{
		Class<?> bindingClass = key.getTypeLiteral().getRawType();
		if (GroupBy.class.isAssignableFrom(bindingClass))
		{
			GroupByName name = (GroupByName)bindingClass.getAnnotation(GroupByName.class);
			if (name == null)
				throw new IllegalStateException("Aggregator class "+bindingClass.getName()+
						" does not have required annotation "+GroupByName.class.getName());

			groupBys.put(name.name(), (Class<GroupBy>)bindingClass);
		}
	}
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:22,代码来源:GuiceGroupByFactory.java

示例3: HealthCheckServiceImpl

import com.google.inject.Injector; //导入方法依赖的package包/类
@Inject
public HealthCheckServiceImpl(Injector injector)
{
	checkNotNull(injector);

	Map<Key<?>, Binding<?>> bindings = injector.getAllBindings();

	for (Key<?> key : bindings.keySet())
	{
		Class<?> bindingClass = key.getTypeLiteral().getRawType();
		if (HealthStatus.class.isAssignableFrom(bindingClass))
		{
			checks.add((HealthStatus) injector.getInstance(bindingClass));
		}
	}
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:17,代码来源:HealthCheckServiceImpl.java

示例4: DataPointListenerProvider

import com.google.inject.Injector; //导入方法依赖的package包/类
@Inject
public DataPointListenerProvider(Injector injector)
{
	Map<Key<?>, Binding<?>> bindings = injector.getAllBindings();

	for (Key<?> key : bindings.keySet())
	{
		Class<?> bindingClass = key.getTypeLiteral().getRawType();
		if (DataPointListener.class.isAssignableFrom(bindingClass))
		{
			DataPointListener listener = (DataPointListener)injector.getInstance(bindingClass);
			m_listeners.add(listener);
		}
	}
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:16,代码来源:DataPointListenerProvider.java

示例5: GuiceCommandProvider

import com.google.inject.Injector; //导入方法依赖的package包/类
@Inject
public GuiceCommandProvider(Injector injector)
{
	Map<Key<?>, Binding<?>> bindings = injector.getAllBindings();

	for (Key<?> key : bindings.keySet())
	{
		Class<?> bindingClass = key.getTypeLiteral().getRawType();
		if (TelnetCommand.class.isAssignableFrom(bindingClass))
		{
			TelnetCommand command = (TelnetCommand)injector.getInstance(bindingClass);
			m_commandMap.put(command.getCommand(), command);
		}
	}
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:16,代码来源:GuiceCommandProvider.java

示例6: GuiceAggregatorFactory

import com.google.inject.Injector; //导入方法依赖的package包/类
@Inject
@SuppressWarnings("unchecked")
public GuiceAggregatorFactory(Injector injector)
{
	m_injector = injector;
	Map<Key<?>, Binding<?>> bindings = injector.getAllBindings();

       for (Key<?> key : bindings.keySet())
	{
		Class<?> bindingClass = key.getTypeLiteral().getRawType();
		if (Aggregator.class.isAssignableFrom(bindingClass))
		{
			AggregatorName ann = bindingClass.getAnnotation(AggregatorName.class);
			if (ann == null)
				throw new IllegalStateException("Aggregator class " + bindingClass.getName()+
						" does not have required annotation " + AggregatorName.class.getName());

			m_aggregators.put(ann.name(), (Class<Aggregator>)bindingClass);

               ImmutableList<AggregatorPropertyMetadata> properties = getAggregatorPropertyMetadata(ann);
               m_aggregatorsMetadata.add(new AggregatorMetadata(ann.name(), ann.description(), properties));
		}
	}
	Collections.sort(m_aggregatorsMetadata, new Comparator<AggregatorMetadata>()
	{
		@Override
		public int compare(AggregatorMetadata o1, AggregatorMetadata o2)
		{
			return o1.getName().compareTo(o2.getName());
		}
	});
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:33,代码来源:GuiceAggregatorFactory.java


注:本文中的com.google.inject.Injector.getAllBindings方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。