List of usage examples for com.google.common.collect ImmutableClassToInstanceMap builder
public static <B> Builder<B> builder()
From source file:com.github.akiraly.db4j.ContextRowMapperFactory.java
public static <T> ImmutableClassToInstanceMap<Object> createContext(RowMapper<T> rowMapper) { return ImmutableClassToInstanceMap.builder().put(RowMapper.class, argNotNull(rowMapper, "rowMapper")) .build();// ww w. java 2s . c om }
From source file:see.evaluation.evaluators.SimpleContext.java
public static <T> Context addService(Context context, Class<T> serviceClass, T service) { if (service == context.getServices().getInstance(serviceClass)) return context; // Return context, if it contains same instance return withServices(context, ImmutableClassToInstanceMap.builder() .putAll(filterKeys(context.getServices(), not(Predicates.<Object>equalTo(serviceClass)))) .put(serviceClass, service).build()); }
From source file:com.facebook.presto.connector.dual.DualConnector.java
@Inject public DualConnector(NodeManager nodeManager) { ImmutableClassToInstanceMap.Builder<Object> services = ImmutableClassToInstanceMap.builder(); services.put(ConnectorMetadata.class, new DualMetadata()); services.put(ConnectorSplitManager.class, new DualSplitManager(nodeManager)); services.put(ConnectorDataStreamProvider.class, new DualDataStreamProvider()); services.put(ConnectorHandleResolver.class, new DualHandleResolver()); this.services = services.build(); }
From source file:com.facebook.presto.connector.system.SystemConnector.java
@Inject public SystemConnector(SystemTablesMetadata value, SystemSplitManager systemSplitManager, SystemDataStreamProvider systemDataStreamProvider) { ImmutableClassToInstanceMap.Builder<Object> services = ImmutableClassToInstanceMap.builder(); services.put(ConnectorMetadata.class, value); services.put(ConnectorSplitManager.class, systemSplitManager); services.put(ConnectorDataStreamProvider.class, systemDataStreamProvider); services.put(ConnectorHandleResolver.class, new SystemHandleResolver()); this.services = services.build(); }
From source file:com.opengamma.strata.basics.market.ImmutableTypedReferenceData.java
/** * Obtains an instance from a single piece of reference data. * <p>//from ww w .j a v a 2 s .c o m * The type specified is the type used to access the value, and not necessarily * the same as the class of the value. * * @param type the type of the reference data * @param value the single reference data value * @return reference data containing the values */ public static <T> ImmutableTypedReferenceData of(Class<T> type, T value) { return ImmutableTypedReferenceData.of(ImmutableClassToInstanceMap.builder().put(type, value).build()); }
From source file:org.tensorics.core.tensor.Coordinates.java
/** * Creates a class to instance map, from the given coordinates. The map will contain the classes of the coordinates * as keys and the coordinates themselves as values. Duplicate keys (dimensions) are not allowed and will result in * an {@link IllegalArgumentException}./*from ww w . j a v a2 s. c om*/ * * @param coordinates the coordinates to be added to the map * @return an immutable map from dimensions (coordinate classes) to coordinate * @throws IllegalArgumentException if more than one coordinate per dimension are provided * @deprecated */ @Deprecated public static <C> ClassToInstanceMap<C> mapOf(Iterable<? extends C> coordinates) { ImmutableClassToInstanceMap.Builder<C> coordinateBuilder = ImmutableClassToInstanceMap.builder(); for (C coordinate : coordinates) { @SuppressWarnings("unchecked") Class<C> coordinateClass = (Class<C>) coordinate.getClass(); coordinateBuilder.put(coordinateClass, coordinate); } return coordinateBuilder.build(); }
From source file:com.google.errorprone.refaster.BugCheckerTransformer.java
@SuppressWarnings("unchecked") @Override//from ww w. j a v a2s.c o m public ImmutableClassToInstanceMap<Annotation> annotations() { ImmutableClassToInstanceMap.Builder<Annotation> builder = ImmutableClassToInstanceMap.builder(); for (Annotation annotation : checker().getClass().getDeclaredAnnotations()) { builder.put((Class) annotation.annotationType(), annotation); } return builder.build(); }
From source file:com.facebook.presto.connector.NativeConnectorFactory.java
@Override public Connector create(String connectorId, Map<String, String> properties) { ImmutableClassToInstanceMap.Builder<Object> builder = ImmutableClassToInstanceMap.builder(); IDBI dbi = this.dbi.get(); if (dbi != null) { builder.put(ConnectorMetadata.class, new NativeMetadata(connectorId, dbi)); }//from w w w .j a v a 2 s . c om NativeSplitManager splitManager = this.splitManager.get(); if (splitManager != null) { builder.put(ConnectorSplitManager.class, splitManager); } builder.put(ConnectorDataStreamProvider.class, dataStreamProvider); builder.put(ConnectorHandleResolver.class, HANDLE_RESOLVER); return new StaticConnector(builder.build()); }
From source file:org.opendaylight.controller.md.sal.binding.compat.HydrogenMountInstanceAdapter.java
public HydrogenMountInstanceAdapter(final MountPoint key) { this.identifier = key.getIdentifier(); final ImmutableClassToInstanceMap.Builder<BindingAwareService> builder = ImmutableClassToInstanceMap .builder();/*from ww w .jav a 2 s .co m*/ final Optional<DataBroker> dataBroker = key.getService(DataBroker.class); if (dataBroker.isPresent()) { builder.put(DataBrokerService.class, new HydrogenDataBrokerAdapter(dataBroker.get())); } final Optional<org.opendaylight.controller.md.sal.binding.api.NotificationService> notificationService = key .getService(org.opendaylight.controller.md.sal.binding.api.NotificationService.class); if (notificationService.isPresent()) { builder.put(NotificationService.class, new HeliumNotificationServiceAdapter(notificationService.get())); } final Optional<RpcConsumerRegistry> rpcRegistry = key.getService(RpcConsumerRegistry.class); if (rpcRegistry.isPresent()) { builder.put(RpcConsumerRegistry.class, rpcRegistry.get()); } services = builder.build(); }
From source file:com.cloudata.structured.sql.provider.CloudataConnectorFactory.java
@Override public Connector create(final String connectorId, Map<String, String> requiredConfig) { checkNotNull(requiredConfig, "requiredConfig is null"); checkNotNull(optionalConfig, "optionalConfig is null"); try {//www. j a va2 s.co m // // A plugin is not required to use Guice; it is just very convenient // Bootstrap app = new Bootstrap(new JsonModule(), new ExampleModule(connectorId)); // // Injector injector = app.strictConfig().doNotInitializeLogging() // .setRequiredConfigurationProperties(requiredConfig) // .setOptionalConfigurationProperties(optionalConfig).initialize(); ClassToInstanceMap<Object> services = ImmutableClassToInstanceMap.builder() .put(ConnectorMetadata.class, new CloudataConnectorMetadata(connectorId, store)) .put(ConnectorSplitManager.class, new CloudataSplitManager(nodeManager, connectorId)) .put(ConnectorRecordSetProvider.class, new CloudataConnectorRecordSetProvider()) .put(ConnectorHandleResolver.class, new CloudataConnectorHandleResolver()).build(); CloudataConnector connector = new CloudataConnector(store, services); connectors.put(connectorId, connector); return connector; } catch (Exception e) { throw Throwables.propagate(e); } }