private Completable updateAllGCGraceSeconds(int gcGraceSeconds) { return Completable.concat(getGCGraceSeconds().map(metaData -> { if (metaData.tableName.equals("data_compressed")) { if (metaData.gcGraceSeconds == 0) { return Completable.complete(); } logger.info("gc_grace_seconds for " + metaData.tableName + " is set to " + metaData.gcGraceSeconds + ". Resetting back to zero."); return updateGCGraceSeconds(metaData.tableName, 0); } else { if (metaData.gcGraceSeconds != gcGraceSeconds) { logger.info("gc_grace_seconds for " + metaData.tableName + " is set to " + metaData.gcGraceSeconds + ". Resetting to " + gcGraceSeconds); return updateGCGraceSeconds(metaData.tableName, gcGraceSeconds); } return Completable.complete(); } })); }
private Completable updateAllGCGraceSeconds(int gcGraceSeconds) { return Completable.concat(getGCGraceSeconds().map(metaData -> { if (metaData.tableName.equals("data_compressed")) { if (metaData.gcGraceSeconds == 0) { return Completable.complete(); } logger.info("gc_grace_seconds for " + metaData.tableName + " is set to " + metaData.gcGraceSeconds + ". Resetting back to zero."); return updateGCGraceSeconds(metaData.tableName, 0); } else { if (metaData.gcGraceSeconds != gcGraceSeconds) { logger.info("gc_grace_seconds for " + metaData.tableName + " is set to " + metaData.gcGraceSeconds + ". Resetting to " + gcGraceSeconds); return updateGCGraceSeconds(metaData.tableName, gcGraceSeconds); } return Completable.complete(); } })); }
@Test public void test() throws Exception { System.out.println("Testing Completable.concat"); System.out.println(); Completable.concat( Observable.range(1, 5).map(integer -> Completable.fromAction(() -> { try { System.out.println("Processing " + integer + "..."); Thread.sleep(100); System.out.println("Processing " + integer + " finished"); } catch (InterruptedException e) { e.printStackTrace(); } }) .doOnUnsubscribe(() -> System.out.println("Unsubscribed from " + integer)) .subscribeOn(Schedulers.io()).observeOn(Schedulers.computation()) ) .doOnUnsubscribe(() -> System.out.println("Unsubscribed from parent observable")) ).subscribe(() -> { System.out.println("Finished Completable.concat"); }, Throwable::printStackTrace ); Thread.sleep(2000); } }
@Override public Observable<ServiceBusNamespace> createResourceAsync() { Completable createNamespaceCompletable = this.manager().inner().namespaces() .createOrUpdateAsync(this.resourceGroupName(), this.name(), this.inner()) .map(new Func1<NamespaceInner, NamespaceInner>() { @Override public NamespaceInner call(NamespaceInner inner) { setInner(inner); return inner; } }).toCompletable(); Completable childrenOperationsCompletable = submitChildrenOperationsAsync(); final ServiceBusNamespace self = this; return Completable.concat(createNamespaceCompletable, childrenOperationsCompletable) .doOnTerminate(new Action0() { @Override public void call() { initChildrenOperationsCache(); } }) .andThen(Observable.just(self)); }
@Override public Observable<ServiceBusNamespace> createResourceAsync() { Completable createNamespaceCompletable = this.manager().inner().namespaces() .createOrUpdateAsync(this.resourceGroupName(), this.name(), this.inner()) .map(new Func1<NamespaceInner, NamespaceInner>() { @Override public NamespaceInner call(NamespaceInner inner) { setInner(inner); return inner; } }).toCompletable(); Completable childrenOperationsCompletable = submitChildrenOperationsAsync(); final ServiceBusNamespace self = this; return Completable.concat(createNamespaceCompletable, childrenOperationsCompletable) .doOnTerminate(new Action0() { @Override public void call() { initChildrenOperationsCache(); } }) .andThen(Observable.just(self)); }
@Override protected Observable<Queue> createChildResourceAsync() { Completable createQueueCompletable = this.manager().inner().queues() .createOrUpdateAsync(this.resourceGroupName(), this.parentName, this.name(), this.inner()) .map(new Func1<QueueInner, QueueInner>() { @Override public QueueInner call(QueueInner inner) { setInner(inner); return inner; } }).toCompletable(); Completable childrenOperationsCompletable = submitChildrenOperationsAsync(); final Queue self = this; return Completable.concat(createQueueCompletable, childrenOperationsCompletable) .doOnTerminate(new Action0() { @Override public void call() { initChildrenOperationsCache(); } }) .andThen(Observable.just(self)); }
@Override protected Observable<Queue> createChildResourceAsync() { Completable createQueueCompletable = this.manager().inner().queues() .createOrUpdateAsync(this.resourceGroupName(), this.parentName, this.name(), this.inner()) .map(new Func1<QueueInner, QueueInner>() { @Override public QueueInner call(QueueInner inner) { setInner(inner); return inner; } }).toCompletable(); Completable childrenOperationsCompletable = submitChildrenOperationsAsync(); final Queue self = this; return Completable.concat(createQueueCompletable, childrenOperationsCompletable) .doOnTerminate(new Action0() { @Override public void call() { initChildrenOperationsCache(); } }) .andThen(Observable.just(self)); }
@Override protected Observable<Topic> createChildResourceAsync() { Completable createTopicCompletable = this.manager().inner().topics() .createOrUpdateAsync(this.resourceGroupName(), this.parentName, this.name(), this.inner()) .map(new Func1<TopicInner, TopicInner>() { @Override public TopicInner call(TopicInner inner) { setInner(inner); return inner; } }).toCompletable(); Completable childrenOperationsCompletable = submitChildrenOperationsAsync(); final Topic self = this; return Completable.concat(createTopicCompletable, childrenOperationsCompletable) .doOnTerminate(new Action0() { @Override public void call() { initChildrenOperationsCache(); } }) .andThen(Observable.just(self)); }
@Override protected Observable<Topic> createChildResourceAsync() { Completable createTopicCompletable = this.manager().inner().topics() .createOrUpdateAsync(this.resourceGroupName(), this.parentName, this.name(), this.inner()) .map(new Func1<TopicInner, TopicInner>() { @Override public TopicInner call(TopicInner inner) { setInner(inner); return inner; } }).toCompletable(); Completable childrenOperationsCompletable = submitChildrenOperationsAsync(); final Topic self = this; return Completable.concat(createTopicCompletable, childrenOperationsCompletable) .doOnTerminate(new Action0() { @Override public void call() { initChildrenOperationsCache(); } }) .andThen(Observable.just(self)); }