You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by to...@apache.org on 2015/07/14 02:06:34 UTC
[2/2] incubator-usergrid git commit: Adds validation and fixes
initialization ordering bugs.
Adds validation and fixes initialization ordering bugs.
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/cc80ba92
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/cc80ba92
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/cc80ba92
Branch: refs/heads/queryfix
Commit: cc80ba9261364b5b7da5c7fffd6bdedc75625ad3
Parents: 35a7be3
Author: Todd Nine <tn...@apigee.com>
Authored: Mon Jul 13 18:06:28 2015 -0600
Committer: Todd Nine <tn...@apigee.com>
Committed: Mon Jul 13 18:06:28 2015 -0600
----------------------------------------------------------------------
.../usergrid/corepersistence/CpEntityManager.java | 11 +++++------
.../corepersistence/CpEntityManagerFactory.java | 10 +++++-----
.../corepersistence/CpRelationManager.java | 17 ++++++++++-------
3 files changed, 20 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc80ba92/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java
index 0bf23e0..b530715 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java
@@ -196,8 +196,6 @@ public class CpEntityManager implements EntityManager {
private final AsyncEventService indexService;
- private final PipelineBuilderFactory pipelineBuilderFactory;
-
private final CollectionService collectionService;
private final ConnectionService connectionService;
@@ -245,7 +243,6 @@ public class CpEntityManager implements EntityManager {
public CpEntityManager( final CassandraService cass, final CounterUtils counterUtils, final AsyncEventService indexService, final ManagerCache managerCache,
final MetricsFactory metricsFactory,
final EntityManagerFig entityManagerFig,
- final PipelineBuilderFactory pipelineBuilderFactory ,
final GraphManagerFactory graphManagerFactory,
final CollectionService collectionService,
final ConnectionService connectionService,
@@ -258,9 +255,11 @@ public class CpEntityManager implements EntityManager {
Preconditions.checkNotNull( managerCache, "managerCache must not be null" );
Preconditions.checkNotNull( applicationId, "applicationId must not be null" );
Preconditions.checkNotNull( indexService, "indexService must not be null" );
- Preconditions.checkNotNull( pipelineBuilderFactory, "pipelineBuilderFactory must not be null" );
+
Preconditions.checkNotNull( graphManagerFactory, "graphManagerFactory must not be null" );
- this.pipelineBuilderFactory = pipelineBuilderFactory;
+ Preconditions.checkNotNull( connectionService, "connectionService must not be null" );
+ Preconditions.checkNotNull( collectionService, "collectionService must not be null" );
+
this.graphManagerFactory = graphManagerFactory;
this.connectionService = connectionService;
this.collectionService = collectionService;
@@ -788,7 +787,7 @@ public class CpEntityManager implements EntityManager {
Preconditions.checkNotNull( entityRef, "entityRef cannot be null" );
CpRelationManager relationManager =
- new CpRelationManager( managerCache, pipelineBuilderFactory, indexService, collectionService, connectionService, this, entityManagerFig, applicationId, entityRef );
+ new CpRelationManager( managerCache, indexService, collectionService, connectionService, this, entityManagerFig, applicationId, entityRef );
return relationManager;
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc80ba92/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
index 81202ec..a679407 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
@@ -120,7 +120,6 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
private final ReIndexService reIndexService;
private final MetricsFactory metricsFactory;
private final AsyncEventService indexService;
- private final PipelineBuilderFactory pipelineBuilderFactory;
private final CollectionService collectionService;
private final ConnectionService connectionService;
private final GraphManagerFactory graphManagerFactory;
@@ -136,13 +135,14 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
this.managerCache = injector.getInstance( ManagerCache.class );
this.metricsFactory = injector.getInstance( MetricsFactory.class );
this.indexService = injector.getInstance( AsyncEventService.class );
- this.pipelineBuilderFactory = injector.getInstance( PipelineBuilderFactory.class );
this.graphManagerFactory = injector.getInstance( GraphManagerFactory.class );
+ this.collectionService = injector.getInstance( CollectionService.class );
+ this.connectionService = injector.getInstance( ConnectionService.class );
+
+ //this line always needs to be last due to the temporary cicular dependency until spring is removed
this.applicationIdCache = injector.getInstance(ApplicationIdCacheFactory.class).getInstance(
getManagementEntityManager() );
- this.collectionService = injector.getInstance( CollectionService.class );
- this.connectionService = injector.getInstance( ConnectionService.class );
}
@@ -199,7 +199,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
private EntityManager _getEntityManager( UUID applicationId ) {
EntityManager em = new CpEntityManager(cassandraService, counterUtils, indexService, managerCache,
- metricsFactory, entityManagerFig, pipelineBuilderFactory, graphManagerFactory, collectionService, connectionService, applicationId );
+ metricsFactory, entityManagerFig, graphManagerFactory, collectionService, connectionService, applicationId );
return em;
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc80ba92/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java
index 2c460a7..d92b97f 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java
@@ -121,13 +121,11 @@ public class CpRelationManager implements RelationManager {
private final AsyncEventService indexService;
- private final PipelineBuilderFactory pipelineBuilderFactory;
-
private final CollectionService collectionService;
private final ConnectionService connectionService;
- public CpRelationManager( final ManagerCache managerCache, final PipelineBuilderFactory pipelineBuilderFactory,
+ public CpRelationManager( final ManagerCache managerCache,
final AsyncEventService indexService, final CollectionService collectionService,
final ConnectionService connectionService, final EntityManager em,
final EntityManagerFig entityManagerFig, final UUID applicationId,
@@ -139,6 +137,9 @@ public class CpRelationManager implements RelationManager {
Assert.notNull( headEntity, "Head entity cannot be null" );
Assert.notNull( headEntity.getUuid(), "Head entity uuid cannot be null" );
Assert.notNull( indexService, "indexService cannot be null" );
+ Assert.notNull( collectionService, "collectionService cannot be null" );
+ Assert.notNull( connectionService, "connectionService cannot be null" );
+
this.entityManagerFig = entityManagerFig;
// TODO: this assert should not be failing
@@ -149,7 +150,6 @@ public class CpRelationManager implements RelationManager {
this.managerCache = managerCache;
this.applicationScope = CpNamingUtils.getApplicationScope( applicationId );
- this.pipelineBuilderFactory = pipelineBuilderFactory;
this.collectionService = collectionService;
this.connectionService = connectionService;
@@ -616,6 +616,7 @@ public class CpRelationManager implements RelationManager {
query.setEntityType( collection.getType() );
final Query toExecute = adjustQuery( query );
+ final Optional<String> queryString = query.isGraphSearch()? Optional.<String>absent(): query.getQl();
final Id ownerId = headEntity.asId();
//wire the callback so we can get each page
@@ -626,7 +627,7 @@ public class CpRelationManager implements RelationManager {
final CollectionSearch search =
new CollectionSearch( applicationScope, ownerId, collectionName, collection.getType(), toExecute.getLimit(),
- toExecute.getQl(), cursor );
+ queryString, cursor );
return collectionService.searchCollection( search );
}
@@ -890,6 +891,8 @@ public class CpRelationManager implements RelationManager {
final Id sourceId = headEntity.asId();
+ final Optional<String> queryString = query.isGraphSearch()? Optional.<String>absent(): query.getQl();
+
if ( query.getResultsLevel() == Level.REFS || query.getResultsLevel() == Level.IDS ) {
@@ -903,7 +906,7 @@ public class CpRelationManager implements RelationManager {
final ConnectionSearch search =
new ConnectionSearch( applicationScope, sourceId, entityType, connection, toExecute.getLimit(),
- toExecute.getQl(), cursor );
+ queryString, cursor );
return connectionService.searchConnectionAsRefs( search );
}
}.next();
@@ -918,7 +921,7 @@ public class CpRelationManager implements RelationManager {
//we need the callback so as we get a new cursor, we execute a new search and re-initialize our builders
final ConnectionSearch search =
new ConnectionSearch( applicationScope, sourceId, entityType, connection, toExecute.getLimit(),
- toExecute.getQl(), cursor );
+ queryString, cursor );
return connectionService.searchConnection( search );
}
}.next();