Merge branch 'two-dot-o-dev' of 
https://git-wip-us.apache.org/repos/asf/incubator-usergrid into USERGRID-578


Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/c77519ea
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/c77519ea
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/c77519ea

Branch: refs/heads/two-dot-o-dev
Commit: c77519ea78016b30ac9cb4957e4fc74a0093b983
Parents: 587e439 a58ccfa
Author: Shawn Feldman <sfeld...@apache.org>
Authored: Tue Apr 21 14:33:10 2015 -0600
Committer: Shawn Feldman <sfeld...@apache.org>
Committed: Tue Apr 21 14:33:10 2015 -0600

----------------------------------------------------------------------
 .../index/AsyncIndexProvider.java               |   5 +-
 .../index/InMemoryAsyncReIndexService.java      |  43 +++++--
 .../corepersistence/index/IndexService.java     |  12 +-
 .../corepersistence/index/IndexServiceImpl.java |  55 ++++++---
 .../corepersistence/TestIndexModule.java        |  14 ++-
 .../corepersistence/index/IndexServiceTest.java | 112 +++++++++++++++++++
 .../corepersistence/index/PublishRxTest.java    |  95 ++++++++++++++++
 .../corepersistence/index/PublishRxtest.java    |  61 ----------
 .../usergrid/persistence/CollectionIT.java      |   1 -
 .../core/metrics/ObservableTimer.java           |  72 ++++++++++++
 .../core/rx/RxTaskSchedulerImpl.java            |   5 +-
 .../persistence/model/entity/Entity.java        |   2 +-
 .../persistence/index/impl/IndexRequest.java    |   1 -
 .../usergrid/cassandra/SpringResource.java      |  13 ++-
 14 files changed, 379 insertions(+), 112 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/c77519ea/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/PublishRxTest.java
----------------------------------------------------------------------
diff --cc 
stack/core/src/test/java/org/apache/usergrid/corepersistence/index/PublishRxTest.java
index 0000000,973a42d..4e65110
mode 000000,100644..100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/PublishRxTest.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/PublishRxTest.java
@@@ -1,0 -1,95 +1,95 @@@
+ /*
+  * Licensed to the Apache Software Foundation (ASF) under one
+  * or more contributor license agreements.  See the NOTICE file
+  * distributed with this work for additional information
+  * regarding copyright ownership.  The ASF licenses this file
+  * to you under the Apache License, Version 2.0 (the
+  * "License"); you may not use this file except in compliance
+  * with the License.  You may obtain a copy of the License at
+  *
+  *     http://www.apache.org/licenses/LICENSE-2.0
+  *
+  * Unless required by applicable law or agreed to in writing,
+  * software distributed under the License is distributed on an
+  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  * KIND, either express or implied.  See the License for the
+  * specific language governing permissions and limitations
+  * under the License.
+  */
+ 
+ package org.apache.usergrid.corepersistence.index;
+ 
+ 
+ import java.util.concurrent.CountDownLatch;
+ import java.util.concurrent.TimeUnit;
+ 
+ import org.junit.Ignore;
+ import org.junit.Test;
+ 
+ import rx.Observable;
+ import rx.Subscription;
+ import rx.observables.ConnectableObservable;
+ import rx.schedulers.Schedulers;
+ 
+ import static org.junit.Assert.assertEquals;
+ import static org.junit.Assert.assertTrue;
+ 
+ 
+ /**
+  * Test to test some assumptions about RX behaviors
+  */
 -public class PublishRxTest {
++public class PublishRxtest {
+ 
+     @Test
+     public void testPublish() throws InterruptedException {
+ 
+         final int count = 10;
+ 
+         final CountDownLatch latch = new CountDownLatch( count );
+ 
+         final Subscription connectedObservable =
+             Observable.range( 0, count ).doOnNext( integer -> 
latch.countDown() ).subscribeOn( Schedulers.io() )
+                       .subscribe();
+ 
+ 
+         final boolean completed = latch.await( 5, TimeUnit.SECONDS );
+ 
+         assertTrue( "publish1 behaves as expected", completed );
+ 
+         final boolean completedSubscription = 
connectedObservable.isUnsubscribed();
+ 
+         assertTrue( "Subscription complete", completedSubscription );
+     }
+ 
+ 
+     @Test
+     @Ignore("This seems like it should work, yet blocks forever")
+     public void testConnectableObserver() throws InterruptedException {
+ 
+         final int count = 10;
+ 
+         final CountDownLatch latch = new CountDownLatch( count );
+ 
+         final ConnectableObservable<Integer> connectedObservable = 
Observable.range( 0, count ).publish();
+ 
+ 
+         //connect to our latch, which should run on it's own subscription
+         //start our latch running
+         connectedObservable.doOnNext( integer -> latch.countDown() 
).subscribeOn( Schedulers.io() ).subscribe();
+ 
+ 
+         final Observable<Integer> countObservable = 
connectedObservable.subscribeOn( Schedulers.io() ).count();
+ 
+         //start the sequence
+         connectedObservable.connect();
+ 
+ 
+         final boolean completed = latch.await( 5, TimeUnit.SECONDS );
+ 
+         assertTrue( "publish1 behaves as expected", completed );
+ 
+         final int returnedCount = countObservable.toBlocking().last();
+ 
+         assertEquals( "Counts the same", count, returnedCount );
+     }
+ }

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/c77519ea/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
----------------------------------------------------------------------

Reply via email to