private IFileWriterPolicy<String> getPolicy() { if (policy == null) { policy = policyFn.get(); } return policy; }
/** * Get the current state for {@code key}. * If no state is held then {@code initialState.get()} * is called to create the initial state for {@code key}. * @param key Partition key. * @return State for {@code key}. */ protected synchronized S getState(K key) { S state = states.get(key); if (state == null) states.put(key, state = initialState.get()); return state; }
/** * Get the current state for {@code key}. * If no state is held then {@code initialState.get()} * is called to create the initial state for {@code key}. * @param key Partition key. * @return State for {@code key}. */ protected synchronized S getState(K key) { S state = states.get(key); if (state == null) states.put(key, state = initialState.get()); return state; }
@Override public String get() { if (iter == null) { iter = reader.get().iterator(); } if (iter.hasNext()) { return iter.next(); } else { // presumably a shutdown condition return null; } } };
@Override public T get() { final Supplier<T> function = f(); synchronized (function) { return function.get(); } } }
private ConsumerConfig createConsumerConfig() { Map<String,Object> config = configFn.get(); Properties props = new Properties(); for (Entry<String,Object> e : config.entrySet()) { props.put(e.getKey(), e.getValue().toString()); } return new ConsumerConfig(props); }
private ConsumerConfig createConsumerConfig() { Map<String,Object> config = configFn.get(); Properties props = new Properties(); for (Entry<String,Object> e : config.entrySet()) { props.put(e.getKey(), e.getValue().toString()); } return new ConsumerConfig(props); }
@Override public T get() { final Supplier<T> function = f(); synchronized (function) { return function.get(); } } }
@Override public void process() { for (T tuple : data.get()) { if (tuple != null) submit(tuple); if (Thread.currentThread().isInterrupted()) break; } } }
@Override public void process() { for (T tuple : data.get()) { if (tuple != null) submit(tuple); if (Thread.currentThread().isInterrupted()) break; } } }
@Override public void fetchTuples() { T tuple = data.get(); if (tuple != null) submit(tuple); } }
/** * Method to create a basic authentication HTTP client. * The functions {@code user} and {@code password} are called * when this method is invoked to obtain the user and password * and runtime. * * @param user Function that provides user for authentication * @param password Function that provides password for authentication * @return HTTP client with basic authentication. * * @see HttpStreams */ public static CloseableHttpClient basic(Supplier<String> user, Supplier<String> password) { CredentialsProvider credsProvider = new BasicCredentialsProvider(); credsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(user.get(), password.get())); return HttpClientBuilder.create().setDefaultCredentialsProvider(credsProvider).build(); } }
private void initialize() throws IOException { dirFile = new File(dirSupplier.get()); trace.info("watching directory {}", dirFile); Path dir = dirFile.toPath(); watcher = FileSystems.getDefault().newWatchService(); dir.register(watcher, ENTRY_CREATE, ENTRY_DELETE); sortAndSubmit(Arrays.asList(dirFile.listFiles(this))); }
@Override public void fetchTuples() { T tuple = data.get(); if (tuple != null) submit(tuple); } }
@Override public void close() throws Exception { PublishSubscribeService pubSub = rts.get().getService(PublishSubscribeService.class); if (pubSub != null) { pubSub.removeSubscriber(topic, submitter); } } }
@Override public void close() throws Exception { JobRegistryService jobRegistry = rts.get().getService(JobRegistryService.class); if (jobRegistry != null) { jobRegistry.removeListener(listener); } }
@Override public void close() throws Exception { PublishSubscribeService pubSub = rts.get().getService(PublishSubscribeService.class); if (pubSub != null) { pubSub.removeSubscriber(topic, submitter); } } }
@Override public void accept(Consumer<T> submitter) { PublishSubscribeService pubSub = rts.get().getService(PublishSubscribeService.class); if (pubSub != null) { this.submitter = submitter; pubSub.addSubscriber(topic, streamType, submitter); } } @Override
@Override public void accept(Consumer<T> submitter) { PublishSubscribeService pubSub = rts.get().getService(PublishSubscribeService.class); if (pubSub != null) { this.submitter = submitter; pubSub.addSubscriber(topic, streamType, submitter); } } @Override
@Override public boolean insert(T tuple) { K key = keyFunction.apply(tuple); Partition<T, K, L> partition; synchronized (partitions) { partition = partitions.get(key); if (partition == null) { partition = new PartitionImpl<T, K, L>(this, listSupplier.get(), key); partitions.put(key, partition); } } return partition.insert(tuple); }