/** * Write Evaluator info as JSON format to HTTP Response. */ private void writeEvaluatorInfoJsonOutput( final HttpServletResponse response, final List<String> ids) throws IOException { try { final EvaluatorInfoSerializer serializer = Tang.Factory.getTang().newInjector().getInstance(EvaluatorInfoSerializer.class); final AvroEvaluatorsInfo evaluatorsInfo = serializer.toAvro(ids, this.reefStateManager.getEvaluators()); writeResponse(response, serializer.toString(evaluatorsInfo)); } catch (final InjectionException e) { LOG.log(Level.SEVERE, "Error in injecting EvaluatorInfoSerializer.", e); writeResponse(response, "Error in injecting EvaluatorInfoSerializer: " + e); } }
/** * Write Driver Info as JSON string to Response. */ private void writeDriverJsonInformation(final HttpServletResponse response) throws IOException { LOG.log(Level.INFO, "HttpServerReefEventHandler writeDriverJsonInformation invoked."); try { final DriverInfoSerializer serializer = Tang.Factory.getTang().newInjector().getInstance(DriverInfoSerializer.class); final AvroDriverInfo driverInfo = serializer.toAvro( this.reefStateManager.getDriverEndpointIdentifier(), this.reefStateManager.getStartTime(), this.reefStateManager.getServicesInfo()); writeResponse(response, serializer.toString(driverInfo)); } catch (final InjectionException e) { LOG.log(Level.SEVERE, "Error in injecting DriverInfoSerializer.", e); writeResponse(response, "Error in injecting DriverInfoSerializer: " + e); } }
/** * Get all evaluator ids and send it back to response as JSON. */ private void writeEvaluatorsJsonOutput(final HttpServletResponse response) throws IOException { LOG.log(Level.INFO, "HttpServerReefEventHandler writeEvaluatorsJsonOutput is called"); try { final EvaluatorListSerializer serializer = Tang.Factory.getTang().newInjector().getInstance(EvaluatorListSerializer.class); final AvroEvaluatorList evaluatorList = serializer.toAvro( this.reefStateManager.getEvaluators(), this.reefStateManager.getEvaluators().size(), this.reefStateManager.getStartTime()); writeResponse(response, serializer.toString(evaluatorList)); } catch (final InjectionException e) { LOG.log(Level.SEVERE, "Error in injecting EvaluatorListSerializer.", e); writeResponse(response, "Error in injecting EvaluatorListSerializer: " + e); } }
/** * Fetch scheduler configuration. * @param jobConf job configuration. * @return the scheduler configuration. * @throws ClassNotFoundException exception while finding the class. * @throws InjectionException exception while injection (REEF Tang). */ private static Configuration getSchedulerConf(final Configuration jobConf) throws ClassNotFoundException, InjectionException { final Injector injector = TANG.newInjector(jobConf); final String classImplName = injector.getNamedInstance(JobConf.SchedulerImplClassName.class); final JavaConfigurationBuilder jcb = Tang.Factory.getTang().newConfigurationBuilder(); final Class schedulerImpl = ((Class<Scheduler>) Class.forName(classImplName)); jcb.bindImplementation(Scheduler.class, schedulerImpl); return jcb.build(); }
public CommandLine() { this.conf = Tang.Factory.getTang().newConfigurationBuilder(); }
/** * Assembles the final Driver Configuration by merging in all the Configurations provided by ConfigurationProviders. * * @param driverConfiguration * @return */ private Configuration createDriverConfiguration(final Configuration driverConfiguration) { final ConfigurationBuilder configurationBuilder = Tang.Factory.getTang() .newConfigurationBuilder(driverConfiguration); for (final ConfigurationProvider configurationProvider : this.configurationProviders) { configurationBuilder.addConfiguration(configurationProvider.getConfiguration()); } return configurationBuilder.build(); }
/** * returns a configuration for the class that implements TcpPortProvider so that class can be instantiated. * somewhere else * * @return Configuration. */ @Override public Configuration getConfiguration() { return Tang.Factory.getTang().newConfigurationBuilder() .bindNamedParameter(TcpPortRangeBegin.class, String.valueOf(portRangeBegin)) .bindNamedParameter(TcpPortRangeCount.class, String.valueOf(portRangeCount)) .bindNamedParameter(TcpPortRangeTryCount.class, String.valueOf(portRangeTryCount)) .bindSetEntry(EvaluatorConfigurationProviders.class, TcpPortConfigurationProvider.class) .build(); }
/** * Extracts a context id from the given configuration. * * @param c * @return the context id in the given configuration. * @throws RuntimeException if the configuration can't be parsed. */ public static String getIdentifier(final Configuration c) { try { return Tang.Factory.getTang().newInjector(c).getNamedInstance( ContextIdentifier.class); } catch (final InjectionException e) { throw new RuntimeException("Unable to determine context identifier. Giving up.", e); } }
/** * Merge a set of Configurations. * * @param configurations the configuration to be merged * @return the merged configuration. * @throws org.apache.reef.tang.exceptions.BindException if the merge fails. */ public static Configuration merge(final Iterable<Configuration> configurations) { final ConfigurationBuilder configurationBuilder = Tang.Factory.getTang().newConfigurationBuilder(); for (final Configuration configuration : configurations) { configurationBuilder.addConfiguration(configuration); } return configurationBuilder.build(); }
@Override public Configuration getTaskConfiguration(final Configuration partialTaskConf) { LOG.entering("GroupCommDriverImpl", "getTaskConfiguration", new Object[]{confSerializer.toString(partialTaskConf)}); final JavaConfigurationBuilder jcb = Tang.Factory.getTang().newConfigurationBuilder(partialTaskConf); for (final CommunicationGroupDriver commGroupDriver : commGroupDrivers.values()) { final Configuration commGroupConf = commGroupDriver.getTaskConfiguration(partialTaskConf); if (commGroupConf != null) { jcb.bindSetEntry(SerializedGroupConfigs.class, confSerializer.toString(commGroupConf)); } } final Configuration retVal = jcb.build(); LOG.exiting("GroupCommDriverImpl", "getTaskConfiguration", confSerializer.toString(retVal)); return retVal; }
/** * Assembles the configuration for an Evaluator. * * @param resourceLaunchEvent * @return * @throws IOException */ private Configuration makeEvaluatorConfiguration(final ResourceLaunchEvent resourceLaunchEvent) throws IOException { return Tang.Factory.getTang() .newConfigurationBuilder(resourceLaunchEvent.getEvaluatorConf()) .build(); } }
/** * Extracts a task id from the given configuration. * * @param config * @return the task id in the given configuration. * @throws RuntimeException if the configuration can't be parsed. */ public static String getTaskId(final Configuration config) { try { return Tang.Factory.getTang().newInjector(config).getNamedInstance(TaskConfigurationOptions.Identifier.class); } catch (final InjectionException ex) { throw new RuntimeException("Unable to determine task identifier. Giving up.", ex); } }
/** * Converts a given AvroConfiguration to Configuration. * * @param avroConfiguration a Avro configuration * @param classHierarchy the class hierarchy used for validation. * @return a Configuration version of the given AvroConfiguration */ public Configuration fromAvro(final AvroConfiguration avroConfiguration, final ClassHierarchy classHierarchy) throws BindException { final ConfigurationBuilder configurationBuilder = Tang.Factory.getTang().newConfigurationBuilder(classHierarchy); fromAvro(avroConfiguration, configurationBuilder); return configurationBuilder.build(); }
@Inject private TopologyFactory(@Parameter(GroupCommSenderStage.class) final EStage<GroupCommunicationMessage> senderStage, @Parameter(CommGroupNameClass.class) final Class<? extends Name<String>> groupName, @Parameter(DriverIdentifier.class) final String driverId, @Parameter(CommGroupNumTask.class) final int numberOfTasks, @Parameter(TreeTopologyFanOut.class) final int fanOut) { injector = Tang.Factory.getTang().newInjector(); injector.bindVolatileParameter(GroupCommSenderStage.class, senderStage); injector.bindVolatileParameter(CommGroupNameClass.class, groupName); injector.bindVolatileParameter(DriverIdentifier.class, driverId); injector.bindVolatileParameter(CommGroupNumTask.class, numberOfTasks); injector.bindVolatileParameter(TreeTopologyFanOut.class, fanOut); }
protected ConfigurationBuilderImpl() { this.namespace = Tang.Factory.getTang().getDefaultClassHierarchy(); }
public static void main(final String[] args) throws BindException, InjectionException { final Tang tang = Tang.Factory.getTang(); final JavaConfigurationBuilder cb = tang.newConfigurationBuilder(); final Configuration conf = cb.build(); final Injector injector = tang.newInjector(conf); final TimerV1 timer = injector.getInstance(TimerV1.class); try { System.out.println("Tick..."); timer.sleep(); System.out.println("Tock."); } catch (final InterruptedException e) { e.printStackTrace(); } }
private Configuration getExecutorMessageConfiguration(final String executorId) { return Tang.Factory.getTang().newConfigurationBuilder() .bindNamedParameter(MessageParameters.SenderId.class, executorId) .build(); } }
private Configuration getExecutorNcsConfiguration() { return Tang.Factory.getTang().newConfigurationBuilder() .bindNamedParameter(NameResolverNameServerPort.class, Integer.toString(nameServer.getPort())) .bindNamedParameter(NameResolverNameServerAddr.class, localAddressProvider.getLocalAddress()) .bindImplementation(IdentifierFactory.class, StringIdentifierFactory.class) .build(); }
/** * @return client configuration. */ private static Configuration getClientConf() { final JavaConfigurationBuilder jcb = Tang.Factory.getTang().newConfigurationBuilder(); jcb.bindNamedParameter(JobMessageHandler.class, NemoClient.JobMessageHandler.class); return jcb.build(); }
/** * @return the configuration for RPC server listening information */ public Configuration getListeningConfiguration() { return Tang.Factory.getTang().newConfigurationBuilder() .bindNamedParameter(JobConf.ClientSideRPCServerHost.class, getListeningHost()) .bindNamedParameter(JobConf.ClientSideRPCServerPort.class, String.valueOf(getListeningPort())) .build(); }