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/05/20 02:08:20 UTC
[1/8] incubator-usergrid git commit: [USERGRID-572] - ignore
sensitive params from QP in response params
Repository: incubator-usergrid
Updated Branches:
refs/heads/USERGRID-641 bc3cafb00 -> 3a1784f04
[USERGRID-572] - ignore sensitive params from QP in response params
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/072e2d4f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/072e2d4f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/072e2d4f
Branch: refs/heads/USERGRID-641
Commit: 072e2d4f9dd15c1f859ee110b3997f6e8d79c256
Parents: 472ccaf
Author: Senthil Kumar K <se...@gmail.com>
Authored: Wed Apr 22 11:38:38 2015 -0700
Committer: Senthil Kumar K <se...@gmail.com>
Committed: Wed Apr 22 11:38:38 2015 -0700
----------------------------------------------------------------------
.../org/apache/usergrid/rest/ApiResponse.java | 6 +++
.../apache/usergrid/rest/ApiResponseTest.java | 45 ++++++++++++++++++++
2 files changed, 51 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/072e2d4f/stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java b/stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java
index d7dd5f8..93e7f84 100644
--- a/stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java
+++ b/stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java
@@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize.Inclusion;
import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
@@ -85,6 +87,9 @@ public class ApiResponse {
protected Map<String, Object> properties = new TreeMap<String, Object>( String.CASE_INSENSITIVE_ORDER );
+ protected final Collection<String> IGNORE_QP = Arrays.asList("client_id", "client_secret", "password", "username", "access_token",
+ "client_credentials", "fb_access_token", "fq_access_token", "ping_access_token", "token");
+
@Autowired
protected ServerEnvironmentProperties serverEnvironmentProperties;
@@ -556,6 +561,7 @@ public class ApiResponse {
public void setParams( Map<String, List<String>> params ) {
Map<String, List<String>> q = new LinkedHashMap<String, List<String>>();
for ( String k : params.keySet() ) {
+ if (IGNORE_QP.contains(k.toLowerCase())) continue;
List<String> v = params.get( k );
if ( v != null ) {
q.put( k, new ArrayList<String>( v ) );
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/072e2d4f/stack/rest/src/test/java/org/apache/usergrid/rest/ApiResponseTest.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/ApiResponseTest.java b/stack/rest/src/test/java/org/apache/usergrid/rest/ApiResponseTest.java
new file mode 100644
index 0000000..552feaa
--- /dev/null
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/ApiResponseTest.java
@@ -0,0 +1,45 @@
+/*
+ * 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.rest;
+
+import org.junit.Test;
+
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+public class ApiResponseTest {
+
+ @Test
+ public void testIgnoreQP() {
+ ApiResponse apiResponse = new ApiResponse();
+ Map<String, List<String>> params = new HashMap<String, List<String>>();
+ params.put("access_token", Arrays.asList("YWMtL8AQ-ukcEeS2lHs-P-n8wQAAAU0GaCt_Y0cPWeXMJij4x_fW0w_dTMpUH7I"));
+ params.put("name", Arrays.asList("test"));
+ params.put("username", Arrays.asList("abc"));
+ params.put("password", Arrays.asList("123"));
+ apiResponse.setParams(params);
+ assertNull(apiResponse.getParams().get("password"));
+ assertEquals(apiResponse.getParams().size(), 1);
+ }
+}
[4/8] incubator-usergrid git commit: fix app info name,
issue with doc id parsing by _
Posted by to...@apache.org.
fix app info name, issue with doc id parsing by _
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/f5cb7880
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/f5cb7880
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/f5cb7880
Branch: refs/heads/USERGRID-641
Commit: f5cb7880c672cd01bba95ed97e3c8f7cf7d403eb
Parents: 0d2864a
Author: Shawn Feldman <sf...@apache.org>
Authored: Tue May 12 17:27:12 2015 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Tue May 12 17:27:12 2015 -0700
----------------------------------------------------------------------
.../apache/usergrid/corepersistence/util/CpNamingUtils.java | 8 ++++----
.../usergrid/persistence/index/impl/IndexingUtils.java | 2 +-
.../usergrid/management/cassandra/ManagementServiceImpl.java | 1 +
3 files changed, 6 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/f5cb7880/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java
index e15efe1..b8d410d 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java
@@ -60,11 +60,11 @@ public class CpNamingUtils {
/**
* Information about applications is stored in the management app using these types
*/
- public static final String APPLICATION_INFO = "application-info";
- public static final String APPLICATION_INFOS = "application-infos";
+ public static final String APPLICATION_INFO = "application_info";
+ public static final String APPLICATION_INFOS = "application_infos";
- public static final String DELETED_APPLICATION_INFO = "deleted-application-info";
- public static final String DELETED_APPLICATION_INFOS = "deleted-application-infos";
+ public static final String DELETED_APPLICATION_INFO = "deleted_application_info";
+ public static final String DELETED_APPLICATION_INFOS = "deleted_application_infos";
/**
* The name of the map that holds our entity id->type mapping
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/f5cb7880/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
----------------------------------------------------------------------
diff --git a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
index 800d73b..8b248aa 100644
--- a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
+++ b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
@@ -35,7 +35,7 @@ public class IndexingUtils {
// These are not allowed in document type names: _ . , | #
public static final String FIELD_SEPERATOR = "__";
- public static final String ID_SEPERATOR = "_";
+ public static final String ID_SEPERATOR = "::";
/**
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/f5cb7880/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
index adb8365..ebc1008 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
@@ -540,6 +540,7 @@ public class ManagementServiceImpl implements ManagementService {
organizationEntity = em.create( organizationEntity );
em.addToCollection( organizationEntity, "users", new SimpleEntityRef( User.ENTITY_TYPE, user.getUuid() ) );
+ // em.addToCollection( new SimpleEntityRef( User.ENTITY_TYPE, user.getUuid() ), Schema.COLLECTION_GROUPS, organizationEntity );
writeUserToken( smf.getManagementAppId(), organizationEntity, encryptionService
[6/8] incubator-usergrid git commit: merge
Posted by to...@apache.org.
merge
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/ed8ee9a9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/ed8ee9a9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/ed8ee9a9
Branch: refs/heads/USERGRID-641
Commit: ed8ee9a9a197b00497a1f7b74701368e2b48763b
Parents: 072e2d4 e3ba2b0
Author: Shawn Feldman <sf...@apache.org>
Authored: Wed May 13 10:39:21 2015 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Wed May 13 10:39:21 2015 -0700
----------------------------------------------------------------------
portal/index-template.html | 2 +-
portal/js/data/data-controller.js | 58 +-
portal/js/data/data.html | 36 +-
portal/js/global/ug-service.js | 30 +-
portal/js/login/login-controller.js | 15 +-
.../Usergrid.Notifications/BackgroundTask.cs | 57 +
.../Usergrid.Notifications/Client/PushClient.cs | 12 +-
.../Usergrid.Notifications/MainPage.xaml.cs | 12 +-
.../Usergrid.Notifications/MyBackgroundTask.cs | 18 +
.../Usergrid.Notifications/Package.appxmanifest | 8 +
.../Usergrid.Notifications.csproj | 1 +
.../Usergrid.Notifications.sln | 40 +
.../main/dist/init_instance/init_rest_server.sh | 6 +-
.../main/resources/usergrid-default.properties | 5 +-
stack/core/pom.xml | 58 +-
.../batch/service/JobSchedulerService.java | 28 +-
.../batch/service/SchedulerService.java | 2 +-
.../batch/service/SchedulerServiceImpl.java | 23 +-
.../corepersistence/ApplicationIdCache.java | 51 +
.../ApplicationIdCacheFactory.java | 43 +
.../corepersistence/ApplicationIdCacheFig.java | 43 +
.../corepersistence/ApplicationIdCacheImpl.java | 146 +
.../usergrid/corepersistence/CoreModule.java | 156 +-
.../corepersistence/CpEntityManager.java | 449 +--
.../corepersistence/CpEntityManagerFactory.java | 572 ++--
.../corepersistence/CpManagerCache.java | 65 +-
.../corepersistence/CpQueryProcessor.java | 94 -
.../corepersistence/CpRelationManager.java | 1980 +++---------
.../usergrid/corepersistence/CpSetup.java | 32 +-
.../usergrid/corepersistence/CpWalker.java | 85 +-
.../corepersistence/EntityManagerFig.java | 38 +
.../usergrid/corepersistence/GuiceFactory.java | 75 +-
.../usergrid/corepersistence/ManagerCache.java | 17 +-
.../corepersistence/OrgApplicationCache.java | 67 -
.../OrgApplicationCacheImpl.java | 181 --
.../asyncevents/AsyncEventService.java | 71 +
.../asyncevents/AsyncIndexProvider.java | 124 +
.../asyncevents/EventBuilder.java | 105 +
.../asyncevents/EventBuilderImpl.java | 154 +
.../asyncevents/InMemoryAsyncEventService.java | 116 +
.../asyncevents/SQSAsyncEventService.java | 349 +++
.../events/EntityDeletedHandler.java | 82 -
.../events/EntityVersionCreatedHandler.java | 89 -
.../events/EntityVersionDeletedHandler.java | 106 -
.../corepersistence/index/IndexEntityEvent.java | 75 +
.../index/IndexProcessorFig.java | 89 +
.../corepersistence/index/IndexService.java | 85 +
.../corepersistence/index/IndexServiceImpl.java | 229 ++
.../corepersistence/index/ReIndexAction.java | 33 +
.../corepersistence/index/ReIndexService.java | 89 +
.../index/ReIndexServiceImpl.java | 130 +
.../migration/AppInfoMigrationPlugin.java | 292 ++
.../migration/AppInfoVersions.java | 40 +
.../migration/CoreDataVersions.java | 45 +
.../migration/CoreMigration.java | 53 +
.../migration/CoreMigrationPlugin.java | 64 +
.../migration/EntityDataMigration.java | 147 -
.../migration/EntityTypeMappingMigration.java | 69 +-
.../migration/GraphShardVersionMigration.java | 152 -
.../migration/MigrationModuleVersionPlugin.java | 145 +
.../migration/MigrationSystemVersions.java | 43 +
.../corepersistence/migration/Versions.java | 14 -
.../corepersistence/pipeline/Pipeline.java | 121 +
.../pipeline/PipelineBuilderFactory.java | 39 +
.../pipeline/PipelineContext.java | 82 +
.../pipeline/PipelineDiagram.jpg | Bin 0 -> 183035 bytes
.../pipeline/PipelineModule.java | 58 +
.../pipeline/PipelineOperation.java | 39 +
.../usergrid/corepersistence/pipeline/README.md | 187 ++
.../cursor/AbstractCursorSerializer.java | 62 +
.../pipeline/cursor/CursorDiagram.jpg | Bin 0 -> 167390 bytes
.../pipeline/cursor/CursorParseException.java | 30 +
.../pipeline/cursor/CursorSerializer.java | 42 +
.../pipeline/cursor/CursorSerializerUtil.java | 43 +
.../pipeline/cursor/RequestCursor.java | 111 +
.../pipeline/cursor/ResponseCursor.java | 110 +
.../pipeline/read/AbstractFilter.java | 45 +
.../pipeline/read/AbstractPathFilter.java | 109 +
.../pipeline/read/Collector.java | 38 +
.../pipeline/read/CollectorFactory.java | 38 +
.../corepersistence/pipeline/read/EdgePath.java | 79 +
.../corepersistence/pipeline/read/Filter.java | 31 +
.../pipeline/read/FilterFactory.java | 143 +
.../pipeline/read/FilterResult.java | 56 +
.../pipeline/read/ReadDiagram.jpg | Bin 0 -> 818565 bytes
.../pipeline/read/ReadFilterFactoryImpl.java | 136 +
.../pipeline/read/ReadPipelineBuilder.java | 104 +
.../pipeline/read/ReadPipelineBuilderImpl.java | 296 ++
.../pipeline/read/ResultsPage.java | 67 +
.../read/collect/AbstractCollector.java | 46 +
.../pipeline/read/collect/CollectDiagram.jpg | Bin 0 -> 98007 bytes
.../pipeline/read/collect/EntityFilter.java | 68 +
.../read/collect/IdCursorSerializer.java | 41 +
.../read/collect/ResultsPageCollector.java | 80 +
.../AbstractElasticSearchFilter.java | 171 +
.../pipeline/read/elasticsearch/Candidate.java | 55 +
.../elasticsearch/CandidateEntityFilter.java | 234 ++
.../read/elasticsearch/CandidateIdFilter.java | 201 ++
.../ElasticSearchCollectionFilter.java | 77 +
.../ElasticSearchConnectionFilter.java | 73 +
.../ElasticsearchCursorSerializer.java | 42 +
.../read/elasticsearch/Elasticsearchdiagram.jpg | Bin 0 -> 316655 bytes
.../graph/AbstractReadGraphEdgeByIdFilter.java | 82 +
.../read/graph/AbstractReadGraphFilter.java | 147 +
.../read/graph/EdgeCursorSerializer.java | 42 +
.../pipeline/read/graph/EntityIdFilter.java | 54 +
.../pipeline/read/graph/EntityLoadFilter.java | 155 +
.../pipeline/read/graph/GraphDiagram.jpg | Bin 0 -> 347711 bytes
.../graph/ReadGraphCollectionByIdFilter.java | 49 +
.../read/graph/ReadGraphCollectionFilter.java | 53 +
.../graph/ReadGraphConnectionByIdFilter.java | 50 +
.../graph/ReadGraphConnectionByTypeFilter.java | 100 +
.../read/graph/ReadGraphConnectionFilter.java | 53 +
.../results/CollectionRefsVerifier.java | 44 -
.../CollectionResultsLoaderFactoryImpl.java | 60 -
.../results/ConnectionRefsVerifier.java | 61 -
.../ConnectionResultsLoaderFactoryImpl.java | 65 -
.../results/ElasticSearchQueryExecutor.java | 216 --
.../corepersistence/results/EntityVerifier.java | 127 -
.../results/FilteringLoader.java | 254 --
.../corepersistence/results/IdsVerifier.java | 46 -
.../results/ObservableQueryExecutor.java | 135 +
.../corepersistence/results/ResultsLoader.java | 43 -
.../results/ResultsLoaderFactory.java | 42 -
.../results/ResultsVerifier.java | 52 -
.../results/VersionVerifier.java | 85 -
.../rx/AllEntitiesInSystemObservable.java | 101 -
.../rx/ApplicationObservable.java | 128 -
.../rx/EdgesFromSourceObservable.java | 63 -
.../rx/EdgesToTargetObservable.java | 63 -
.../corepersistence/rx/TargetIdObservable.java | 66 -
.../rx/impl/AbstractGraphVisitorImpl.java | 65 +
.../rx/impl/AllApplicationsObservable.java | 43 +
.../rx/impl/AllApplicationsObservableImpl.java | 134 +
.../rx/impl/AllEntitiesInSystemImpl.java | 53 +
.../rx/impl/AllEntityIdsObservable.java | 52 +
.../rx/impl/AllEntityIdsObservableImpl.java | 92 +
.../rx/impl/AllNodesInGraphImpl.java | 54 +
.../corepersistence/rx/impl/EdgeScope.java | 51 +
.../corepersistence/util/CpEntityMapUtils.java | 19 +-
.../corepersistence/util/CpNamingUtils.java | 236 +-
.../util/SerializableMapper.java | 91 +
.../usergrid/exception/ConflictException.java | 36 +
.../main/java/org/apache/usergrid/mq/Query.java | 2 +-
.../org/apache/usergrid/mq/QueryProcessor.java | 210 +-
.../apache/usergrid/mq/cassandra/QueuesCF.java | 5 -
.../usergrid/persistence/ConnectionRef.java | 4 +-
.../usergrid/persistence/CounterQuery.java | 2 +-
.../usergrid/persistence/EntityManager.java | 49 +-
.../persistence/EntityManagerFactory.java | 134 +-
.../persistence/EntityPropertyComparator.java | 56 -
.../persistence/GuiceAdapterBeanFactory.java | 114 +
.../persistence/MultiQueryIterator.java | 4 +-
.../persistence/ObservableIterator.java | 1 +
.../persistence/PagingResultsIterator.java | 4 +-
.../apache/usergrid/persistence/PathQuery.java | 6 +-
.../usergrid/persistence/PersistenceModule.java | 66 +
.../org/apache/usergrid/persistence/Query.java | 890 ++++++
.../apache/usergrid/persistence/QueryUtils.java | 61 +-
.../usergrid/persistence/RelationManager.java | 17 +-
.../apache/usergrid/persistence/Results.java | 81 +-
.../org/apache/usergrid/persistence/Schema.java | 5 +-
.../persistence/cassandra/ApplicationCF.java | 37 -
.../cassandra/CassandraPersistenceUtils.java | 122 +-
.../persistence/cassandra/CassandraService.java | 304 +-
.../cassandra/ConnectionRefImpl.java | 24 +-
.../persistence/cassandra/CursorCache.java | 137 -
.../cassandra/EntityManagerFactoryImpl.java | 485 ---
.../cassandra/EntityManagerImpl.java | 2935 ------------------
.../cassandra/EntityValueSerializer.java | 53 -
.../persistence/cassandra/GeoIndexManager.java | 330 --
.../persistence/cassandra/IndexUpdate.java | 451 ---
.../persistence/cassandra/QueryProcessor.java | 60 -
.../cassandra/QueryProcessorImpl.java | 727 -----
.../cassandra/RelationManagerImpl.java | 2298 --------------
.../persistence/cassandra/SetupImpl.java | 170 -
.../cassandra/SimpleIndexBucketLocatorImpl.java | 122 -
.../cassandra/index/ConnectedIndexScanner.java | 280 --
.../cassandra/index/IndexBucketScanner.java | 238 --
.../index/IndexMultiBucketSetLoader.java | 139 -
.../cassandra/index/IndexScanner.java | 40 -
.../cassandra/index/NoOpIndexScanner.java | 95 -
.../DuplicateUniquePropertyExistsException.java | 2 +-
.../persistence/geo/CollectionGeoSearch.java | 68 -
.../persistence/geo/ConnectionGeoSearch.java | 67 -
.../persistence/geo/EntityLocationRef.java | 227 --
.../EntityLocationRefDistanceComparator.java | 78 -
.../persistence/geo/GeoIndexSearcher.java | 370 ---
.../persistence/geo/GeocellManager.java | 195 --
.../usergrid/persistence/geo/GeocellUtils.java | 543 ----
.../geo/comparator/DoubleTupleComparator.java | 39 -
.../persistence/geo/model/BoundingBox.java | 74 -
.../persistence/geo/model/CostFunction.java | 36 -
.../geo/model/DefaultCostFunction.java | 37 -
.../usergrid/persistence/geo/model/Point.java | 61 -
.../usergrid/persistence/geo/model/Tuple.java | 40 -
.../usergrid/persistence/query/ir/AllNode.java | 82 -
.../usergrid/persistence/query/ir/AndNode.java | 44 -
.../persistence/query/ir/BooleanNode.java | 65 -
.../query/ir/EmailIdentifierNode.java | 58 -
.../query/ir/NameIdentifierNode.java | 56 -
.../persistence/query/ir/NodeVisitor.java | 79 -
.../usergrid/persistence/query/ir/NotNode.java | 75 -
.../usergrid/persistence/query/ir/OrNode.java | 53 -
.../persistence/query/ir/OrderByNode.java | 105 -
.../persistence/query/ir/QueryNode.java | 41 -
.../persistence/query/ir/QuerySlice.java | 345 --
.../persistence/query/ir/SearchVisitor.java | 270 --
.../persistence/query/ir/SliceNode.java | 180 --
.../query/ir/UuidIdentifierNode.java | 60 -
.../persistence/query/ir/WithinNode.java | 109 -
.../query/ir/result/AbstractScanColumn.java | 83 -
.../result/CollectionResultsLoaderFactory.java | 41 -
.../ir/result/ConnectionIndexSliceParser.java | 87 -
.../query/ir/result/ConnectionRefLoader.java | 81 -
.../result/ConnectionResultsLoaderFactory.java | 50 -
.../ir/result/ConnectionTypesIterator.java | 190 --
.../query/ir/result/EmptyIterator.java | 63 -
.../query/ir/result/EntityRefLoader.java | 51 -
.../query/ir/result/EntityResultsLoader.java | 47 -
.../query/ir/result/GeoIterator.java | 351 ---
.../persistence/query/ir/result/IDLoader.java | 40 -
.../query/ir/result/IntersectionIterator.java | 170 -
.../query/ir/result/MergeIterator.java | 150 -
.../query/ir/result/MultiIterator.java | 55 -
.../query/ir/result/OrderByIterator.java | 250 --
.../query/ir/result/ResultIterator.java | 44 -
.../query/ir/result/ResultsLoader.java | 30 -
.../query/ir/result/ResultsLoaderFactory.java | 37 -
.../persistence/query/ir/result/ScanColumn.java | 32 -
.../query/ir/result/ScanColumnTransformer.java | 39 -
.../ir/result/SecondaryIndexSliceParser.java | 61 -
.../query/ir/result/SliceIterator.java | 242 --
.../query/ir/result/SliceParser.java | 32 -
.../query/ir/result/StaticIdIterator.java | 82 -
.../query/ir/result/SubtractionIterator.java | 113 -
.../query/ir/result/UUIDIndexSliceParser.java | 47 -
.../query/ir/result/UnionIterator.java | 264 --
.../main/resources/usergrid-core-context.xml | 32 +-
.../java/org/apache/usergrid/Application.java | 2 +-
.../org/apache/usergrid/CoreApplication.java | 40 +-
.../java/org/apache/usergrid/CoreITSetup.java | 10 +-
.../org/apache/usergrid/CoreITSetupImpl.java | 69 +-
.../org/apache/usergrid/TestEntityIndex.java | 27 +
.../usergrid/batch/job/SchedulerRuntime8IT.java | 8 +-
.../corepersistence/StaleIndexCleanupTest.java | 124 +-
.../corepersistence/TestIndexModule.java | 43 +
.../index/AsyncIndexServiceTest.java | 199 ++
.../index/InMemoryAsycIndexServiceTest.java | 65 +
.../corepersistence/index/IndexServiceTest.java | 328 ++
.../corepersistence/index/PublishRxTest.java | 95 +
.../index/SQSAsyncEventServiceTest.java | 84 +
.../migration/EntityDataMigrationIT.java | 262 --
.../migration/EntityTypeMappingMigrationIT.java | 183 +-
.../migration/GraphShardVersionMigrationIT.java | 226 --
.../MigrationModuleVersionPluginTest.java | 259 ++
.../migration/MigrationTestRule.java | 99 -
.../migration/TestProgressObserver.java | 71 -
.../pipeline/cursor/CursorTest.java | 109 +
.../rx/AllEntitiesInSystemObservableIT.java | 71 +-
.../rx/ApplicationObservableTestIT.java | 17 +-
.../rx/EdgesFromSourceObservableIT.java | 19 +-
.../rx/EdgesToTargetObservableIT.java | 59 +-
.../rx/TargetIdObservableTestIT.java | 7 +-
.../java/org/apache/usergrid/mq/MessagesIT.java | 6 +
.../usergrid/persistence/CollectionIT.java | 388 +--
.../apache/usergrid/persistence/CounterIT.java | 11 +-
.../usergrid/persistence/CountingMutatorIT.java | 6 +-
.../persistence/EntityConnectionsIT.java | 36 +-
.../usergrid/persistence/EntityManagerIT.java | 66 +-
.../EntityPropertyComparatorTest.java | 222 --
.../org/apache/usergrid/persistence/GeoIT.java | 170 +-
.../persistence/GeoQueryBooleanTest.java | 28 +-
.../apache/usergrid/persistence/IndexIT.java | 62 +-
.../usergrid/persistence/LargeEntityIT.java | 3 +-
.../usergrid/persistence/PathQueryIT.java | 33 +-
.../PerformanceEntityRebuildIndexTest.java | 61 +-
.../usergrid/persistence/PermissionsIT.java | 6 +-
.../apache/usergrid/persistence/QueryTest.java | 328 --
.../cassandra/EntityManagerFactoryImplIT.java | 126 +-
.../cassandra/QueryProcessorTest.java | 822 -----
.../SimpleIndexShardLocatorImplTest.java | 177 --
...EntityLocationRefDistanceComparatorTest.java | 104 -
.../persistence/query/CollectionIoHelper.java | 3 +-
.../persistence/query/ConnectionHelper.java | 4 +-
.../query/IntersectionTransitivePagingIT.java | 7 +-
.../query/IntersectionUnionPagingIT.java | 5 +-
.../usergrid/persistence/query/IoHelper.java | 2 +-
.../persistence/query/IteratingQueryIT.java | 165 +-
.../persistence/query/NotSubPropertyIT.java | 8 +-
.../query/OrderByDiscardPagesPagingIT.java | 164 -
.../query/ir/result/AbstractScanColumnTest.java | 101 -
.../query/ir/result/InOrderIterator.java | 132 -
.../ir/result/IntersectionIteratorTest.java | 308 --
.../query/ir/result/IteratorHelper.java | 34 -
.../ir/result/SubtractionIteratorTest.java | 182 --
.../query/ir/result/UnionIteratorTest.java | 468 ---
.../apache/usergrid/utils/EdgeTestUtils.java | 50 +
stack/core/src/test/resources/log4j.properties | 4 +
.../resources/usergrid-custom-test.properties | 7 +-
.../resources/usergrid-properties-context.xml | 40 -
.../usergrid-scheduler-test.properties | 2 +
.../test/resources/usergrid-test-context.xml | 1 +
stack/corepersistence/collection/pom.xml | 14 +-
.../persistence/collection/CollectionScope.java | 45 -
.../collection/EntityCollectionManager.java | 67 +-
.../EntityCollectionManagerFactory.java | 36 +-
.../collection/EntityCollectionManagerSync.java | 49 -
.../persistence/collection/EntitySet.java | 14 +-
.../persistence/collection/FieldSet.java | 2 +-
.../persistence/collection/MvccEntity.java | 5 +-
.../persistence/collection/MvccLogEntry.java | 1 +
.../cache/CachedEntityCollectionManager.java | 29 +-
.../collection/event/EntityDeleted.java | 45 -
.../collection/event/EntityVersionCreated.java | 38 -
.../collection/event/EntityVersionDeleted.java | 45 -
.../exception/CollectionRuntimeException.java | 30 +-
.../exception/EntityTooLargeException.java | 6 +-
.../exception/WriteCommitException.java | 11 +-
.../WriteOptimisticVerifyException.java | 11 +-
.../exception/WriteStartException.java | 11 +-
.../exception/WriteUniqueVerifyException.java | 6 +-
.../collection/guice/CollectionModule.java | 63 +-
.../guice/CollectionTaskExecutor.java | 4 +-
.../persistence/collection/guice/Write.java | 17 -
.../collection/guice/WriteUpdate.java | 17 -
.../collection/impl/CollectionScopeImpl.java | 102 -
.../EntityCollectionManagerFactoryImpl.java | 124 +-
.../impl/EntityCollectionManagerImpl.java | 485 ++-
.../impl/EntityCollectionManagerSyncImpl.java | 71 -
.../collection/impl/EntityDeletedTask.java | 147 -
.../impl/EntityVersionCleanupTask.java | 248 --
.../impl/EntityVersionCreatedTask.java | 122 -
.../impl/EntityVersionTaskFactory.java | 65 -
.../mvcc/MvccEntitySerializationStrategy.java | 102 -
.../mvcc/MvccLogEntrySerializationStrategy.java | 80 -
.../collection/mvcc/changelog/ChangeLog.java | 2 -
.../mvcc/entity/MvccValidationUtils.java | 16 -
.../mvcc/entity/impl/MvccEntityDeleteEvent.java | 8 +-
.../mvcc/entity/impl/MvccEntityEvent.java | 11 +-
.../mvcc/entity/impl/MvccEntityWriteEvent.java | 6 +-
.../mvcc/stage/CollectionIoEvent.java | 9 +-
.../mvcc/stage/EntityUpdateEvent.java | 34 -
.../mvcc/stage/delete/MarkCommit.java | 15 +-
.../collection/mvcc/stage/delete/MarkStart.java | 20 +-
.../mvcc/stage/delete/UniqueCleanup.java | 133 +
.../mvcc/stage/delete/VersionCompact.java | 125 +
.../mvcc/stage/write/RollbackAction.java | 14 +-
.../mvcc/stage/write/WriteCommit.java | 32 +-
.../mvcc/stage/write/WriteOptimisticVerify.java | 12 +-
.../collection/mvcc/stage/write/WriteStart.java | 22 +-
.../mvcc/stage/write/WriteUniqueVerify.java | 45 +-
.../collection/serialization/EntityRepair.java | 38 -
.../MvccEntitySerializationStrategy.java | 117 +
.../MvccLogEntrySerializationStrategy.java | 96 +
.../serialization/OptimisticUpdate.java | 23 -
.../serialization/SerializationFig.java | 30 +-
.../collection/serialization/UniqueValue.java | 1 -
.../UniqueValueSerializationStrategy.java | 65 +-
.../serialization/UniqueValueSet.java | 1 +
.../impl/CollectionDataVersions.java | 54 +
.../serialization/impl/EntityRepairImpl.java | 149 -
.../serialization/impl/EntitySetImpl.java | 10 +-
.../impl/EntityVersionSerializer.java | 11 +-
.../serialization/impl/FieldSerializer.java | 118 -
.../serialization/impl/LogEntryIterator.java | 114 -
.../impl/MinMaxLogEntryIterator.java | 121 +
.../serialization/impl/MutableFieldSet.java | 6 +-
.../MvccEntitySerializationStrategyImpl.java | 177 +-
...vccEntitySerializationStrategyProxyImpl.java | 163 +-
.../MvccEntitySerializationStrategyV1Impl.java | 9 +-
.../MvccEntitySerializationStrategyV2Impl.java | 8 +-
.../MvccEntitySerializationStrategyV3Impl.java | 551 ++++
.../MvccLogEntrySerializationProxyImpl.java | 163 +
.../MvccLogEntrySerializationStrategyImpl.java | 157 +-
...MvccLogEntrySerializationStrategyV1Impl.java | 118 +
...MvccLogEntrySerializationStrategyV2Impl.java | 106 +
.../serialization/impl/SerializationModule.java | 170 +-
.../serialization/impl/TypeField.java | 43 +
.../serialization/impl/UniqueFieldEntry.java | 60 +
.../impl/UniqueFieldEntrySerializer.java | 138 +
.../impl/UniqueFieldRowKeySerializer.java | 122 +
.../impl/UniqueTypeFieldRowKeySerializer.java | 60 +
.../serialization/impl/UniqueValueImpl.java | 5 +-
.../UniqueValueSerializationStrategyImpl.java | 322 +-
...iqueValueSerializationStrategyProxyImpl.java | 179 ++
.../UniqueValueSerializationStrategyV1Impl.java | 159 +
.../UniqueValueSerializationStrategyV2Impl.java | 139 +
.../impl/migration/CollectionMigration.java | 53 +
.../migration/CollectionMigrationPlugin.java | 68 +
.../impl/migration/EntityIdScope.java | 79 +
.../migration/MvccEntityDataMigrationImpl.java | 270 ++
.../serialization/impl/util/Inflector.java | 370 +++
.../impl/util/LegacyScopeUtils.java | 51 +
.../collection/util/EntityUtils.java | 71 -
.../collection/ApplicationContextImplTest.java | 33 +
.../collection/CollectionContextImplTest.java | 53 -
.../EntityCollectionManagerFactoryTest.java | 9 +-
.../collection/EntityCollectionManagerIT.java | 319 +-
.../EntityCollectionManagerStressTest.java | 14 +-
.../EntityCollectionManagerSyncIT.java | 193 --
.../collection/guice/TestCollectionModule.java | 22 +-
.../impl/EntityVersionCleanupTaskTest.java | 808 -----
.../impl/EntityVersionCreatedTaskTest.java | 244 --
.../mvcc/stage/AbstractEntityStageTest.java | 6 +-
.../mvcc/stage/AbstractIdStageTest.java | 4 +-
.../mvcc/stage/AbstractMvccEntityStageTest.java | 6 +-
.../mvcc/stage/TestEntityGenerator.java | 2 +-
.../mvcc/stage/delete/MarkCommitTest.java | 14 +-
.../mvcc/stage/delete/MarkStartTest.java | 6 +-
.../mvcc/stage/delete/UniqueCleanupTest.java | 712 +++++
.../mvcc/stage/delete/VersionCompactTest.java | 238 ++
.../mvcc/stage/write/FieldSerializerTest.java | 52 -
.../write/UniqueFieldRowKeySerializerTest.java | 52 +
...niqueValueSerializationStrategyImplTest.java | 185 --
.../mvcc/stage/write/WriteCommitTest.java | 12 +-
.../stage/write/WriteOptimisticVerifyTest.java | 35 +-
.../mvcc/stage/write/WriteStartTest.java | 26 +-
.../mvcc/stage/write/WriteUniqueVerifyIT.java | 34 +-
.../mvcc/stage/write/WriteUniqueVerifyTest.java | 13 +-
.../persistence/collection/rx/ParallelTest.java | 10 +-
.../serialization/EntityRepairImplTest.java | 147 -
.../impl/LogEntryIteratorTest.java | 131 -
.../impl/MinMaxLogEntryIteratorTest.java | 131 +
...MvccEntitySerializationStrategyImplTest.java | 167 +-
...cEntitySerializationStrategyProxyV1Test.java | 85 -
...ntitySerializationStrategyProxyV1_3Test.java | 81 +
...cEntitySerializationStrategyProxyV2Test.java | 83 -
...ntitySerializationStrategyProxyV2_3Test.java | 82 +
...ccEntitySerializationStrategyV1ImplTest.java | 78 +-
...ccEntitySerializationStrategyV2ImplTest.java | 73 +-
.../MvccEntitySerializationStrategyV2Test.java | 27 +-
...ccEntitySerializationStrategyV3ImplTest.java | 70 +
.../impl/MvccLESSTransientTest.java | 27 +-
...ccLogEntrySerializationStrategyImplTest.java | 235 +-
...EntrySerializationStrategyProxyImplTest.java | 90 +
...LogEntrySerializationStrategyV1ImplTest.java | 55 +
...LogEntrySerializationStrategyV2ImplTest.java | 53 +
.../impl/ScopedRowKeySerializerTest.java | 2 +-
.../impl/SerializationComparison.java | 4 +-
.../impl/SettingsValidationTest.java | 1 -
.../impl/UniqueFieldEntrySerializerTest.java | 108 +
...niqueValueSerializationStrategyImplTest.java | 344 ++
...ValueSerializationStrategyProxyImplTest.java | 100 +
...queValueSerializationStrategyV1ImplTest.java | 57 +
...queValueSerializationStrategyV2ImplTest.java | 58 +
...ctMvccEntityDataMigrationV1ToV3ImplTest.java | 214 ++
.../MvccEntityDataMigrationV1ToV3ImplTest.java | 99 +
.../MvccEntityDataMigrationV2ToV3ImplTest.java | 99 +
.../collection/util/EntityHelper.java | 1 -
.../collection/util/InvalidEntityGenerator.java | 1 +
.../collection/util/LogEntryMock.java | 116 +-
.../collection/util/UniqueValueEntryMock.java | 150 +
.../collection/util/VersionGenerator.java | 55 +
.../src/test/resources/log4j.properties | 1 +
stack/corepersistence/common/pom.xml | 21 +-
.../usergrid/persistence/core/CPManager.java | 28 +
.../persistence/core/astyanax/CassandraFig.java | 3 -
.../astyanax/DynamicCompositeParserImpl.java | 81 +
.../core/astyanax/FieldBufferBuilder.java | 15 +
.../core/astyanax/FieldBufferParser.java | 13 +
.../astyanax/MultiKeyColumnNameIterator.java | 4 +-
.../core/astyanax/MultiRowColumnIterator.java | 12 +-
.../core/executor/TaskExecutorFactory.java | 95 +
.../persistence/core/future/BetterFuture.java | 68 -
.../core/future/FutureObservable.java | 44 +
.../persistence/core/guice/CommonModule.java | 27 +-
.../persistence/core/guice/CurrentImpl.java | 42 -
.../persistence/core/guice/PreviousImpl.java | 42 -
.../persistence/core/guice/ProxyImpl.java | 42 -
.../core/hystrix/HystrixCassandra.java | 94 -
.../core/metrics/MetricsFactory.java | 2 +-
.../core/metrics/MetricsFactoryImpl.java | 44 +-
.../core/metrics/ObservableTimer.java | 72 +
.../migration/data/AbstractMigrationPlugin.java | 128 +
.../core/migration/data/DataMigration.java | 97 +-
.../migration/data/DataMigrationManager.java | 18 +-
.../data/DataMigrationManagerImpl.java | 237 +-
.../migration/data/MigrationDataProvider.java | 43 +
.../core/migration/data/MigrationInfoCache.java | 52 +
.../migration/data/MigrationInfoCacheImpl.java | 84 +
.../data/MigrationInfoSerialization.java | 28 +-
.../data/MigrationInfoSerializationImpl.java | 67 +-
.../core/migration/data/MigrationPlugin.java | 56 +
.../migration/data/MigrationRelationship.java | 117 +
.../core/migration/data/PluginPhase.java | 42 +
.../core/migration/data/ProgressObserver.java | 63 +
.../core/migration/data/VersionedData.java | 38 +
.../migration/data/VersionedMigrationSet.java | 164 +
.../core/migration/schema/Migration.java | 2 +-
.../persistence/core/rx/ObservableIterator.java | 2 +
.../persistence/core/rx/OrderedMerge.java | 1 -
.../persistence/core/rx/RxSchedulerFig.java | 60 +
.../persistence/core/rx/RxTaskScheduler.java | 38 +
.../core/rx/RxTaskSchedulerImpl.java | 131 +
.../core/scope/ApplicationScope.java | 9 +-
.../core/scope/ApplicationScopeImpl.java | 24 +-
.../core/task/NamedTaskExecutorImpl.java | 286 --
.../usergrid/persistence/core/task/Task.java | 48 -
.../persistence/core/task/TaskExecutor.java | 41 -
.../persistence/core/util/StringUtils.java | 34 +
.../MultiKeyColumnNameIteratorTest.java | 187 +-
.../astyanax/MultiRowColumnIteratorTest.java | 50 +-
.../persistence/core/astyanax/TestUtils.java | 2 +-
.../persistence/core/aws/NoAWSCredsRule.java | 98 +
.../core/guice/DataMigrationResetRule.java | 88 +
.../core/guice/MaxMigrationModule.java | 39 -
.../core/guice/MaxMigrationVersion.java | 40 -
.../core/guice/MigrationManagerRule.java | 7 +
.../core/guice/TestCommonModule.java | 1 +
.../persistence/core/guice/TestModule.java | 5 +-
.../data/DataMigrationManagerImplTest.java | 350 ++-
.../data/MigrationInfoSerializationTest.java | 32 +-
.../data/TestMigrationDataProvider.java | 61 +
.../migration/data/TestProgressObserver.java | 89 +
.../data/VersionedMigrationSetTest.java | 194 ++
.../core/task/NamedTaskExecutorImplTest.java | 271 --
.../persistence/core/util/IdGenerator.java | 51 +
.../apache/usergrid/persistence/graph/Edge.java | 4 +
.../usergrid/persistence/graph/GraphFig.java | 26 +-
.../persistence/graph/GraphManager.java | 36 +-
.../persistence/graph/GraphManagerFactory.java | 4 +-
.../usergrid/persistence/graph/MarkedEdge.java | 8 +-
.../persistence/graph/SearchByEdge.java | 6 +
.../persistence/graph/SearchByEdgeType.java | 8 +-
.../persistence/graph/guice/GraphModule.java | 115 +-
.../graph/impl/GraphManagerImpl.java | 652 ++--
.../persistence/graph/impl/SimpleEdge.java | 16 +-
.../graph/impl/SimpleMarkedEdge.java | 3 +
.../graph/impl/SimpleSearchByEdge.java | 37 +-
.../graph/impl/SimpleSearchByEdgeType.java | 51 +-
.../graph/impl/SimpleSearchByIdType.java | 12 +-
.../graph/impl/stage/EdgeDeleteListener.java | 2 +-
.../impl/stage/EdgeDeleteListenerImpl.java | 31 +-
.../graph/impl/stage/EdgeDeleteRepairImpl.java | 12 +-
.../graph/impl/stage/EdgeMetaRepair.java | 6 +-
.../graph/impl/stage/EdgeMetaRepairImpl.java | 195 +-
.../graph/impl/stage/NodeDeleteListener.java | 2 +-
.../impl/stage/NodeDeleteListenerImpl.java | 26 +-
.../EdgeMetadataSerialization.java | 3 +-
.../graph/serialization/EdgesObservable.java | 71 +
.../graph/serialization/TargetIdObservable.java | 38 +
.../EdgeMetadataSerializationProxyImpl.java | 161 +-
.../impl/EdgeMetadataSerializationV1Impl.java | 6 +
.../impl/EdgeMetadataSerializationV2Impl.java | 6 +
.../serialization/impl/EdgesObservableImpl.java | 129 +
.../serialization/impl/GraphDataVersions.java | 43 +
.../impl/GraphManagerFactoryImpl.java | 95 +
.../impl/NodeSerializationImpl.java | 36 +-
.../impl/TargetIdObservableImpl.java | 72 +
.../impl/migration/EdgeDataMigrationImpl.java | 136 +
.../impl/migration/GraphMigration.java | 53 +
.../impl/migration/GraphMigrationPlugin.java | 69 +
.../serialization/impl/migration/GraphNode.java | 39 +
.../impl/shard/DirectedEdgeMeta.java | 9 +-
.../shard/count/NodeShardApproximationImpl.java | 13 +-
.../NodeShardCounterSerializationImpl.java | 25 +-
.../shard/impl/NodeShardAllocationImpl.java | 16 +-
.../shard/impl/ShardGroupCompactionImpl.java | 154 +-
.../graph/CommittedGraphManagerIT.java | 135 -
.../persistence/graph/GraphManagerIT.java | 724 ++++-
.../persistence/graph/GraphManagerLoadTest.java | 19 +-
.../graph/GraphManagerShardConsistencyIT.java | 15 +-
.../graph/GraphManagerShardingIT.java | 13 +-
.../graph/GraphManagerStressTest.java | 19 +-
.../usergrid/persistence/graph/SimpleTest.java | 12 +-
.../graph/StorageGraphManagerIT.java | 240 --
.../graph/guice/TestGraphModule.java | 27 +-
.../graph/impl/EdgeDeleteListenerTest.java | 12 +-
.../graph/impl/NodeDeleteListenerTest.java | 10 +-
.../graph/impl/stage/EdgeDeleteRepairTest.java | 13 +-
.../graph/impl/stage/EdgeMetaRepairTest.java | 30 +-
.../EdgeMetaDataSerializationProxyV1Test.java | 15 +-
.../EdgeMetaDataSerializationProxyV2Test.java | 23 +-
.../EdgeMetaDataSerializationV1Test.java | 7 +-
.../EdgeMetaDataSerializationV2Test.java | 7 +-
.../EdgeMetadataSerializationTest.java | 39 +-
.../EdgeSerializationChopTest.java | 7 +-
.../serialization/EdgeSerializationTest.java | 21 +-
.../serialization/NodeSerializationTest.java | 15 +-
.../migration/EdgeDataMigrationImplTest.java | 177 ++
.../impl/shard/EdgeShardSerializationTest.java | 7 +-
.../impl/shard/NodeShardAllocationTest.java | 27 +-
.../impl/shard/NodeShardCacheTest.java | 7 +-
.../impl/shard/ShardGroupCompactionTest.java | 11 +-
.../shard/count/NodeShardApproximationTest.java | 9 +-
.../NodeShardCounterSerializationTest.java | 6 +-
.../shard/impl/ShardEntryGroupIteratorTest.java | 15 +-
...rceDirectedEdgeDescendingComparatorTest.java | 23 +-
...getDirectedEdgeDescendingComparatorTest.java | 23 +-
.../graph/test/util/EdgeTestUtils.java | 63 +-
.../usergrid/persistence/map/MapManager.java | 25 +-
.../persistence/map/guice/MapModule.java | 8 +-
.../persistence/map/guice/TestMapModule.java | 3 +-
stack/corepersistence/model/pom.xml | 1 -
.../persistence/model/entity/Entity.java | 23 +-
.../persistence/model/entity/EntityMap.java | 80 +
.../model/entity/EntityToMapConverter.java | 160 +
.../usergrid/persistence/model/entity/Id.java | 3 +
.../model/entity/MapToEntityConverter.java | 203 ++
.../persistence/model/entity/SimpleId.java | 36 +-
.../persistence/model/field/AbstractField.java | 8 +
.../persistence/model/field/ListField.java | 8 +-
.../persistence/model/field/StringField.java | 20 +
.../persistence/model/util/EntityUtils.java | 72 +
stack/corepersistence/pom.xml | 38 +-
stack/corepersistence/queryindex/pom.xml | 63 +-
.../index/query/tree/CpQueryFilter.g | 20 +-
.../persistence/index/AliasedEntityIndex.java | 13 +-
.../index/ApplicationEntityIndex.java | 53 +
.../persistence/index/CandidateResult.java | 84 +
.../persistence/index/CandidateResults.java | 103 +
.../usergrid/persistence/index/EntityIndex.java | 75 +-
.../persistence/index/EntityIndexBatch.java | 28 +-
.../persistence/index/EntityIndexFactory.java | 11 +-
.../persistence/index/IndexBatchBuffer.java | 36 -
.../persistence/index/IndexBufferConsumer.java | 37 -
.../persistence/index/IndexBufferProducer.java | 37 -
.../usergrid/persistence/index/IndexEdge.java | 36 +
.../usergrid/persistence/index/IndexFig.java | 129 +-
.../persistence/index/IndexIdentifier.java | 92 -
.../index/IndexOperationMessage.java | 138 -
.../persistence/index/IndexRefreshCommand.java | 50 +
.../usergrid/persistence/index/IndexScope.java | 38 -
.../usergrid/persistence/index/SearchEdge.java | 61 +
.../usergrid/persistence/index/SearchType.java | 51 +
.../usergrid/persistence/index/SearchTypes.java | 46 +-
.../persistence/index/SelectFieldMapping.java | 58 +
.../persistence/index/guice/IndexModule.java | 44 +-
.../persistence/index/guice/QueueProvider.java | 116 -
.../persistence/index/impl/BatchOperation.java | 41 +
.../persistence/index/impl/BatchRequest.java | 41 -
.../persistence/index/impl/BufferQueue.java | 68 -
.../index/impl/BufferQueueInMemoryImpl.java | 116 -
.../index/impl/BufferQueueSQSImpl.java | 307 --
.../index/impl/DeIndexOperation.java | 104 +
.../persistence/index/impl/DeIndexRequest.java | 115 -
.../persistence/index/impl/EntityField.java | 148 +
.../index/impl/EntityMappingParser.java | 247 ++
.../index/impl/EntityToMapConverter.java | 108 +
.../impl/EsApplicationEntityIndexImpl.java | 259 ++
.../index/impl/EsEntityIndexBatchImpl.java | 292 +-
.../index/impl/EsEntityIndexFactoryImpl.java | 44 +-
.../index/impl/EsEntityIndexImpl.java | 604 +---
.../index/impl/EsIndexBufferConsumerImpl.java | 347 +--
.../index/impl/EsIndexBufferProducerImpl.java | 65 -
.../persistence/index/impl/EsIndexCache.java | 142 -
.../index/impl/EsIndexCacheImpl.java | 141 +
.../persistence/index/impl/EsProvider.java | 129 +-
.../persistence/index/impl/EsQueryVistor.java | 589 ++--
.../persistence/index/impl/FieldParser.java | 45 +
.../index/impl/FlushBufferQueue.java | 23 +
.../persistence/index/impl/GeoSortFields.java | 95 +
.../persistence/index/impl/IndexAlias.java | 42 +
.../index/impl/IndexBufferConsumer.java | 38 +
.../persistence/index/impl/IndexCache.java | 43 +
.../persistence/index/impl/IndexEdgeImpl.java | 84 +
.../persistence/index/impl/IndexIdentifier.java | 46 +
.../index/impl/IndexIdentifierImpl.java | 67 +
.../persistence/index/impl/IndexOperation.java | 107 +
.../index/impl/IndexOperationMessage.java | 121 +
.../index/impl/IndexRefreshCommandImpl.java | 205 ++
.../persistence/index/impl/IndexRequest.java | 125 -
.../persistence/index/impl/IndexScopeImpl.java | 88 -
.../persistence/index/impl/IndexingUtils.java | 265 +-
.../index/impl/NoOpFilterBuilder.java | 45 +
.../index/impl/NoOpQueryBuilder.java | 45 +
.../persistence/index/impl/SearchEdgeImpl.java | 120 +
.../impl/SearchRequestBuilderStrategy.java | 290 ++
.../persistence/index/impl/SortBuilder.java | 44 +
.../index/migration/EsIndexMigrationPlugin.java | 46 +
.../index/migration/IndexDataVersions.java | 39 +
.../index/migration/IndexMigration.java | 35 +
.../index/migration/LegacyIndexIdentifier.java | 78 +
.../index/query/CandidateResult.java | 74 -
.../index/query/CandidateResults.java | 90 -
.../persistence/index/query/EntityResults.java | 108 -
.../persistence/index/query/ParsedQuery.java | 205 ++
.../index/query/ParsedQueryBuilder.java | 108 +
.../usergrid/persistence/index/query/Query.java | 1428 ---------
.../persistence/index/query/Results.java | 148 -
.../persistence/index/query/SortPredicate.java | 144 +
.../index/query/tree/QueryVisitor.java | 55 +-
.../index/utils/IndexValidationUtils.java | 24 +-
.../persistence/index/utils/ListUtils.java | 1 +
.../persistence/index/utils/StringUtils.java | 62 -
.../persistence/index/usergrid-mappings.json | 99 +
.../persistence/index/guice/IndexTestFig.java | 62 +
.../index/guice/TestIndexModule.java | 42 +-
.../index/impl/BufferQueueSQSImplTest.java | 169 -
.../index/impl/CorePerformanceIT.java | 339 --
.../index/impl/ElasticSearchRule.java | 58 +
.../impl/EntityConnectionIndexImplTest.java | 306 --
.../index/impl/EntityIndexMapUtils.java | 57 +-
.../persistence/index/impl/EntityIndexTest.java | 1096 +++++--
.../index/impl/EntityToMapConverterTest.java | 653 ++++
.../persistence/index/impl/GeoPagingTest.java | 163 +
.../index/impl/IndexLoadTestsIT.java | 393 +++
.../persistence/query/tree/GrammarTreeTest.java | 157 +-
.../src/test/resources/dynamic-test.properties | 2 +-
.../src/test/resources/log4j.properties | 10 +-
.../src/test/resources/usergrid-UNIT.properties | 7 +
.../usergrid/persistence/queue/QueueFig.java | 8 +
.../persistence/queue/NoAWSCredsRule.java | 98 -
.../persistence/queue/QueueManagerTest.java | 3 +-
.../queue/guice/TestQueueModule.java | 3 +-
stack/java-sdk-old/pom.xml | 102 -
.../scenarios/ConnectionScenarios.scala | 2 +-
.../usergrid/mongo/protocol/OpDelete.java | 4 +-
.../apache/usergrid/mongo/protocol/OpQuery.java | 6 +-
.../usergrid/mongo/protocol/OpUpdate.java | 4 +-
.../apache/usergrid/mongo/BasicMongoTest.java | 8 +-
.../apache/usergrid/mongo/MongoQueryTest.java | 18 +-
stack/pom.xml | 29 +-
stack/rest/pom.xml | 17 +-
.../usergrid/rest/AbstractContextResource.java | 102 +-
.../org/apache/usergrid/rest/ApiResponse.java | 40 +-
.../org/apache/usergrid/rest/IndexResource.java | 12 +-
.../apache/usergrid/rest/MigrateResource.java | 122 +-
.../org/apache/usergrid/rest/RootResource.java | 19 +-
.../rest/applications/ApplicationResource.java | 38 +-
.../rest/applications/ServiceResource.java | 43 +-
.../notifiers/NotifiersResource.java | 11 +-
.../rest/applications/users/UsersResource.java | 4 +-
.../exceptions/AbstractExceptionMapper.java | 11 +-
.../exceptions/ConflictExceptionMapper.java | 35 +
.../exceptions/NotFoundExceptionMapper.java | 35 +
.../rest/exceptions/UncaughtException.java | 36 +
.../rest/management/ManagementResource.java | 59 +-
.../organizations/OrganizationResource.java | 28 +-
.../organizations/OrganizationsResource.java | 23 +-
.../applications/ApplicationResource.java | 61 +-
.../applications/ApplicationsResource.java | 34 +-
.../imports/FileIncludesResource.java | 9 -
.../applications/imports/ImportsResource.java | 83 +-
.../organizations/OrganizationResource.java | 32 +-
.../OAuth2AccessTokenSecurityFilter.java | 2 +-
.../rest/test/RefreshIndexResource.java | 25 +-
.../java/org/apache/usergrid/rest/BasicIT.java | 302 +-
.../apache/usergrid/rest/IndexResourceIT.java | 1 +
.../apache/usergrid/rest/NotificationsIT.java | 93 +-
.../apache/usergrid/rest/SystemResourceIT.java | 10 +-
.../rest/applications/ApplicationCreateIT.java | 135 +
.../rest/applications/ApplicationDeleteIT.java | 389 +++
.../applications/ApplicationDeleteTest.java | 54 -
.../applications/ApplicationResourceIT.java | 100 +-
.../collection/CollectionsResourceIT.java | 19 +-
.../collection/paging/PagingResourceIT.java | 17 +-
.../collection/users/OwnershipResourceIT.java | 4 +-
.../collection/users/PermissionsResourceIT.java | 15 -
.../collection/users/RetrieveUsersTest.java | 4 +-
.../collection/users/UserResourceIT.java | 16 +-
.../events/ApplicationRequestCounterIT.java | 2 +-
.../applications/queries/BasicGeoTests.java | 21 +-
.../applications/queries/GeoPagingTest.java | 58 +-
.../applications/queries/MatrixQueryTests.java | 298 +-
.../rest/applications/queries/OrderByTest.java | 2 +-
.../queues/AbstractQueueResourceIT.java | 484 ---
.../queues/QueueResourceLong1IT.java | 149 -
.../queues/QueueResourceLong2IT.java | 99 -
.../queues/QueueResourceLong3IT.java | 201 --
.../queues/QueueResourceShortIT.java | 432 ---
.../rest/filters/ContentTypeResourceIT.java | 55 +-
.../usergrid/rest/management/AccessTokenIT.java | 418 +--
.../usergrid/rest/management/AdminUsersIT.java | 64 +-
.../rest/management/ExportResourceIT.java | 674 ++--
.../rest/management/ImportResourceIT.java | 179 +-
.../rest/management/ManagementResourceIT.java | 151 +-
.../rest/management/OrganizationsIT.java | 82 +-
.../organizations/AdminEmailEncodingIT.java | 3 +-
.../test/resource2point0/AbstractRestIT.java | 4 +-
.../rest/test/resource2point0/ClientSetup.java | 30 +-
.../rest/test/resource2point0/README.md | 111 +
.../rest/test/resource2point0/RestClient.java | 1 +
.../endpoints/ApplicationsResource.java | 34 +-
.../endpoints/CollectionEndpoint.java | 13 +
.../endpoints/NamedResource.java | 158 +-
.../endpoints/OrganizationResource.java | 6 +-
.../resource2point0/endpoints/RootResource.java | 1 +
.../endpoints/SetupResource.java | 6 +
.../endpoints/mgmt/ApplicationResource.java | 54 +-
.../endpoints/mgmt/ApplicationsResource.java | 58 +
.../endpoints/mgmt/ManagementResource.java | 4 +
.../endpoints/mgmt/ManagementResponse.java | 72 +
.../endpoints/mgmt/MeResource.java | 32 +
.../mgmt/OrganizationApplicationResponse.java | 60 +
.../endpoints/mgmt/OrganizationResource.java | 5 +-
.../endpoints/mgmt/PasswordResource.java | 16 -
.../endpoints/mgmt/RevokeTokenResource.java | 32 +
.../endpoints/mgmt/RevokeTokensResource.java | 33 +
.../endpoints/mgmt/TokenResource.java | 25 +-
.../endpoints/mgmt/UserResource.java | 8 +
.../endpoints/mgmt/UsersResource.java | 15 -
stack/rest/src/test/resources/log4j.properties | 10 +-
.../resources/testImportCorrect.testCol.1.json | 18 -
...testImportInvalidJson.testApplication.3.json | 153 -
.../testimport-bad-json-testapp.3.json | 153 +
.../src/test/resources/testimport-bad-json.json | 67 +
.../resources/testimport-correct-testcol.1.json | 18 +
.../test/resources/testimport-test-app.2.json | 56 +
.../resources/usergrid-custom-test.properties | 2 +
stack/services/pom.xml | 51 +-
.../usergrid/management/ApplicationInfo.java | 4 +
.../usergrid/management/ManagementService.java | 10 +-
.../cassandra/ApplicationCreatorImpl.java | 12 +-
.../cassandra/ManagementServiceImpl.java | 235 +-
.../management/export/ExportServiceImpl.java | 6 +-
.../management/importer/FileImportJob.java | 8 +-
.../management/importer/FileImportTracker.java | 6 +-
.../usergrid/management/importer/ImportJob.java | 4 +-
.../management/importer/ImportServiceImpl.java | 82 +-
.../usergrid/security/AuthPrincipalType.java | 3 +-
.../security/providers/AbstractProvider.java | 1 +
.../security/providers/FacebookProvider.java | 6 +-
.../security/providers/FoursquareProvider.java | 6 +-
.../shiro/PrincipalCredentialsToken.java | 20 +-
.../apache/usergrid/security/shiro/Realm.java | 2 +-
.../services/AbstractCollectionService.java | 17 +-
.../services/AbstractConnectionsService.java | 4 +-
.../AbstractPathBasedColllectionService.java | 2 +-
.../usergrid/services/AbstractService.java | 2 +-
.../usergrid/services/ServiceContext.java | 2 +-
.../services/ServiceManagerFactory.java | 4 -
.../usergrid/services/ServiceParameter.java | 3 +-
.../usergrid/services/ServiceRequest.java | 2 +-
.../usergrid/services/ServiceResults.java | 38 +-
.../applications/ApplicationsService.java | 2 +-
.../services/devices/DevicesService.java | 2 +-
.../usergrid/services/groups/GroupsService.java | 2 +-
.../groups/activities/ActivitiesService.java | 2 +-
.../users/activities/ActivitiesService.java | 4 +-
.../notifications/InactiveDeviceManager.java | 8 +-
.../notifications/NotificationsService.java | 4 +-
.../apns/FailedConnectionListener.java | 31 +-
.../impl/ApplicationQueueManagerImpl.java | 197 +-
.../services/notifications/wns/WNSAdapter.java | 60 +-
.../usergrid/services/roles/RolesService.java | 10 +-
.../usergrid/services/users/UsersService.java | 2 +-
.../users/activities/ActivitiesService.java | 4 +-
.../org/apache/usergrid/ServiceApplication.java | 18 +-
.../org/apache/usergrid/ServiceITSetup.java | 5 +
.../org/apache/usergrid/ServiceITSetupImpl.java | 43 +-
.../migration/AppInfoMigrationPluginTest.java | 231 ++
.../apache/usergrid/management/EmailFlowIT.java | 18 +-
.../usergrid/management/OrganizationIT.java | 16 +-
.../org/apache/usergrid/management/RoleIT.java | 4 +-
.../cassandra/ApplicationCreatorIT.java | 14 +-
.../cassandra/ManagementServiceIT.java | 35 +-
.../management/export/ExportServiceIT.java | 20 +-
.../importer/FileImportTrackerTest.java | 12 +-
.../management/importer/ImportCollectionIT.java | 20 +-
.../importer/ImportConnectionsTest.java | 9 +-
.../management/importer/ImportServiceIT.java | 2 +-
.../security/tokens/TokenServiceIT.java | 2 -
.../usergrid/services/ActivitiesServiceIT.java | 2 +-
.../usergrid/services/CollectionServiceIT.java | 2 +
.../usergrid/services/ConnectionsServiceIT.java | 10 +-
.../usergrid/services/GroupServiceIT.java | 6 +-
.../usergrid/services/RolesServiceIT.java | 4 +-
.../usergrid/services/ServiceFactoryIT.java | 8 +-
.../usergrid/services/ServiceInvocationIT.java | 2 +-
.../usergrid/services/ServiceRequestIT.java | 9 +-
.../usergrid/services/UsersServiceIT.java | 2 +-
.../AbstractServiceNotificationIT.java | 4 +-
.../notifications/NotifiersServiceIT.java | 19 +-
.../apns/NotificationsServiceIT.java | 66 +-
.../gcm/NotificationsServiceIT.java | 4 +-
.../src/test/resources/log4j.properties | 6 +-
.../resources/usergrid-custom-test.properties | 5 +
.../usergrid/cassandra/SpringResource.java | 13 +-
.../setup/ConcurrentProcessSingleton.java | 49 +-
.../org/apache/usergrid/tools/AppAudit.java | 3 +-
.../org/apache/usergrid/tools/CredExport.java | 2 +-
.../org/apache/usergrid/tools/DupOrgRepair.java | 1 -
.../java/org/apache/usergrid/tools/Import.java | 14 +-
.../usergrid/tools/UniqueIndexCleanup.java | 6 +-
876 files changed, 37842 insertions(+), 44603 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/ed8ee9a9/stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java
----------------------------------------------------------------------
diff --cc stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java
index 93e7f84,590dabf..7a9e262
--- a/stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java
+++ b/stack/rest/src/main/java/org/apache/usergrid/rest/ApiResponse.java
@@@ -23,18 -23,8 +23,20 @@@ import com.fasterxml.jackson.annotation
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize.Inclusion;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.TreeMap;
+import java.util.UUID;
+
+import javax.xml.bind.annotation.XmlAnyElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.springframework.beans.factory.annotation.Autowired;
+ import org.apache.commons.lang.ClassUtils;
+ import org.apache.commons.lang.StringUtils;
import org.apache.usergrid.persistence.AggregateCounterSet;
import org.apache.usergrid.persistence.Entity;
import org.apache.usergrid.persistence.Results;
[7/8] incubator-usergrid git commit: rename connecting to source and
connected to target
Posted by to...@apache.org.
rename connecting to source and connected to target
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/5b1dfa1c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/5b1dfa1c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/5b1dfa1c
Branch: refs/heads/USERGRID-641
Commit: 5b1dfa1c8906cdf7e1a484b48f1944239e5b48ec
Parents: ed8ee9a
Author: Shawn Feldman <sf...@apache.org>
Authored: Wed May 13 12:30:59 2015 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Wed May 13 12:30:59 2015 -0700
----------------------------------------------------------------------
.../corepersistence/CpEntityManager.java | 22 ++++++-------
.../corepersistence/CpEntityManagerFactory.java | 8 ++---
.../corepersistence/CpRelationManager.java | 15 ++++-----
.../corepersistence/index/IndexServiceImpl.java | 6 ++--
.../usergrid/persistence/EntityManager.java | 34 ++++++++++----------
.../persistence/MultiQueryIterator.java | 4 +--
.../apache/usergrid/persistence/PathQuery.java | 3 +-
.../usergrid/persistence/RelationManager.java | 12 +++----
.../usergrid/persistence/CollectionIT.java | 2 +-
.../usergrid/persistence/CountingMutatorIT.java | 6 ++--
.../persistence/EntityConnectionsIT.java | 26 +++++++--------
.../org/apache/usergrid/persistence/GeoIT.java | 8 ++---
.../PerformanceEntityRebuildIndexTest.java | 8 ++---
.../persistence/query/ConnectionHelper.java | 2 +-
.../persistence/query/IteratingQueryIT.java | 2 +-
.../rest/management/ImportResourceIT.java | 2 +-
.../cassandra/ManagementServiceImpl.java | 12 +++----
.../management/export/ExportServiceImpl.java | 4 +--
.../management/importer/FileImportJob.java | 5 ++-
.../management/importer/ImportServiceImpl.java | 15 ++++-----
.../services/AbstractConnectionsService.java | 24 +++++++-------
.../users/activities/ActivitiesService.java | 4 +--
.../users/activities/ActivitiesService.java | 4 +--
.../management/importer/ImportCollectionIT.java | 2 +-
.../importer/ImportConnectionsTest.java | 9 +++---
.../management/importer/ImportServiceIT.java | 6 ++--
26 files changed, 114 insertions(+), 131 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/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 9430c4e..63018cb 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
@@ -1515,35 +1515,35 @@ public class CpEntityManager implements EntityManager {
@Override
- public Results getConnectedEntities( EntityRef entityRef, String connectionType,
- String connectedEntityType, Level resultsLevel ) throws Exception {
+ public Results getTargetEntities(EntityRef entityRef, String connectionType,
+ String connectedEntityType, Level resultsLevel) throws Exception {
return getRelationManager( entityRef )
- .getConnectedEntities( connectionType, connectedEntityType, resultsLevel );
+ .getTargetEntities(connectionType, connectedEntityType, resultsLevel);
}
@Override
- public Results getConnectingEntities( EntityRef entityRef, String connectionType,
- String connectedEntityType, Level resultsLevel ) throws Exception {
+ public Results getSourceEntities(EntityRef entityRef, String connectionType,
+ String connectedEntityType, Level resultsLevel) throws Exception {
return getRelationManager( entityRef )
- .getConnectingEntities( connectionType, connectedEntityType, resultsLevel );
+ .getSourceEntities(connectionType, connectedEntityType, resultsLevel);
}
@Override
- public Results getConnectingEntities( EntityRef entityRef, String connectionType,
- String entityType, Level level, int count ) throws Exception {
+ public Results getSourceEntities(EntityRef entityRef, String connectionType,
+ String entityType, Level level, int count) throws Exception {
- return getRelationManager( entityRef ).getConnectingEntities( connectionType, entityType, level, count );
+ return getRelationManager( entityRef ).getSourceEntities(connectionType, entityType, level, count);
}
@Override
- public Results searchConnectedEntities( EntityRef connectingEntity, Query query ) throws Exception {
+ public Results searchTargetEntities(EntityRef connectingEntity, Query query) throws Exception {
- return getRelationManager( connectingEntity ).searchConnectedEntities( query );
+ return getRelationManager( connectingEntity ).searchTargetEntities(query);
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/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 e796545..63e2869 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
@@ -204,7 +204,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
@Override
public Entity createApplicationV2(String organizationName, String name) throws Exception {
- return createApplicationV2( organizationName, name, null );
+ return createApplicationV2(organizationName, name, null);
}
@@ -262,7 +262,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
properties = new TreeMap<>( CASE_INSENSITIVE_ORDER );
}
properties.put( PROPERTY_NAME, appName );
- EntityManager appEm = getEntityManager( applicationId);
+ EntityManager appEm = getEntityManager(applicationId);
appEm.create(applicationId, TYPE_APPLICATION, properties);
appEm.resetRoles();
// entityIndex.refreshAsync();//.toBlocking().last();
@@ -356,7 +356,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
copyConnections = Observable.from(connectionTypes).doOnNext(connType -> {
try {
final Results connResults =
- managementEm.getConnectedEntities(oldAppEntity, connType, null, Query.Level.ALL_PROPERTIES);
+ managementEm.getTargetEntities(oldAppEntity, connType, null, Query.Level.ALL_PROPERTIES);
connResults.getEntities().forEach(entity -> {
try {
managementEm.createConnection(newAppEntity, connType, entity);
@@ -420,7 +420,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
Map<String, UUID> appMap = new HashMap<>();
ApplicationScope appScope =
- CpNamingUtils.getApplicationScope(CpNamingUtils.MANAGEMENT_APPLICATION_ID );
+ CpNamingUtils.getApplicationScope(CpNamingUtils.MANAGEMENT_APPLICATION_ID);
GraphManager gm = managerCache.getGraphManager(appScope);
EntityManager em = getEntityManager(CpNamingUtils.MANAGEMENT_APPLICATION_ID);
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/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 bd3d137..4993d88 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
@@ -20,7 +20,6 @@ package org.apache.usergrid.corepersistence;
import java.util.*;
import org.apache.usergrid.persistence.graph.*;
-import org.apache.usergrid.utils.UUIDUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.Assert;
@@ -576,7 +575,7 @@ public class CpRelationManager implements RelationManager {
results = em.getCollection( headEntity, srcRelationName, null, 5000, Level.REFS, false );
}
else {
- results = em.getConnectedEntities( headEntity, srcRelationName, null, Level.REFS );
+ results = em.getTargetEntities(headEntity, srcRelationName, null, Level.REFS);
}
if ( ( results != null ) && ( results.size() > 0 ) ) {
@@ -837,7 +836,7 @@ public class CpRelationManager implements RelationManager {
@Override
- public Results getConnectedEntities( String connectionType, String connectedEntityType, Level level )
+ public Results getTargetEntities(String connectionType, String connectedEntityType, Level level)
throws Exception {
//until this is refactored properly, we will delegate to a search by query
@@ -850,20 +849,20 @@ public class CpRelationManager implements RelationManager {
query.setEntityType( connectedEntityType );
query.setResultsLevel( level );
- return searchConnectedEntities( query );
+ return searchTargetEntities(query);
}
@Override
- public Results getConnectingEntities( String connType, String fromEntityType, Level resultsLevel )
+ public Results getSourceEntities(String connType, String fromEntityType, Level resultsLevel)
throws Exception {
- return getConnectingEntities( connType, fromEntityType, resultsLevel, -1 );
+ return getSourceEntities(connType, fromEntityType, resultsLevel, -1);
}
@Override
- public Results getConnectingEntities( String connType, String fromEntityType, Level level, int count )
+ public Results getSourceEntities(String connType, String fromEntityType, Level level, int count)
throws Exception {
// looking for edges to the head entity
@@ -896,7 +895,7 @@ public class CpRelationManager implements RelationManager {
@Override
- public Results searchConnectedEntities( Query query ) throws Exception {
+ public Results searchTargetEntities(Query query) throws Exception {
Preconditions.checkNotNull( query, "query cannot be null" );
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/main/java/org/apache/usergrid/corepersistence/index/IndexServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/index/IndexServiceImpl.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/index/IndexServiceImpl.java
index 8185b4d..1fc8eea 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/index/IndexServiceImpl.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/index/IndexServiceImpl.java
@@ -104,11 +104,11 @@ public class IndexServiceImpl implements IndexService {
//we might or might not need to index from target-> source
- final Observable<IndexEdge> targetSizes = getIndexEdgesAsTarget( gm, entityId );
+ final Observable<IndexEdge> edgesToSource = getIndexEdgesAsTarget( gm, entityId );
//merge the edges together
- final Observable<IndexEdge> observable = Observable.merge( sourceEdgesToIndex, targetSizes);
+ final Observable<IndexEdge> observable = Observable.merge( sourceEdgesToIndex, edgesToSource);
//do our observable for batching
//try to send a whole batch if we can
@@ -134,8 +134,6 @@ public class IndexServiceImpl implements IndexService {
@Override
public Observable<IndexOperationMessage> indexEdge( final ApplicationScope applicationScope, final Entity entity, final Edge edge ) {
-
-
final Observable<IndexOperationMessage> batches = Observable.just( edge ).map( observableEdge -> {
//if the node is the target node, generate our scope correctly
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java b/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java
index b8d3360..774a0fb 100644
--- a/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java
+++ b/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java
@@ -420,25 +420,25 @@ public interface EntityManager {
*/
public ConnectionRef createConnection( ConnectionRef connection ) throws Exception;
- public ConnectionRef createConnection( EntityRef connectingEntity, String connectionType,
- EntityRef connectedEntityRef ) throws Exception;
+ public ConnectionRef createConnection( EntityRef sourceEntity, String connectionType,
+ EntityRef targetEntityRef ) throws Exception;
- public ConnectionRef createConnection( EntityRef connectingEntity, String pairedConnectionType,
+ public ConnectionRef createConnection( EntityRef sourceEntity, String pairedConnectionType,
EntityRef pairedEntity, String connectionType,
- EntityRef connectedEntityRef ) throws Exception;
+ EntityRef targetEntityRef ) throws Exception;
public ConnectionRef createConnection(
- EntityRef connectingEntity, ConnectedEntityRef... connections )
+ EntityRef sourceEntity, ConnectedEntityRef... connections )
throws Exception;
- public ConnectionRef connectionRef( EntityRef connectingEntity, String connectionType,
- EntityRef connectedEntityRef ) throws Exception;
+ public ConnectionRef connectionRef( EntityRef sourceEntity, String connectionType,
+ EntityRef targetEntityRef ) throws Exception;
- public ConnectionRef connectionRef( EntityRef connectingEntity, String pairedConnectionType,
- EntityRef pairedEntity, String connectionType, EntityRef connectedEntityRef )
+ public ConnectionRef connectionRef( EntityRef sourceEntity, String pairedConnectionType,
+ EntityRef pairedEntity, String connectionType, EntityRef targetEntityRef )
throws Exception;
- public ConnectionRef connectionRef( EntityRef connectingEntity, ConnectedEntityRef... connections );
+ public ConnectionRef connectionRef( EntityRef sourceEntity, ConnectedEntityRef... connections );
/**
* Disconnects two connected entities with the specified connection type. Connections are
@@ -464,8 +464,8 @@ public interface EntityManager {
*
* @throws Exception the exception
*/
- public Results getConnectedEntities( EntityRef entityRef, String connectionType,
- String connectedEntityType, Level resultsLevel ) throws Exception;
+ public Results getTargetEntities(EntityRef entityRef, String connectionType,
+ String connectedEntityType, Level resultsLevel) throws Exception;
/**
* Gets the entities connecting to this entity, optionally with the specified connection
@@ -481,13 +481,13 @@ public interface EntityManager {
*
* @throws Exception the exception
*/
- public Results getConnectingEntities( EntityRef entityRef, String connectionType,
- String connectedEntityType, Level resultsLevel ) throws Exception;
+ public Results getSourceEntities(EntityRef entityRef, String connectionType,
+ String connectedEntityType, Level resultsLevel) throws Exception;
- public Results getConnectingEntities( EntityRef entityRef, String connectionType,
- String entityType, Level level, int count) throws Exception;
+ public Results getSourceEntities(EntityRef entityRef, String connectionType,
+ String entityType, Level level, int count) throws Exception;
- public Results searchConnectedEntities( EntityRef connectingEntity, Query query ) throws Exception;
+ public Results searchTargetEntities(EntityRef sourceEntity, Query query) throws Exception;
// Application roles
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/main/java/org/apache/usergrid/persistence/MultiQueryIterator.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/persistence/MultiQueryIterator.java b/stack/core/src/main/java/org/apache/usergrid/persistence/MultiQueryIterator.java
index c32f429..3662c63 100644
--- a/stack/core/src/main/java/org/apache/usergrid/persistence/MultiQueryIterator.java
+++ b/stack/core/src/main/java/org/apache/usergrid/persistence/MultiQueryIterator.java
@@ -17,10 +17,8 @@
package org.apache.usergrid.persistence;
-import org.apache.usergrid.persistence.Query;
import java.util.Iterator;
import java.util.UUID;
-import org.apache.usergrid.persistence.Query.Level;
/**
@@ -94,7 +92,7 @@ public class MultiQueryIterator implements ResultsIterator {
try {
return ( query.getCollection() != null ) ?
entityManager.searchCollection( entityRef, query.getCollection(), query ) :
- entityManager.searchConnectedEntities( entityRef, query );
+ entityManager.searchTargetEntities(entityRef, query);
}
catch ( Exception e ) {
throw new RuntimeException( e );
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/main/java/org/apache/usergrid/persistence/PathQuery.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/persistence/PathQuery.java b/stack/core/src/main/java/org/apache/usergrid/persistence/PathQuery.java
index 58b9522..bb336e1 100644
--- a/stack/core/src/main/java/org/apache/usergrid/persistence/PathQuery.java
+++ b/stack/core/src/main/java/org/apache/usergrid/persistence/PathQuery.java
@@ -17,7 +17,6 @@
package org.apache.usergrid.persistence;
-import org.apache.usergrid.persistence.Query;
import java.util.Iterator;
import java.util.UUID;
@@ -103,7 +102,7 @@ public class PathQuery<E> {
EntityRef ref = new SimpleEntityRef(type,uuid);
return ( query.getCollection() != null ) ?
em.searchCollection( ref, query.getCollection(), query ) :
- em.searchConnectedEntities( ref, query );
+ em.searchTargetEntities(ref, query);
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/main/java/org/apache/usergrid/persistence/RelationManager.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/persistence/RelationManager.java b/stack/core/src/main/java/org/apache/usergrid/persistence/RelationManager.java
index 84e4a38..0b2fca8 100644
--- a/stack/core/src/main/java/org/apache/usergrid/persistence/RelationManager.java
+++ b/stack/core/src/main/java/org/apache/usergrid/persistence/RelationManager.java
@@ -106,11 +106,11 @@ public interface RelationManager {
* @param connectionType The type/name of the connection
* @param connectedEntityType The type of
*/
- public Results getConnectedEntities( String connectionType, String connectedEntityType, Level resultsLevel )
+ public Results getTargetEntities(String connectionType, String connectedEntityType, Level resultsLevel)
throws Exception;
- public Results getConnectingEntities( String connectionType, String connectedEntityType,
- Level resultsLevel ) throws Exception;
+ public Results getSourceEntities(String connectionType, String connectedEntityType,
+ Level resultsLevel) throws Exception;
// public Results searchConnectedEntitiesForProperty(String connectionType,
// String connectedEntityType, String propertyName,
@@ -118,10 +118,10 @@ public interface RelationManager {
// UUID startResult, int count, boolean reversed, Level resultsLevel)
// throws Exception;
- public Results getConnectingEntities(
- String connectionType, String entityType, Level level, int count) throws Exception;
+ public Results getSourceEntities(
+ String connectionType, String entityType, Level level, int count) throws Exception;
- public Results searchConnectedEntities( Query query ) throws Exception;
+ public Results searchTargetEntities(Query query) throws Exception;
public Set<String> getConnectionIndexes( String connectionType ) throws Exception;
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java b/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
index e3149d6..eab04ce 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
@@ -1455,7 +1455,7 @@ public class CollectionIT extends AbstractCoreIT {
query.setConnectionType( "testconnection" );
query.setEntityType( "user" );
- r = em.searchConnectedEntities( foo, query );
+ r = em.searchTargetEntities(foo, query);
assertEquals( "connection must match", 1, r.size() );
assertEquals( entity.getUuid(), r.getId() );
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/test/java/org/apache/usergrid/persistence/CountingMutatorIT.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/persistence/CountingMutatorIT.java b/stack/core/src/test/java/org/apache/usergrid/persistence/CountingMutatorIT.java
index abb9417..63c7cb8 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/CountingMutatorIT.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/CountingMutatorIT.java
@@ -27,8 +27,6 @@ import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.apache.commons.lang3.RandomStringUtils;
-
import org.apache.usergrid.AbstractCoreIT;
import org.apache.usergrid.persistence.hector.CountingMutator;
import org.apache.usergrid.persistence.Query.Level;
@@ -99,8 +97,8 @@ public class CountingMutatorIT extends AbstractCoreIT {
//now verify our connections were created properly
- PagingResultsIterator itr = new PagingResultsIterator(em.getConnectingEntities(
- returned, "following", "user", Level.ALL_PROPERTIES, 1000 ));
+ PagingResultsIterator itr = new PagingResultsIterator(em.getSourceEntities(
+ returned, "following", "user", Level.ALL_PROPERTIES, 1000));
int count = 0;
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/test/java/org/apache/usergrid/persistence/EntityConnectionsIT.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/persistence/EntityConnectionsIT.java b/stack/core/src/test/java/org/apache/usergrid/persistence/EntityConnectionsIT.java
index e1b2f5e..47b61e9 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/EntityConnectionsIT.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/EntityConnectionsIT.java
@@ -72,7 +72,7 @@ public class EntityConnectionsIT extends AbstractCoreIT {
app.refreshIndex();
- Results r = em.getConnectedEntities( firstUserEntity, "likes", null, Level.IDS );
+ Results r = em.getTargetEntities(firstUserEntity, "likes", null, Level.IDS);
List<ConnectionRef> connections = r.getConnections();
@@ -186,7 +186,7 @@ public class EntityConnectionsIT extends AbstractCoreIT {
EntityManager em = setup.getEmf().getEntityManager( applicationId );
Entity en = em.get( new SimpleEntityRef( entityType, entityId));
- Results results = em.getConnectedEntities( en, connectionType, null, Level.REFS );
+ Results results = em.getTargetEntities(en, connectionType, null, Level.REFS);
LOG.info( "----------------------------------------------------" );
assertEquals( "Expected " + expectedCount + " connections",
@@ -264,7 +264,7 @@ public class EntityConnectionsIT extends AbstractCoreIT {
app.refreshIndex();
- Results r = em.getConnectedEntities( firstUserEntity, "likes", "restaurant", Level.IDS );
+ Results r = em.getTargetEntities(firstUserEntity, "likes", "restaurant", Level.IDS);
List<ConnectionRef> connections = r.getConnections();
@@ -278,7 +278,7 @@ public class EntityConnectionsIT extends AbstractCoreIT {
assertFalse( em.isConnectionMember( firstUserEntity, "likes", arrogantbutcher ) );
// check we don't get the restaurant from the second user
- r = em.getConnectedEntities( secondUserEntity, "likes", "restaurant", Level.IDS );
+ r = em.getTargetEntities(secondUserEntity, "likes", "restaurant", Level.IDS);
connections = r.getConnections();
@@ -320,19 +320,19 @@ public class EntityConnectionsIT extends AbstractCoreIT {
// // search for "likes" edges from fred
// assertEquals( 1,
-// em.getConnectedEntities( fredEntity, "likes", null, Level.IDS ).size());
+// em.getTargetEntities( fredEntity, "likes", null, Level.IDS ).size());
//
// // search for any type of edges from fred
// assertEquals( 1,
-// em.getConnectedEntities( fredEntity, null, null, Level.IDS ).size());
+// em.getTargetEntities( fredEntity, null, null, Level.IDS ).size());
// search for "likes" edges to wilman from any type of object
- Results res = em.getConnectingEntities( wilmaEntity, "likes", null, Level.ALL_PROPERTIES);
+ Results res = em.getSourceEntities(wilmaEntity, "likes", null, Level.ALL_PROPERTIES);
assertEquals( 1, res.size() );
assertEquals( "user", res.getEntity().getType() ); // fred is a user
// search for "likes" edges to wilman from user type object
- res = em.getConnectingEntities( wilmaEntity, "likes", "user", Level.ALL_PROPERTIES);
+ res = em.getSourceEntities(wilmaEntity, "likes", "user", Level.ALL_PROPERTIES);
assertEquals( 1, res.size() );
assertEquals( "user", res.getEntity().getType() );
}
@@ -372,7 +372,7 @@ public class EntityConnectionsIT extends AbstractCoreIT {
app.refreshIndex();
- Results r = em.getConnectedEntities( firstUserEntity, "likes", null, Level.ALL_PROPERTIES ) ;
+ Results r = em.getTargetEntities(firstUserEntity, "likes", null, Level.ALL_PROPERTIES) ;
PagingResultsIterator itr = new PagingResultsIterator( r );
@@ -418,19 +418,19 @@ public class EntityConnectionsIT extends AbstractCoreIT {
//
//// // search for "likes" edges from fred
//// assertEquals( 1,
-//// em.getConnectedEntities( fredEntity, "likes", null, Level.IDS ).size());
+//// em.getTargetEntities( fredEntity, "likes", null, Level.IDS ).size());
////
//// // search for any type of edges from fred
//// assertEquals( 1,
-//// em.getConnectedEntities( fredEntity, null, null, Level.IDS ).size());
+//// em.getTargetEntities( fredEntity, null, null, Level.IDS ).size());
//
// // search for "likes" edges to wilman from any type of object
-// Results res = em.getConnectingEntities( wilmaEntity, "likes", null, Level.ALL_PROPERTIES);
+// Results res = em.getSourceEntities( wilmaEntity, "likes", null, Level.ALL_PROPERTIES);
// assertEquals( 1, res.size() );
// assertEquals( "user", res.getEntity().getType() ); // fred is a user
//
// // search for "likes" edges to wilman from user type object
-// res = em.getConnectingEntities( wilmaEntity, "likes", "user", Level.ALL_PROPERTIES);
+// res = em.getSourceEntities( wilmaEntity, "likes", "user", Level.ALL_PROPERTIES);
// assertEquals( 1, res.size() );
// assertEquals( "user", res.getEntity().getType() );
// }
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java b/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java
index 585735a..c837ab7 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java
@@ -199,18 +199,18 @@ public class GeoIT extends AbstractCoreIT {
app.refreshIndex();
//4. Test that the user is within 2000m of the entity
- Results emSearchResults = em.searchConnectedEntities(user,
+ Results emSearchResults = em.searchTargetEntities(user,
Query.fromQL("location within 5000 of "
+ ((LinkedHashMap<String, Object>) userProperties.get("location")).get("latitude")
+ ", " + ((LinkedHashMap<String, Object>)
- userProperties.get("location")).get("longitude")).setConnectionType("likes"));
+ userProperties.get("location")).get("longitude")).setConnectionType("likes"));
assertEquals(1, emSearchResults.size());
//5. Test that the user is NOT within 1000m of the entity
- emSearchResults = em.searchConnectedEntities(user,
+ emSearchResults = em.searchTargetEntities(user,
Query.fromQL("location within 1000 of "
+ ((LinkedHashMap<String, Object>) userProperties.get("location")).get("latitude")
+ ", " + ((LinkedHashMap<String, Object>)
- userProperties.get("location")).get("longitude")).setConnectionType("likes"));
+ userProperties.get("location")).get("longitude")).setConnectionType("likes"));
assertEquals(0, emSearchResults.size());
//cleanup
em.delete(user);
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java b/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
index df2a762..181b5de 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
@@ -35,13 +35,9 @@ import org.slf4j.LoggerFactory;
import org.apache.usergrid.AbstractCoreIT;
import org.apache.usergrid.cassandra.SpringResource;
-import org.apache.usergrid.corepersistence.util.CpNamingUtils;
import org.apache.usergrid.persistence.core.scope.ApplicationScope;
import org.apache.usergrid.persistence.core.scope.ApplicationScopeImpl;
-import org.apache.usergrid.persistence.index.EntityIndex;
import org.apache.usergrid.persistence.index.EntityIndexFactory;
-import org.apache.usergrid.persistence.index.impl.EsEntityIndexImpl;
-import org.apache.usergrid.persistence.Query;
import org.apache.usergrid.persistence.model.entity.Id;
import org.apache.usergrid.persistence.model.entity.SimpleId;
@@ -410,8 +406,8 @@ public class PerformanceEntityRebuildIndexTest extends AbstractCoreIT {
assertEquals( 2000, e.getProperty("key2"));
- Results catResults = em.searchConnectedEntities(e,
- Query.fromQL("select *").setConnectionType( "herds" ));
+ Results catResults = em.searchTargetEntities(e,
+ Query.fromQL("select *").setConnectionType("herds"));
assertEquals( expectedConnections, catResults.size() );
if ( count % 100 == 0 ) {
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/test/java/org/apache/usergrid/persistence/query/ConnectionHelper.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/persistence/query/ConnectionHelper.java b/stack/core/src/test/java/org/apache/usergrid/persistence/query/ConnectionHelper.java
index e99ae9c..e5c84f8 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/query/ConnectionHelper.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/query/ConnectionHelper.java
@@ -80,6 +80,6 @@ public class ConnectionHelper extends CollectionIoHelper {
query.setConnectionType( CONNECTION );
query.setEntityType( "test" );
- return app.getEntityManager().searchConnectedEntities( rootEntity, query );
+ return app.getEntityManager().searchTargetEntities(rootEntity, query);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java b/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
index 17db7f5..c4a16b6 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
@@ -275,7 +275,7 @@ public class IteratingQueryIT {
query.setConnectionType( CONNECTION );
// don't set it on purpose
query.setEntityType( null );
- return app.getEntityManager().searchConnectedEntities( rootEntity, query );
+ return app.getEntityManager().searchTargetEntities(rootEntity, query);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java
index 70b9b69..e33d488 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java
@@ -360,7 +360,7 @@ public class ImportResourceIT extends AbstractRestIT {
//
// int conCount = 0;
// for ( org.apache.usergrid.persistence.Entity e : importedThings ) {
-// Results r = emApp2.getConnectedEntities( e, "related", null, Query.Level.IDS);
+// Results r = emApp2.getTargetEntities( e, "related", null, Query.Level.IDS);
// List<ConnectionRef> connections = r.getConnections();
// conCount += connections.size();
// }
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
index 7909439..d9068bd 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
@@ -1730,9 +1730,9 @@ public class ManagementServiceImpl implements ManagementService {
final EntityManager em = emf.getEntityManager( smf.getManagementAppId() );
- Results r = em.getConnectingEntities(
- new SimpleEntityRef(CpNamingUtils.APPLICATION_INFO, applicationInfoId),
- "owns", Group.ENTITY_TYPE, Level.ALL_PROPERTIES );
+ Results r = em.getSourceEntities(
+ new SimpleEntityRef(CpNamingUtils.APPLICATION_INFO, applicationInfoId),
+ "owns", Group.ENTITY_TYPE, Level.ALL_PROPERTIES);
Entity entity = r.getEntity();
if ( entity != null ) {
@@ -1753,9 +1753,9 @@ public class ManagementServiceImpl implements ManagementService {
final EntityManager em = emf.getEntityManager( smf.getManagementAppId() );
// query for application_info entities
- final Results results = em.getConnectedEntities(
- new SimpleEntityRef(Group.ENTITY_TYPE, organizationGroupId),
- "owns", CpNamingUtils.APPLICATION_INFO, Level.ALL_PROPERTIES );
+ final Results results = em.getTargetEntities(
+ new SimpleEntityRef(Group.ENTITY_TYPE, organizationGroupId),
+ "owns", CpNamingUtils.APPLICATION_INFO, Level.ALL_PROPERTIES);
final PagingResultsIterator itr = new PagingResultsIterator( results );
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/main/java/org/apache/usergrid/management/export/ExportServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/export/ExportServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/export/ExportServiceImpl.java
index ec3b86c..31e8544 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/export/ExportServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/export/ExportServiceImpl.java
@@ -508,9 +508,9 @@ public class ExportServiceImpl implements ExportService {
jg.writeFieldName( connectionType );
jg.writeStartArray();
- Results results = em.getConnectedEntities(
+ Results results = em.getTargetEntities(
new SimpleEntityRef(entity.getType(), entity.getUuid()),
- connectionType, null, Level.IDS );
+ connectionType, null, Level.IDS);
List<ConnectionRef> connections = results.getConnections();
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/main/java/org/apache/usergrid/management/importer/FileImportJob.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/importer/FileImportJob.java b/stack/services/src/main/java/org/apache/usergrid/management/importer/FileImportJob.java
index c656e96..f734b3f 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/importer/FileImportJob.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/importer/FileImportJob.java
@@ -19,7 +19,6 @@ package org.apache.usergrid.management.importer;
import org.apache.usergrid.batch.JobExecution;
import org.apache.usergrid.batch.job.OnlyOnceJob;
-import org.apache.usergrid.corepersistence.util.CpNamingUtils;
import org.apache.usergrid.persistence.Entity;
import org.apache.usergrid.persistence.EntityManager;
import org.apache.usergrid.persistence.EntityManagerFactory;
@@ -112,8 +111,8 @@ public class FileImportJob extends OnlyOnceJob {
rootEm.update(fileImport);
// If one file Job fails, mark the main import Job also as failed
- Results ImportJobResults = rootEm.getConnectingEntities(
- fileImport, "includes", null, Level.ALL_PROPERTIES);
+ Results ImportJobResults = rootEm.getSourceEntities(
+ fileImport, "includes", null, Level.ALL_PROPERTIES);
List<Entity> importEntity = ImportJobResults.getEntities();
UUID importId = importEntity.get(0).getUuid();
Import importUG = rootEm.get(importId, Import.class);
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/main/java/org/apache/usergrid/management/importer/ImportServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/importer/ImportServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/importer/ImportServiceImpl.java
index 18879c0..e446144 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/importer/ImportServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/importer/ImportServiceImpl.java
@@ -40,7 +40,6 @@ import org.slf4j.LoggerFactory;
import rx.Observable;
import rx.Subscriber;
import rx.functions.Action1;
-import rx.functions.Func1;
import rx.functions.Func2;
import rx.schedulers.Schedulers;
@@ -213,7 +212,7 @@ public class ImportServiceImpl implements ImportService {
//set our entity type
query.setEntityType( Schema.getDefaultSchema().getEntityType( FileImport.class ) );
- return rootEm.searchConnectedEntities( importEntity, query );
+ return rootEm.searchTargetEntities(importEntity, query);
}
catch ( Exception e ) {
throw new RuntimeException( "Unable to get import entity", e );
@@ -272,7 +271,7 @@ public class ImportServiceImpl implements ImportService {
//set our entity type
query.setEntityType( Schema.getDefaultSchema().getEntityType( FailedImportEntity.class ) );
- return rootEm.searchConnectedEntities( importEntity, query );
+ return rootEm.searchTargetEntities(importEntity, query);
}
catch ( Exception e ) {
throw new RuntimeException( "Unable to get import entity", e );
@@ -382,11 +381,11 @@ public class ImportServiceImpl implements ImportService {
query.setLimit(MAX_FILE_IMPORTS);
// TODO, this won't work with more than 100 files
- Results entities = rootEM.searchConnectedEntities( importRoot, query );
+ Results entities = rootEM.searchTargetEntities(importRoot, query);
return entities.size();
// see ImportConnectsTest()
-// Results entities = rootEM.getConnectedEntities(
+// Results entities = rootEM.getTargetEntities(
// importRoot, "includes", null, Level.ALL_PROPERTIES );
// PagingResultsIterator itr = new PagingResultsIterator( entities );
// int count = 0;
@@ -767,8 +766,8 @@ public class ImportServiceImpl implements ImportService {
private Import getImportEntity( final EntityManager rootEm, final FileImport fileImport ) {
try {
Results importJobResults =
- rootEm.getConnectingEntities( fileImport, IMPORT_FILE_INCLUDES_CONNECTION,
- null, Level.ALL_PROPERTIES );
+ rootEm.getSourceEntities(fileImport, IMPORT_FILE_INCLUDES_CONNECTION,
+ null, Level.ALL_PROPERTIES);
List<Entity> importEntities = importJobResults.getEntities();
final Import importEntity = ( Import ) importEntities.get( 0 ).toTypedEntity();
@@ -802,7 +801,7 @@ public class ImportServiceImpl implements ImportService {
query.setConnectionType( IMPORT_FILE_INCLUDES_CONNECTION );
query.setLimit( MAX_FILE_IMPORTS );
- Results entities = rootEM.searchConnectedEntities( importEntity, query );
+ Results entities = rootEM.searchTargetEntities(importEntity, query);
PagingResultsIterator itr = new PagingResultsIterator( entities );
if ( !itr.hasNext() ) {
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/main/java/org/apache/usergrid/services/AbstractConnectionsService.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/services/AbstractConnectionsService.java b/stack/services/src/main/java/org/apache/usergrid/services/AbstractConnectionsService.java
index 467b09e..c4142a0 100644
--- a/stack/services/src/main/java/org/apache/usergrid/services/AbstractConnectionsService.java
+++ b/stack/services/src/main/java/org/apache/usergrid/services/AbstractConnectionsService.java
@@ -172,14 +172,14 @@ public class AbstractConnectionsService extends AbstractService {
Results r = null;
if ( connecting() ) {
- r = em.getConnectingEntities(
- new SimpleEntityRef( context.getOwner().getType(), context.getOwner().getUuid()),
- context.getCollectionName(), null, Level.ALL_PROPERTIES );
+ r = em.getSourceEntities(
+ new SimpleEntityRef(context.getOwner().getType(), context.getOwner().getUuid()),
+ context.getCollectionName(), null, Level.ALL_PROPERTIES);
}
else {
- r = em.getConnectedEntities(
- new SimpleEntityRef( context.getOwner().getType(), context.getOwner().getUuid()),
- context.getCollectionName(), null, Level.ALL_PROPERTIES );
+ r = em.getTargetEntities(
+ new SimpleEntityRef(context.getOwner().getType(), context.getOwner().getUuid()),
+ context.getCollectionName(), null, Level.ALL_PROPERTIES);
}
importEntities( context, r );
@@ -302,17 +302,17 @@ public class AbstractConnectionsService extends AbstractService {
return null;
}
else {
-// r = em.getConnectingEntities( context.getOwner().getUuid(), query.getConnectionType(),
+// r = em.getSourceEntities( context.getOwner().getUuid(), query.getConnectionType(),
// query.getEntityType(), level );
// usergrid-2389: User defined limit in the query is ignored. Fixed it by adding
// the limit to the method parameter downstream.
- r = em.getConnectingEntities(
- new SimpleEntityRef( context.getOwner().getType(), context.getOwner().getUuid()),
- query.getConnectionType(),query.getEntityType(), level , query.getLimit());
+ r = em.getSourceEntities(
+ new SimpleEntityRef(context.getOwner().getType(), context.getOwner().getUuid()),
+ query.getConnectionType(), query.getEntityType(), level, query.getLimit());
}
}
else {
- r = em.searchConnectedEntities( context.getOwner(), query );
+ r = em.searchTargetEntities(context.getOwner(), query);
}
importEntities( context, r );
@@ -419,7 +419,7 @@ public class AbstractConnectionsService extends AbstractService {
}
- Results r = em.searchConnectedEntities( context.getOwner(), query );
+ Results r = em.searchTargetEntities(context.getOwner(), query);
if ( r.isEmpty() ) {
throw new ServiceResourceNotFoundException( context );
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/main/java/org/apache/usergrid/services/groups/users/activities/ActivitiesService.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/services/groups/users/activities/ActivitiesService.java b/stack/services/src/main/java/org/apache/usergrid/services/groups/users/activities/ActivitiesService.java
index ebf3676..014dcff 100644
--- a/stack/services/src/main/java/org/apache/usergrid/services/groups/users/activities/ActivitiesService.java
+++ b/stack/services/src/main/java/org/apache/usergrid/services/groups/users/activities/ActivitiesService.java
@@ -74,8 +74,8 @@ public class ActivitiesService extends GenericCollectionService {
return;
}
- Results r2 = em.getConnectingEntities( new SimpleEntityRef( user.getType(), user.getUuid()),
- "following", User.ENTITY_TYPE, Level.IDS );
+ Results r2 = em.getSourceEntities(new SimpleEntityRef(user.getType(), user.getUuid()),
+ "following", User.ENTITY_TYPE, Level.IDS);
if ( ( r2 == null ) || ( r2.isEmpty() ) ) {
return;
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/main/java/org/apache/usergrid/services/users/activities/ActivitiesService.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/services/users/activities/ActivitiesService.java b/stack/services/src/main/java/org/apache/usergrid/services/users/activities/ActivitiesService.java
index e7f3268..c297864 100644
--- a/stack/services/src/main/java/org/apache/usergrid/services/users/activities/ActivitiesService.java
+++ b/stack/services/src/main/java/org/apache/usergrid/services/users/activities/ActivitiesService.java
@@ -133,8 +133,8 @@ public class ActivitiesService extends GenericCollectionService {
em.addToCollection( user, "feed", activity );
//publish to all connections
- Results results = em.getConnectingEntities(
- new SimpleEntityRef( user.getType(), user.getUuid()),
+ Results results = em.getSourceEntities(
+ new SimpleEntityRef(user.getType(), user.getUuid()),
"following", User.ENTITY_TYPE, Level.REFS);
if( results != null ){
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportCollectionIT.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportCollectionIT.java b/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportCollectionIT.java
index 7350dcd..4c78a1e 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportCollectionIT.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportCollectionIT.java
@@ -203,7 +203,7 @@ public class ImportCollectionIT {
int conCount = 0;
for ( Entity e : importedThings ) {
- Results r = emApp2.getConnectedEntities( e, "related", null, Level.IDS);
+ Results r = emApp2.getTargetEntities(e, "related", null, Level.IDS);
List<ConnectionRef> connections = r.getConnections();
conCount += connections.size();
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportConnectionsTest.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportConnectionsTest.java b/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportConnectionsTest.java
index 2c9db95..8ca3caa 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportConnectionsTest.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportConnectionsTest.java
@@ -31,7 +31,6 @@ import org.apache.usergrid.NewOrgAppAdminRule;
import org.apache.usergrid.ServiceITSetup;
import org.apache.usergrid.ServiceITSetupImpl;
import org.apache.usergrid.cassandra.ClearShiroSubject;
-import org.apache.usergrid.corepersistence.util.CpNamingUtils;
import org.apache.usergrid.persistence.EntityManager;
import org.apache.usergrid.persistence.PagingResultsIterator;
import org.apache.usergrid.persistence.Results;
@@ -59,7 +58,7 @@ public class ImportConnectionsTest {
@Test
- @Ignore("Because getConnectedEntities() is broken")
+ @Ignore("Because getTargetEntities() is broken")
public void testCreateAndCountConnectionsViaGet() throws Exception {
doTestCreateAndCountConnections(new ConnectionCounter() {
@@ -135,8 +134,8 @@ public class ImportConnectionsTest {
EntityManager emMgmtApp = setup.getEmf()
.getEntityManager(setup.getEmf().getManagementAppId() );
- Results entities = emMgmtApp.getConnectedEntities(
- importRoot, "includes", null, Query.Level.ALL_PROPERTIES );
+ Results entities = emMgmtApp.getTargetEntities(
+ importRoot, "includes", null, Query.Level.ALL_PROPERTIES);
PagingResultsIterator itr = new PagingResultsIterator( entities );
int count = 0;
@@ -164,7 +163,7 @@ public class ImportConnectionsTest {
query.setConnectionType("includes");
query.setLimit(10000);
- Results entities = emMgmtApp.searchConnectedEntities( importRoot, query );
+ Results entities = emMgmtApp.searchTargetEntities(importRoot, query);
return entities.size();
// PagingResultsIterator itr = new PagingResultsIterator( entities );
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/5b1dfa1c/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportServiceIT.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportServiceIT.java b/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportServiceIT.java
index fd199e6..e8d6081 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportServiceIT.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/importer/ImportServiceIT.java
@@ -28,7 +28,6 @@ import org.apache.usergrid.ServiceITSetup;
import org.apache.usergrid.ServiceITSetupImpl;
import org.apache.usergrid.batch.JobExecution;
import org.apache.usergrid.batch.service.JobSchedulerService;
-import org.apache.usergrid.cassandra.CassandraResource;
import org.apache.usergrid.cassandra.ClearShiroSubject;
import org.apache.usergrid.management.OrganizationInfo;
import org.apache.usergrid.management.UserInfo;
@@ -39,7 +38,6 @@ import org.apache.usergrid.persistence.*;
import org.apache.usergrid.persistence.entities.Import;
import org.apache.usergrid.persistence.entities.JobData;
import org.apache.usergrid.persistence.exceptions.EntityNotFoundException;
-import org.apache.usergrid.persistence.index.impl.ElasticSearchResource;
import org.apache.usergrid.persistence.Query.Level;
import org.apache.usergrid.persistence.index.utils.UUIDUtils;
import org.apache.usergrid.services.notifications.QueueListener;
@@ -248,7 +246,7 @@ public class ImportServiceIT {
Results r;
List<ConnectionRef> connections;
for (int i = 0; i < 2; i++) {
- r = em.getConnectedEntities(entities.get(i), "related", null, Level.IDS);
+ r = em.getTargetEntities(entities.get(i), "related", null, Level.IDS);
connections = r.getConnections();
assertNotNull(connections);
}
@@ -359,7 +357,7 @@ public class ImportServiceIT {
Results r;
List<ConnectionRef> connections;
for (int i = 0; i < 2; i++) {
- r = em.getConnectedEntities(entities.get(i), "related", null, Level.IDS);
+ r = em.getTargetEntities(entities.get(i), "related", null, Level.IDS);
connections = r.getConnections();
assertNotNull(connections);
}
[2/8] incubator-usergrid git commit: fix paging
Posted by to...@apache.org.
fix paging
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/9636aead
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/9636aead
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/9636aead
Branch: refs/heads/USERGRID-641
Commit: 9636aead6549bb308cc491777fcb9eb256169556
Parents: bc3cafb
Author: Shawn Feldman <sf...@apache.org>
Authored: Tue May 12 12:59:27 2015 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Tue May 12 12:59:27 2015 -0700
----------------------------------------------------------------------
stack/core/src/test/resources/usergrid-custom-test.properties | 2 ++
.../usergrid/management/cassandra/ManagementServiceImpl.java | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9636aead/stack/core/src/test/resources/usergrid-custom-test.properties
----------------------------------------------------------------------
diff --git a/stack/core/src/test/resources/usergrid-custom-test.properties b/stack/core/src/test/resources/usergrid-custom-test.properties
index a69e01f..a6379e8 100644
--- a/stack/core/src/test/resources/usergrid-custom-test.properties
+++ b/stack/core/src/test/resources/usergrid-custom-test.properties
@@ -25,4 +25,6 @@ elasticsearch.number_replicas=0
elasticsearch.index_prefix=core_tests
elasticsearch.queue_impl.resolution=true
+elasticsearch.buffer_timeout=1
+
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9636aead/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
index fba3066..c520aac 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
@@ -1481,7 +1481,7 @@ public class ManagementServiceImpl implements ManagementService {
organizations.put( entity.getUuid(), path );
}
- results = results.getNextPageResults();
+ results = results.hasMoreResults() ? results.getNextPageResults() : null ;
}while(results != null);
return organizations;
[3/8] incubator-usergrid git commit: fix app info name,
issue with doc id parsing by _
Posted by to...@apache.org.
fix app info name, issue with doc id parsing by _
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/0d2864a3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/0d2864a3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/0d2864a3
Branch: refs/heads/USERGRID-641
Commit: 0d2864a3eb6cb212a2fd4657cd092f413acd06e3
Parents: 9636aea
Author: Shawn Feldman <sf...@apache.org>
Authored: Tue May 12 16:43:57 2015 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Tue May 12 16:43:57 2015 -0700
----------------------------------------------------------------------
.../apache/usergrid/corepersistence/util/CpNamingUtils.java | 8 ++++----
.../management/cassandra/ManagementServiceImpl.java | 7 +------
.../java/org/apache/usergrid/management/EmailFlowIT.java | 9 +++++++--
3 files changed, 12 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0d2864a3/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java
index b8d410d..e15efe1 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/util/CpNamingUtils.java
@@ -60,11 +60,11 @@ public class CpNamingUtils {
/**
* Information about applications is stored in the management app using these types
*/
- public static final String APPLICATION_INFO = "application_info";
- public static final String APPLICATION_INFOS = "application_infos";
+ public static final String APPLICATION_INFO = "application-info";
+ public static final String APPLICATION_INFOS = "application-infos";
- public static final String DELETED_APPLICATION_INFO = "deleted_application_info";
- public static final String DELETED_APPLICATION_INFOS = "deleted_application_infos";
+ public static final String DELETED_APPLICATION_INFO = "deleted-application-info";
+ public static final String DELETED_APPLICATION_INFOS = "deleted-application-infos";
/**
* The name of the map that holds our entity id->type mapping
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0d2864a3/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
index c520aac..adb8365 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
@@ -1849,12 +1849,7 @@ public class ManagementServiceImpl implements ManagementService {
return null;
}
EntityManager em = emf.getEntityManager( smf.getManagementAppId() );
- EntityRef mgmtAppRef = new SimpleEntityRef( Schema.TYPE_APPLICATION, smf.getManagementAppId() );
-
- final Results results = em.searchCollection(mgmtAppRef, CpNamingUtils.APPLICATION_INFOS,
- Query.fromQL("select * where " + PROPERTY_APPLICATION_ID + " = " + applicationId.toString()));
-
- Entity entity = results.getEntity();
+ Entity entity = em.get( new SimpleEntityRef(CpNamingUtils.APPLICATION_INFO, applicationId) );
if ( entity != null ) {
return new ApplicationInfo( applicationId, entity.getName() );
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0d2864a3/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java b/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java
index 9268d29..b158568 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java
@@ -28,6 +28,7 @@ import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMultipart;
+import org.apache.usergrid.CoreApplication;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
@@ -93,6 +94,8 @@ import static org.junit.Assert.assertTrue;
public class EmailFlowIT {
private static final Logger LOG = LoggerFactory.getLogger( EmailFlowIT.class );
+ @Rule
+ public org.apache.usergrid.Application app = new CoreApplication( setup );
@Rule
public ClearShiroSubject clearShiroSubject = new ClearShiroSubject();
@@ -264,13 +267,14 @@ public class EmailFlowIT {
final String adminEmail = uniqueEmail();
final String adminPasswd = "testpassword";
- OrganizationOwnerInfo orgOwner = createOwnerAndOrganization( orgName, appName, adminUserName, adminEmail, adminPasswd, false, false );
+ OrganizationOwnerInfo orgOwner = createOwnerAndOrganization(orgName, appName, adminUserName, adminEmail, adminPasswd, false, false);
assertNotNull( orgOwner );
ApplicationInfo app = setup.getMgmtSvc().createApplication( orgOwner.getOrganization().getUuid(), appName );
+ this.app.refreshIndex();
//turn on app admin approval for app users
- enableAdminApproval( app.getId() );
+ enableAdminApproval(app.getId());
final String appUserUsername = uniqueUsername();
final String appUserEmail = uniqueEmail();
@@ -362,6 +366,7 @@ public class EmailFlowIT {
enableEmailConfirmation( app.getId() );
enableAdminApproval( app.getId() );
+ setup.getEntityIndex().refresh();
final String appUserEmail = uniqueEmail();
final String appUserUsername = uniqueUsername();
[8/8] incubator-usergrid git commit: Refactor of pipeline to support
type mapping for clarity
Posted by to...@apache.org.
Refactor of pipeline to support type mapping for clarity
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/3a1784f0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/3a1784f0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/3a1784f0
Branch: refs/heads/USERGRID-641
Commit: 3a1784f0455acae20c7dfbde61e9493d572ad549
Parents: 5b1dfa1
Author: Todd Nine <tn...@apigee.com>
Authored: Tue May 19 17:05:04 2015 -0600
Committer: Todd Nine <tn...@apigee.com>
Committed: Tue May 19 18:07:47 2015 -0600
----------------------------------------------------------------------
.../corepersistence/CpEntityManager.java | 32 +-
.../corepersistence/CpEntityManagerFactory.java | 13 +-
.../corepersistence/CpRelationManager.java | 158 +++++-----
.../corepersistence/pipeline/Pipeline.java | 121 --------
.../pipeline/PipelineBuilderFactory.java | 39 ---
.../pipeline/PipelineModule.java | 9 -
.../pipeline/PipelineOperations.java | 30 ++
.../corepersistence/pipeline/read/Filter.java | 9 +-
.../pipeline/read/FilterFactory.java | 5 +-
.../pipeline/read/FilterPipeline.java | 132 +++++++++
.../pipeline/read/ReadPipelineBuilder.java | 104 -------
.../pipeline/read/ReadPipelineBuilderImpl.java | 296 -------------------
.../pipeline/read/collect/EntityFilter.java | 68 -----
.../read/collect/EntityResumeFilter.java | 68 +++++
.../read/elasticsearch/CandidateIdFilter.java | 46 ++-
15 files changed, 380 insertions(+), 750 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/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 63018cb..7a56631 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
@@ -17,14 +17,29 @@ package org.apache.usergrid.corepersistence;
import java.nio.ByteBuffer;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeMap;
+import java.util.TreeSet;
+import java.util.UUID;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.Assert;
import org.apache.usergrid.corepersistence.asyncevents.AsyncEventService;
-import org.apache.usergrid.corepersistence.pipeline.PipelineBuilderFactory;
+import org.apache.usergrid.corepersistence.pipeline.read.CollectorFactory;
+import org.apache.usergrid.corepersistence.pipeline.read.FilterFactory;
import org.apache.usergrid.corepersistence.util.CpEntityMapUtils;
import org.apache.usergrid.corepersistence.util.CpNamingUtils;
import org.apache.usergrid.persistence.AggregateCounter;
@@ -165,7 +180,8 @@ public class CpEntityManager implements EntityManager {
private final AsyncEventService indexService;
- private PipelineBuilderFactory pipelineBuilderFactory;
+ private final FilterFactory filterFactory;
+ private final CollectorFactory collectorFactory;
private boolean skipAggregateCounters;
private MetricsFactory metricsFactory;
@@ -207,7 +223,7 @@ 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 UUID applicationId ) {
+ final FilterFactory filterFactory, final CollectorFactory collectorFactory, final UUID applicationId ) {
this.entityManagerFig = entityManagerFig;
@@ -216,8 +232,10 @@ 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" );
- this.pipelineBuilderFactory = pipelineBuilderFactory;
+ Preconditions.checkNotNull( filterFactory, "filterFactory must not be null" );
+ Preconditions.checkNotNull( collectorFactory, "collectorFactory must not be null" );
+ this.filterFactory = filterFactory;
+ this.collectorFactory = collectorFactory;
this.managerCache = managerCache;
@@ -732,7 +750,7 @@ public class CpEntityManager implements EntityManager {
Preconditions.checkNotNull( entityRef, "entityRef cannot be null" );
CpRelationManager relationManager =
- new CpRelationManager( metricsFactory, managerCache, pipelineBuilderFactory, indexService, this, entityManagerFig, applicationId, entityRef );
+ new CpRelationManager( metricsFactory, managerCache, filterFactory, collectorFactory, indexService, this, entityManagerFig, applicationId, entityRef );
return relationManager;
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/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 63e2869..5055538 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
@@ -35,7 +35,8 @@ import org.apache.commons.lang.StringUtils;
import org.apache.usergrid.corepersistence.asyncevents.AsyncEventService;
import org.apache.usergrid.corepersistence.index.ReIndexService;
-import org.apache.usergrid.corepersistence.pipeline.PipelineBuilderFactory;
+import org.apache.usergrid.corepersistence.pipeline.read.CollectorFactory;
+import org.apache.usergrid.corepersistence.pipeline.read.FilterFactory;
import org.apache.usergrid.corepersistence.util.CpNamingUtils;
import org.apache.usergrid.exception.ConflictException;
import org.apache.usergrid.persistence.AbstractEntity;
@@ -125,7 +126,8 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
private final EntityIndex entityIndex;
private final MetricsFactory metricsFactory;
private final AsyncEventService indexService;
- private final PipelineBuilderFactory pipelineBuilderFactory;
+ private final FilterFactory filterFactory;
+ private final CollectorFactory collectorFactory;
public CpEntityManagerFactory( final CassandraService cassandraService, final CounterUtils counterUtils,
final Injector injector ) {
@@ -139,7 +141,8 @@ 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.filterFactory = injector.getInstance( FilterFactory.class );
+ this.collectorFactory = injector.getInstance( CollectorFactory.class );
this.applicationIdCache = injector.getInstance(ApplicationIdCacheFactory.class).getInstance(
getManagementEntityManager() );
@@ -198,7 +201,9 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
private EntityManager _getEntityManager( UUID applicationId ) {
- EntityManager em = new CpEntityManager(cassandraService, counterUtils, indexService, managerCache, metricsFactory, entityManagerFig, pipelineBuilderFactory, applicationId );
+ EntityManager em = new CpEntityManager(cassandraService, counterUtils, indexService, managerCache, metricsFactory, entityManagerFig,
+
+ filterFactory, collectorFactory, applicationId );
return em;
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/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 4993d88..6201fe8 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
@@ -17,16 +17,23 @@
package org.apache.usergrid.corepersistence;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.UUID;
-import org.apache.usergrid.persistence.graph.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.Assert;
import org.apache.usergrid.corepersistence.asyncevents.AsyncEventService;
-import org.apache.usergrid.corepersistence.pipeline.PipelineBuilderFactory;
-import org.apache.usergrid.corepersistence.pipeline.read.ReadPipelineBuilder;
+import org.apache.usergrid.corepersistence.pipeline.read.CollectorFactory;
+import org.apache.usergrid.corepersistence.pipeline.read.FilterFactory;
+import org.apache.usergrid.corepersistence.pipeline.read.FilterPipeline;
import org.apache.usergrid.corepersistence.pipeline.read.ResultsPage;
import org.apache.usergrid.corepersistence.results.ObservableQueryExecutor;
import org.apache.usergrid.corepersistence.util.CpEntityMapUtils;
@@ -49,6 +56,10 @@ import org.apache.usergrid.persistence.core.metrics.MetricsFactory;
import org.apache.usergrid.persistence.core.scope.ApplicationScope;
import org.apache.usergrid.persistence.entities.Group;
import org.apache.usergrid.persistence.entities.User;
+import org.apache.usergrid.persistence.graph.Edge;
+import org.apache.usergrid.persistence.graph.GraphManager;
+import org.apache.usergrid.persistence.graph.SearchByEdge;
+import org.apache.usergrid.persistence.graph.SearchByEdgeType;
import org.apache.usergrid.persistence.graph.impl.SimpleEdge;
import org.apache.usergrid.persistence.graph.impl.SimpleSearchByEdge;
import org.apache.usergrid.persistence.graph.impl.SimpleSearchByEdgeType;
@@ -63,7 +74,6 @@ import org.apache.usergrid.persistence.model.entity.SimpleId;
import org.apache.usergrid.persistence.schema.CollectionInfo;
import org.apache.usergrid.utils.MapUtils;
-import com.codahale.metrics.Timer;
import com.google.common.base.Optional;
import com.google.common.base.Preconditions;
@@ -97,7 +107,6 @@ public class CpRelationManager implements RelationManager {
private final EntityManagerFig entityManagerFig;
private ManagerCache managerCache;
- private final PipelineBuilderFactory pipelineBuilderFactory;
private EntityManager em;
@@ -111,13 +120,16 @@ public class CpRelationManager implements RelationManager {
private final AsyncEventService indexService;
- private MetricsFactory metricsFactory;
- private Timer updateCollectionTimer;
+
+ private final FilterFactory filterFactory;
+ private final CollectorFactory collectorFactory;
+
public CpRelationManager( final MetricsFactory metricsFactory, final ManagerCache managerCache,
- final PipelineBuilderFactory pipelineBuilderFactory, final AsyncEventService indexService,
- final EntityManager em, final EntityManagerFig entityManagerFig, final UUID applicationId, final EntityRef headEntity) {
+ final FilterFactory filterFactory, final CollectorFactory collectorFactory, final AsyncEventService indexService,
+ final EntityManager em, final EntityManagerFig entityManagerFig, final UUID applicationId,
+ final EntityRef headEntity ) {
Assert.notNull( em, "Entity manager cannot be null" );
@@ -134,11 +146,9 @@ public class CpRelationManager implements RelationManager {
this.headEntity = headEntity;
this.managerCache = managerCache;
this.applicationScope = CpNamingUtils.getApplicationScope( applicationId );
- this.pipelineBuilderFactory = pipelineBuilderFactory;
- this.metricsFactory = metricsFactory;
- this.updateCollectionTimer =
- metricsFactory.getTimer( CpRelationManager.class, "relation.manager.es.update.collection" );
+ this.filterFactory = filterFactory;
+ this.collectorFactory = collectorFactory;
if ( logger.isDebugEnabled() ) {
logger.debug( "Loading head entity {}:{} from app {}", new Object[] {
@@ -162,7 +172,7 @@ public class CpRelationManager implements RelationManager {
public Set<String> getCollectionIndexes( String collectionName ) throws Exception {
GraphManager gm = managerCache.getGraphManager( applicationScope );
- String edgeTypePrefix = CpNamingUtils.getEdgeTypeFromCollectionName(collectionName);
+ String edgeTypePrefix = CpNamingUtils.getEdgeTypeFromCollectionName( collectionName );
logger.debug( "getCollectionIndexes(): Searching for edge type prefix {} to target {}:{}", new Object[] {
edgeTypePrefix, cpHeadEntity.getId().getType(), cpHeadEntity.getId().getUuid()
@@ -198,7 +208,7 @@ public class CpRelationManager implements RelationManager {
private Map<EntityRef, Set<String>> getContainers() {
- return getContainers(-1, null, null);
+ return getContainers( -1, null, null );
}
@@ -215,14 +225,14 @@ public class CpRelationManager implements RelationManager {
Observable<Edge> edges =
gm.getEdgeTypesToTarget( new SimpleSearchEdgeType( cpHeadEntity.getId(), edgeType, null ) )
- .flatMap(new Func1<String, Observable<Edge>>() {
+ .flatMap( new Func1<String, Observable<Edge>>() {
@Override
- public Observable<Edge> call(final String edgeType) {
+ public Observable<Edge> call( final String edgeType ) {
return gm.loadEdgesToTarget(
- new SimpleSearchByEdgeType(cpHeadEntity.getId(), edgeType, Long.MAX_VALUE,
- SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent()));
+ new SimpleSearchByEdgeType( cpHeadEntity.getId(), edgeType, Long.MAX_VALUE,
+ SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent() ) );
}
- });
+ } );
//if our limit is set, take them. Note this logic is still borked, we can't possibly fit everything in memmory
if ( limit > -1 ) {
@@ -250,7 +260,7 @@ public class CpRelationManager implements RelationManager {
Id entityId = new SimpleId( entity.getUuid(), entity.getType() );
- String edgeType = CpNamingUtils.getEdgeTypeFromConnectionType(connectionType);
+ String edgeType = CpNamingUtils.getEdgeTypeFromConnectionType( connectionType );
logger.debug( "isConnectionMember(): Checking for edge type {} from {}:{} to {}:{}", new Object[] {
edgeType, headEntity.getType(), headEntity.getUuid(), entity.getType(), entity.getUuid()
@@ -271,13 +281,13 @@ public class CpRelationManager implements RelationManager {
Id entityId = new SimpleId( entity.getUuid(), entity.getType() );
- String edgeType = CpNamingUtils.getEdgeTypeFromCollectionName(collectionName);
+ String edgeType = CpNamingUtils.getEdgeTypeFromCollectionName( collectionName );
logger.debug( "isCollectionMember(): Checking for edge type {} from {}:{} to {}:{}", new Object[] {
edgeType, headEntity.getType(), headEntity.getUuid(), entity.getType(), entity.getUuid()
} );
- GraphManager gm = managerCache.getGraphManager(applicationScope);
+ GraphManager gm = managerCache.getGraphManager( applicationScope );
Observable<Edge> edges = gm.loadEdgeVersions(
new SimpleSearchByEdge( new SimpleId( headEntity.getUuid(), headEntity.getType() ), edgeType, entityId,
Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent() ) );
@@ -343,7 +353,8 @@ public class CpRelationManager implements RelationManager {
return null;
}
- return addToCollection( collectionName, itemRef, ( collection != null && collection.getLinkedCollection() != null ) );
+ return addToCollection( collectionName, itemRef,
+ ( collection != null && collection.getLinkedCollection() != null ) );
}
@@ -403,7 +414,7 @@ public class CpRelationManager implements RelationManager {
logger.debug( "Wrote edge {}", edge );
}
- indexService.queueNewEdge(applicationScope, memberEntity, edge);
+ indexService.queueNewEdge( applicationScope, memberEntity, edge );
if ( logger.isDebugEnabled() ) {
@@ -518,7 +529,8 @@ public class CpRelationManager implements RelationManager {
//run our delete
- final Edge collectionToItemEdge = createCollectionEdge( cpHeadEntity.getId(), collectionName, memberEntity.getId() );
+ final Edge collectionToItemEdge =
+ createCollectionEdge( cpHeadEntity.getId(), collectionName, memberEntity.getId() );
gm.markEdge( collectionToItemEdge ).toBlocking().last();
@@ -575,7 +587,7 @@ public class CpRelationManager implements RelationManager {
results = em.getCollection( headEntity, srcRelationName, null, 5000, Level.REFS, false );
}
else {
- results = em.getTargetEntities(headEntity, srcRelationName, null, Level.REFS);
+ results = em.getTargetEntities( headEntity, srcRelationName, null, Level.REFS );
}
if ( ( results != null ) && ( results.size() > 0 ) ) {
@@ -617,50 +629,54 @@ public class CpRelationManager implements RelationManager {
query = adjustQuery( query );
+ final FilterPipeline<Id> filterPipeline = new FilterPipeline( applicationScope, query.getCursor(), query.getLimit() ).withFilter( filterFactory.getEntityIdFilter( cpHeadEntity.getId() ) );
- final ReadPipelineBuilder readPipelineBuilder =
- pipelineBuilderFactory.createReadPipelineBuilder(applicationScope);
- //set our fields applicable to both operations
- readPipelineBuilder.withCursor(query.getCursor());
- readPipelineBuilder.withLimit( Optional.of(query.getLimit()));
-
- //TODO, this should be removed when the CP relation manager is removed
- readPipelineBuilder.setStartId( cpHeadEntity.getId() );
+ final FilterPipeline<org.apache.usergrid.persistence.model.entity.Entity> entityFilterPipeline;
if ( query.isGraphSearch() ) {
- readPipelineBuilder.getCollection( collectionName );
+ entityFilterPipeline = filterPipeline.withFilter( filterFactory.readGraphCollectionFilter( collectionName ) )
+ .withFilter( filterFactory.entityLoadFilter() );
}
else {
final String entityType = collection.getType();
- readPipelineBuilder.getCollectionWithQuery( collectionName, entityType, query.getQl().get() );
+ entityFilterPipeline = filterPipeline.withFilter(
+ filterFactory.elasticSearchCollectionFilter( query.getQl().get(), collectionName, entityType ) )
+ .withFilter( filterFactory.candidateEntityFilter() );
}
- final Observable<ResultsPage> resultsObservable = readPipelineBuilder.execute();
+ final Observable<ResultsPage> resultsObservable =
+ entityFilterPipeline.withFilter( filterFactory.entityResumeFilter() )
+ .withCollector( collectorFactory.getResultsPageCollector() ).execute();
return new ObservableQueryExecutor( resultsObservable ).next();
}
+
@Override
- public Results searchCollectionConsistent( String collectionName, Query query, int expectedResults ) throws Exception {
+ public Results searchCollectionConsistent( String collectionName, Query query, int expectedResults )
+ throws Exception {
Results results;
long maxLength = entityManagerFig.pollForRecordsTimeout();
long sleepTime = entityManagerFig.sleep();
boolean found;
long current = System.currentTimeMillis(), length = 0;
do {
- results = searchCollection(collectionName, query);
+ results = searchCollection( collectionName, query );
length = System.currentTimeMillis() - current;
found = expectedResults == results.size();
- if(found){
+ if ( found ) {
break;
}
- Thread.sleep(sleepTime);
- }while (!found && length <= maxLength);
- if(logger.isInfoEnabled()){
- logger.info(String.format("Consistent Search finished in %s, results=%s, expected=%s...dumping stack",length, results.size(),expectedResults));
+ Thread.sleep( sleepTime );
+ }
+ while ( !found && length <= maxLength );
+ if ( logger.isInfoEnabled() ) {
+ logger.info( String
+ .format( "Consistent Search finished in %s, results=%s, expected=%s...dumping stack", length,
+ results.size(), expectedResults ) );
Thread.dumpStack();
}
return results;
@@ -836,7 +852,7 @@ public class CpRelationManager implements RelationManager {
@Override
- public Results getTargetEntities(String connectionType, String connectedEntityType, Level level)
+ public Results getTargetEntities( String connectionType, String connectedEntityType, Level level )
throws Exception {
//until this is refactored properly, we will delegate to a search by query
@@ -849,20 +865,19 @@ public class CpRelationManager implements RelationManager {
query.setEntityType( connectedEntityType );
query.setResultsLevel( level );
- return searchTargetEntities(query);
+ return searchTargetEntities( query );
}
@Override
- public Results getSourceEntities(String connType, String fromEntityType, Level resultsLevel)
- throws Exception {
+ public Results getSourceEntities( String connType, String fromEntityType, Level resultsLevel ) throws Exception {
- return getSourceEntities(connType, fromEntityType, resultsLevel, -1);
+ return getSourceEntities( connType, fromEntityType, resultsLevel, -1 );
}
@Override
- public Results getSourceEntities(String connType, String fromEntityType, Level level, int count)
+ public Results getSourceEntities( String connType, String fromEntityType, Level level, int count )
throws Exception {
// looking for edges to the head entity
@@ -895,7 +910,7 @@ public class CpRelationManager implements RelationManager {
@Override
- public Results searchTargetEntities(Query query) throws Exception {
+ public Results searchTargetEntities( Query query ) throws Exception {
Preconditions.checkNotNull( query, "query cannot be null" );
@@ -909,37 +924,40 @@ public class CpRelationManager implements RelationManager {
query = adjustQuery( query );
final String entityType = query.getEntityType();
- //set startid -- graph | es query filter -- load entities filter (verifies exists) --> results page collector -> 1.0 results
+ //set startid -- graph | es query filter -- load entities filter (verifies exists) --> results page collector
+ // -> 1.0 results
// startid -- graph edge load -- entity load (verify) from ids -> results page collector
// startid -- eq query candiddate -- entity load (verify) from canddiates -> results page collector
//startid -- graph edge load -- entity id verify --> filter to connection ref --> connection ref collector
- //startid -- eq query candiddate -- candidate id verify --> filter to connection ref --> connection ref collector
+ //startid -- eq query candiddate -- candidate id verify --> filter to connection ref --> connection ref
+ // collector
+
- final ReadPipelineBuilder readPipelineBuilder =
- pipelineBuilderFactory.createReadPipelineBuilder(applicationScope);
- //readPipelineBuilder.startId().load().collect()
+ final FilterPipeline<Id> filterPipeline =
+ new FilterPipeline( applicationScope, query.getCursor(), query.getLimit() )
+ .withFilter( filterFactory.getEntityIdFilter( cpHeadEntity.getId() ) );
- //set our fields applicable to both operations
- readPipelineBuilder
- .withCursor(query.getCursor())
- .withLimit(Optional.of(query.getLimit()))
- //TODO, this should be removed when the CP relation manager is removed
- .setStartId( cpHeadEntity.getId() );
+
+ final FilterPipeline<org.apache.usergrid.persistence.model.entity.Entity> entityFilterPipeline;
if ( query.isGraphSearch() ) {
- // if(query.getResultsLevel() == Level.ALL_PROPERTIES)
- readPipelineBuilder.getConnection( connection );
- //else
+ entityFilterPipeline = filterPipeline.withFilter( filterFactory.readGraphConnectionFilter( connection ) )
+ .withFilter( filterFactory.entityLoadFilter() );
}
+
else {
- readPipelineBuilder.getConnectionWithQuery( connection, Optional.fromNullable( entityType ),
- query.getQl().get() );
+
+ entityFilterPipeline = filterPipeline.withFilter( filterFactory
+ .elasticSearchConnectionFilter( query.getQl().get(), connection, Optional.fromNullable( entityType ) ) )
+ .withFilter( filterFactory.candidateEntityFilter() );
}
- final Observable<ResultsPage> resultsObservable = readPipelineBuilder.execute();
+ final Observable<ResultsPage> resultsObservable =
+ entityFilterPipeline.withFilter( filterFactory.entityResumeFilter() )
+ .withCollector( collectorFactory.getResultsPageCollector() ).execute();
return new ObservableQueryExecutor( resultsObservable ).next();
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/Pipeline.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/Pipeline.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/Pipeline.java
deleted file mode 100644
index 26cf346..0000000
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/Pipeline.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * 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.pipeline;
-
-
-import java.util.List;
-
-import org.apache.usergrid.corepersistence.pipeline.cursor.RequestCursor;
-import org.apache.usergrid.corepersistence.pipeline.cursor.ResponseCursor;
-import org.apache.usergrid.corepersistence.pipeline.read.Collector;
-import org.apache.usergrid.corepersistence.pipeline.read.FilterResult;
-import org.apache.usergrid.persistence.core.scope.ApplicationScope;
-
-import com.google.common.base.Optional;
-
-import rx.Observable;
-
-
-/**
- * A pipeline that will allow us to build a traversal command for execution
- *
- * See http://martinfowler.com/articles/collection-pipeline/ for some examples
- *
- * TODO: Re work the cursor and limit phases. They need to be lazily evaluated, not added on build time
- */
-public class Pipeline<R> {
-
-
- private final ApplicationScope applicationScope;
- private final List<PipelineOperation> idPipelineOperationList;
- private final Collector<?, R> collector;
- private final RequestCursor requestCursor;
-
- private final int limit;
-
-
- private int idCount = 0;
-
-
- /**
- * Our first pass, where we implement our start point as an Id until we can use this to perform our entire
- * traversal. Eventually as we untangle the existing Query service nightmare, the sourceId will be remove and
- * should only be traversed from the root application
- */
- public Pipeline( final ApplicationScope applicationScope, final List<PipelineOperation> pipelineOperations,
- final Collector<?, R> collector, final Optional<String> cursor, final int limit ) {
-
- this.applicationScope = applicationScope;
- this.idPipelineOperationList = pipelineOperations;
- this.collector = collector;
- this.limit = limit;
-
- this.requestCursor = new RequestCursor( cursor );
- }
-
-
- /**
- * Execute the pipline construction, returning an observable of results
- * @return
- */
- public Observable<R> execute(){
-
-
- Observable traverseObservable = Observable.just( new FilterResult<>( applicationScope.getApplication(), Optional.absent() ));
-
- //build our traversal commands
- for ( PipelineOperation pipelineOperation : idPipelineOperationList ) {
- setState( pipelineOperation );
-
- //TODO, see if we can wrap this observable in our ObservableTimer so we can see how long each filter takes
-
-
- traverseObservable = traverseObservable.compose( pipelineOperation );
- }
-
-
- setState( collector );
-
- final Observable<R> response = traverseObservable.compose( collector );
-
-
- //append the optional cursor into the response for the caller to use
- return response;
- }
-
-
-
-
- /**
- * Set the id of the state
- */
- private void setState( final PipelineOperation pipelineOperation ) {
-
-
- final PipelineContext context = new PipelineContext( applicationScope, requestCursor,
- limit, idCount );
-
- pipelineOperation.setContext( context );
-
- //done for clarity
- idCount++;
-
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineBuilderFactory.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineBuilderFactory.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineBuilderFactory.java
deleted file mode 100644
index 9916bc1..0000000
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineBuilderFactory.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * 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.pipeline;
-
-
-import org.apache.usergrid.corepersistence.pipeline.read.ReadPipelineBuilder;
-import org.apache.usergrid.persistence.core.scope.ApplicationScope;
-
-
-/**
- * Factory for creating pipeline builders
- */
-public interface PipelineBuilderFactory {
-
-
- /**
- * Create a read pipeline builder
- * @param applicationScope
- * @return
- */
- ReadPipelineBuilder createReadPipelineBuilder( final ApplicationScope applicationScope );
-}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineModule.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineModule.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineModule.java
index 3018718..ef696bd 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineModule.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineModule.java
@@ -22,9 +22,6 @@ package org.apache.usergrid.corepersistence.pipeline;
import org.apache.usergrid.corepersistence.pipeline.read.CollectorFactory;
import org.apache.usergrid.corepersistence.pipeline.read.FilterFactory;
-import org.apache.usergrid.corepersistence.pipeline.read.ReadFilterFactoryImpl;
-import org.apache.usergrid.corepersistence.pipeline.read.ReadPipelineBuilder;
-import org.apache.usergrid.corepersistence.pipeline.read.ReadPipelineBuilderImpl;
import com.google.inject.AbstractModule;
import com.google.inject.assistedinject.FactoryModuleBuilder;
@@ -42,12 +39,6 @@ public class PipelineModule extends AbstractModule {
// bind( FilterFactory.class ).to( ReadFilterFactoryImpl.class );
- //Use Guice to create the builder since we don't really need to do anything
- //other than DI when creating the filters
- install( new FactoryModuleBuilder().implement( ReadPipelineBuilder.class, ReadPipelineBuilderImpl.class )
- .build( PipelineBuilderFactory.class ) );
-
-
// install( new Factory)
//Use Guice to create the builder since we don't really need to do anything
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineOperations.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineOperations.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineOperations.java
new file mode 100644
index 0000000..3929a97
--- /dev/null
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/PipelineOperations.java
@@ -0,0 +1,30 @@
+/*
+ * 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.pipeline;
+
+
+public interface PipelineOperations {
+
+ /**
+ * Add the pipeline operation to the set of operations
+ * @param po
+ */
+ void add( PipelineOperation po );
+}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/Filter.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/Filter.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/Filter.java
index 054a85a..ee01602 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/Filter.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/Filter.java
@@ -28,4 +28,11 @@ import org.apache.usergrid.corepersistence.pipeline.PipelineOperation;
* an observable of FilterResults. Filters should never emit groups or objects that represent collections. Items should
* always be emitted 1 at a time. It is the responsibility of the collector to aggregate results.
*/
-public interface Filter<T, R> extends PipelineOperation<T, FilterResult<R>> {}
+public interface Filter<T, R> extends PipelineOperation<T, FilterResult<R>> {
+
+ /**
+ * Get the builder for the next phase
+ * @return
+ */
+// B getNextBuilder();
+}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterFactory.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterFactory.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterFactory.java
index a2f1605..d297c2a 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterFactory.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterFactory.java
@@ -20,8 +20,7 @@
package org.apache.usergrid.corepersistence.pipeline.read;
-import org.apache.usergrid.corepersistence.pipeline.read.collect.EntityFilter;
-import org.apache.usergrid.corepersistence.pipeline.read.collect.IdCursorSerializer;
+import org.apache.usergrid.corepersistence.pipeline.read.collect.EntityResumeFilter;
import org.apache.usergrid.corepersistence.pipeline.read.elasticsearch.CandidateEntityFilter;
import org.apache.usergrid.corepersistence.pipeline.read.elasticsearch.CandidateIdFilter;
import org.apache.usergrid.corepersistence.pipeline.read.elasticsearch.ElasticSearchCollectionFilter;
@@ -139,5 +138,5 @@ public interface FilterFactory {
* Create a new instance of our entity filter
* @return
*/
- EntityFilter entityFilter();
+ EntityResumeFilter entityResumeFilter();
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterPipeline.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterPipeline.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterPipeline.java
new file mode 100644
index 0000000..f8bbdd8
--- /dev/null
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/FilterPipeline.java
@@ -0,0 +1,132 @@
+/*
+ * 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.pipeline.read;
+
+
+import org.apache.usergrid.corepersistence.pipeline.PipelineContext;
+import org.apache.usergrid.corepersistence.pipeline.PipelineOperation;
+import org.apache.usergrid.corepersistence.pipeline.cursor.RequestCursor;
+import org.apache.usergrid.persistence.core.scope.ApplicationScope;
+import org.apache.usergrid.persistence.core.util.ValidationUtils;
+import org.apache.usergrid.persistence.model.entity.Id;
+
+import com.google.common.base.Optional;
+import com.google.common.base.Preconditions;
+
+import rx.Observable;
+
+
+/**
+ * Pipeline for applying our UG domain specific filters.
+ *
+ * Modeled after an observable, with typing to allow input of specific filters
+ *
+ * @param InputType the input type in the current pipeline state
+ */
+public class FilterPipeline<InputType> {
+
+
+ private int idCount = 0;
+
+ private final ApplicationScope applicationScope;
+
+
+ private final RequestCursor requestCursor;
+ private int limit;
+
+ //Generics hell, intentionally without a generic, we check at the filter level
+ private Observable currentObservable;
+
+
+ /**
+ * Create our filter pipeline
+ */
+ public FilterPipeline( final ApplicationScope applicationScope, final Optional<String> cursor, final int limit ) {
+
+
+ ValidationUtils.validateApplicationScope( applicationScope );
+ Preconditions.checkNotNull( cursor, "cursor optional is required" );
+ Preconditions.checkArgument( limit > 0, "limit must be > 0" );
+
+
+ this.applicationScope = applicationScope;
+
+ //init our cursor to empty
+ this.requestCursor = new RequestCursor( cursor );
+
+ //set the default limit
+ this.limit = limit;
+
+ //set our observable to start at the application
+ final FilterResult<Id> filter = new FilterResult<>( applicationScope.getApplication(), Optional.absent() );
+ this.currentObservable = Observable.just( filter );
+ }
+
+
+ public <OutputType> FilterPipeline<OutputType> withFilter(
+ final Filter<? super InputType, ? extends OutputType> filter ) {
+
+
+ setUp( filter );
+
+ return ( FilterPipeline<OutputType> ) this;
+ }
+
+
+ public <OutputType> FilterPipeline<OutputType> withCollector(
+ final Collector<? super InputType, ? extends OutputType> collector ) {
+
+
+ setUp( collector );
+
+ return ( FilterPipeline<OutputType> ) this;
+ }
+
+
+ private <OutputType> void setUp(
+ final PipelineOperation<? super InputType, ? extends OutputType> pipelineOperation ) {
+ setState( pipelineOperation );
+
+ currentObservable = currentObservable.compose( pipelineOperation );
+ }
+
+
+ /**
+ * Return the observable of the filter pipeline
+ */
+ public Observable<InputType> execute() {
+ return currentObservable;
+ }
+
+
+ /**
+ * Set the id of the state
+ */
+ private void setState( final PipelineOperation pipelineOperation ) {
+
+
+ final PipelineContext context = new PipelineContext( applicationScope, requestCursor, limit, idCount );
+
+ pipelineOperation.setContext( context );
+
+ //done for clarity
+ idCount++;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/ReadPipelineBuilder.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/ReadPipelineBuilder.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/ReadPipelineBuilder.java
deleted file mode 100644
index d0e87b3..0000000
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/ReadPipelineBuilder.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * 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.pipeline.read;
-
-
-import org.apache.usergrid.persistence.model.entity.Id;
-
-import com.google.common.base.Optional;
-
-import rx.Observable;
-
-
-/**
- * An instance of a pipeline builder for building commands on our read pipline
- *
- * Each invocation of the method will assemble the underlying pipe and updating it's state
- *
- * Results are added by invoking execute.
- */
-public interface ReadPipelineBuilder {
-
-
- /**
- * Set the cursor
- * @param cursor
- */
- ReadPipelineBuilder withCursor(final Optional<String> cursor);
-
- /**
- * Set the limit of our page sizes
- * @param limit
- * @return
- */
- ReadPipelineBuilder withLimit(final Optional<Integer> limit);
-
- /**
- * An operation to bridge 2.0-> 1.0. Should be removed when everyone uses the pipeline
- * @param id
- * @return
- */
- ReadPipelineBuilder setStartId(final Id id);
-
-
- /**
- * Add a get entity to the pipeline
- */
- ReadPipelineBuilder getEntityViaCollection( final String collectionName, final Id entityId );
-
-
- /**
- * Add get Collection from our previous source
- */
- ReadPipelineBuilder getCollection( final String collectionName );
-
- /**
- * Get all entities with a query
- */
- ReadPipelineBuilder getCollectionWithQuery( final String collectionName,final String entityType, final String query);
-
- /**
- * Get an entity via the connection name and entity Id
- */
- ReadPipelineBuilder getEntityViaConnection( final String connectionName, final Id entityId );
-
- /**
- * Get all entities in a connection by the connection name
- */
- ReadPipelineBuilder getConnection( final String connectionName );
-
- /**
- * Get all entities in a connection of the specified connection type
- */
- ReadPipelineBuilder getConnection( final String connectionName, final String entityType );
-
- /**
- * Get all entities in a connection with a query and a target entity type
- */
- ReadPipelineBuilder getConnectionWithQuery( final String connectionName, final Optional<String> entityType,
- final String query );
-
-
- /**
- * Load our entity results when our previous filter calls graph
- * @return
- */
- Observable<ResultsPage> execute();
-}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/ReadPipelineBuilderImpl.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/ReadPipelineBuilderImpl.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/ReadPipelineBuilderImpl.java
deleted file mode 100644
index 28446ad..0000000
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/ReadPipelineBuilderImpl.java
+++ /dev/null
@@ -1,296 +0,0 @@
-/*
- * 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.pipeline.read;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.usergrid.corepersistence.pipeline.Pipeline;
-import org.apache.usergrid.corepersistence.pipeline.read.elasticsearch.CandidateEntityFilter;
-import org.apache.usergrid.corepersistence.pipeline.read.graph.EntityLoadFilter;
-import org.apache.usergrid.persistence.core.scope.ApplicationScope;
-import org.apache.usergrid.persistence.core.util.ValidationUtils;
-import org.apache.usergrid.persistence.model.entity.Entity;
-import org.apache.usergrid.persistence.model.entity.Id;
-
-import com.google.common.base.Optional;
-import com.google.common.base.Preconditions;
-import com.google.inject.Inject;
-import com.google.inject.assistedinject.Assisted;
-
-import rx.Observable;
-
-
-/**
- * An implementation of our builder for piplines
- */
-public class ReadPipelineBuilderImpl implements ReadPipelineBuilder {
-
- private static final int DEFAULT_LIMIT = 10;
-
- private final FilterFactory filterFactory;
-
- private final CollectorState collectorState;
-
- private final ApplicationScope applicationScope;
-
- private final CollectorFactory collectorFactory;
-
-
- /**
- * Our pointer to our collect filter. Set or cleared with each operation that's performed so the correct results are
- * rendered
- */
- private List<Filter> filters;
-
-
- private Optional<String> cursor;
- private int limit;
-
-
- @Inject
- public ReadPipelineBuilderImpl( final FilterFactory filterFactory, final CollectorFactory collectorFactory,
- @Assisted final ApplicationScope applicationScope ) {
- this.filterFactory = filterFactory;
-
- this.applicationScope = applicationScope;
- this.collectorFactory = collectorFactory;
-
- //init our cursor to empty
- this.cursor = Optional.absent();
-
- //set the default limit
- this.limit = DEFAULT_LIMIT;
-
-
- this.collectorState = new CollectorState( );
-
- this.filters = new ArrayList<>();
- }
-
-
- @Override
- public ReadPipelineBuilder withCursor( final Optional<String> cursor ) {
- Preconditions.checkNotNull( cursor, "cursor must not be null" );
- this.cursor = cursor;
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder withLimit( final Optional<Integer> limit ) {
- Preconditions.checkNotNull( limit, "limit must not be null" );
- this.limit = limit.or( DEFAULT_LIMIT );
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder setStartId( final Id id ) {
- ValidationUtils.verifyIdentity( id );
-
- filters.add( filterFactory.getEntityIdFilter( id ) );
-
- this.collectorState.clear();
-
-
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder getEntityViaCollection( final String collectionName, final Id entityId ) {
- Preconditions.checkNotNull( collectionName, "collectionName must not be null" );
- ValidationUtils.verifyIdentity( entityId );
-
- filters.add( filterFactory.readGraphCollectionByIdFilter( collectionName, entityId ) );
-
- this.collectorState.setIdEntityLoaderFilter();
-
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder getCollection( final String collectionName ) {
- Preconditions.checkNotNull( collectionName, "collectionName must not be null" );
-
- filters.add( filterFactory.readGraphCollectionFilter( collectionName ) );
-
- this.collectorState.setIdEntityLoaderFilter();
-
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder getCollectionWithQuery( final String collectionName, final String entityType, final String query ) {
- Preconditions.checkNotNull( collectionName, "collectionName must not be null" );
- Preconditions.checkNotNull( query, "query must not be null" );
-
- //TODO, this should really be 2 a TraverseFilter with an entityLoad collector
-
- filters.add( filterFactory.elasticSearchCollectionFilter( query, collectionName, entityType ) );
-
- this.collectorState.setCandidateEntityFilter();
-
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder getEntityViaConnection( final String connectionName, final Id entityId ) {
- Preconditions.checkNotNull( connectionName, "connectionName must not be null" );
- ValidationUtils.verifyIdentity( entityId );
-
- filters.add( filterFactory.readGraphConnectionByIdFilter( connectionName, entityId ) );
- collectorState.setIdEntityLoaderFilter();
-
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder getConnection( final String connectionName ) {
- Preconditions.checkNotNull( connectionName, "connectionName must not be null" );
- filters.add( filterFactory.readGraphConnectionFilter( connectionName ) );
- collectorState.setIdEntityLoaderFilter();
-
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder getConnection( final String connectionName, final String entityType ) {
- Preconditions.checkNotNull( connectionName, "connectionName must not be null" );
- Preconditions.checkNotNull( connectionName, "entityType must not be null" );
-
- filters.add( filterFactory.readGraphConnectionByTypeFilter( connectionName, entityType ) );
-
- collectorState.setIdEntityLoaderFilter();
- return this;
- }
-
-
- @Override
- public ReadPipelineBuilder getConnectionWithQuery( final String connectionName, final Optional<String> entityType,
- final String query ) {
-
- Preconditions.checkNotNull( connectionName, "connectionName must not be null" );
- Preconditions.checkNotNull( connectionName, "entityType must not be null" );
- Preconditions.checkNotNull( query, "query must not be null" );
-
- filters.add( filterFactory.elasticSearchConnectionFilter( query, connectionName, entityType ) );
- collectorState.setCandidateEntityFilter();
- return this;
- }
-
-
- @Override
- public Observable<ResultsPage> execute() {
-
- ValidationUtils.validateApplicationScope( applicationScope );
-
-
- //add our last filter that will generate entities
- final Filter<?, Entity> entityLoadFilter = collectorState.getFinalFilter();
-
- filters.add( entityLoadFilter );
-
- //add the filter that skips the first result on resume
- final Filter<Entity, Entity> cursorEntityFilter = filterFactory.entityFilter();
-
- filters.add( cursorEntityFilter );
-
-
- //execute our collector
- final Collector<?, ResultsPage> collector = collectorFactory.getResultsPageCollector();
-
- Preconditions.checkNotNull( collector,
- "You have not specified an operation that creates a collection filter. This is required for loading "
- + "results" );
-
-
- Preconditions.checkNotNull( cursor, "A cursor should be initialized even if absent" );
-
- Preconditions.checkArgument( limit > 0, "limit must be > than 0" );
-
-
- Pipeline pipeline = new Pipeline( applicationScope, filters, collector, cursor, limit );
-
-
- return pipeline.execute();
- }
-
-
- /**
- * A mutable state for our collectors. Rather than create a new instance each time, we create a singleton
- * collector
- */
- private final class CollectorState {
-
-
- private EntityLoadFilter entityLoadCollector;
-
- private CandidateEntityFilter candidateEntityFilter;
-
- private Filter entityLoadFilter;
-
-
-
- private CollectorState( ){}
-
-
- /**
- * Set our final filter to be a load entity by Id filter
- */
- public void setIdEntityLoaderFilter() {
- if ( entityLoadCollector == null ) {
- entityLoadCollector = filterFactory.entityLoadFilter();
- }
-
-
- entityLoadFilter = entityLoadCollector;
- }
-
-
- /**
- * Set our final filter to be a load entity by candidate filter
- */
- public void setCandidateEntityFilter() {
- if ( candidateEntityFilter == null ) {
- candidateEntityFilter = filterFactory.candidateEntityFilter();
- }
-
- entityLoadFilter = candidateEntityFilter;
- }
-
-
- public void clear() {
- entityLoadFilter = null;
- }
-
-
- public Filter<?, Entity> getFinalFilter() {
- return entityLoadFilter;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/collect/EntityFilter.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/collect/EntityFilter.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/collect/EntityFilter.java
deleted file mode 100644
index daf2e7f..0000000
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/collect/EntityFilter.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * 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.pipeline.read.collect;
-
-
-import org.apache.usergrid.corepersistence.pipeline.cursor.CursorSerializer;
-import org.apache.usergrid.corepersistence.pipeline.read.AbstractPathFilter;
-import org.apache.usergrid.corepersistence.pipeline.read.Filter;
-import org.apache.usergrid.corepersistence.pipeline.read.FilterResult;
-import org.apache.usergrid.persistence.model.entity.Entity;
-import org.apache.usergrid.persistence.model.entity.Id;
-
-import com.google.common.base.Optional;
-
-import rx.Observable;
-
-
-/**
- * A filter that is used when we can potentially serialize pages via cursor. This will filter the first result, only if
- * it matches the Id that was set
- */
-public class EntityFilter extends AbstractPathFilter<Entity, Entity, Id> implements Filter<Entity, Entity> {
-
-
- @Override
- public Observable<FilterResult<Entity>> call( final Observable<FilterResult<Entity>> filterResultObservable ) {
-
- //filter only the first id, then map into our path for our next pass
-
-
- return filterResultObservable.skipWhile( filterResult -> {
-
- final Optional<Id> startFromCursor = getSeekValue();
-
- return startFromCursor.isPresent() && startFromCursor.get().equals( filterResult.getValue().getId() );
- } ).map( filterResult -> {
-
-
- final Entity entity = filterResult.getValue();
- final Id entityId = entity.getId();
-
- return createFilterResult( entity, entityId, filterResult.getPath() );
- } );
- }
-
-
- @Override
- protected CursorSerializer<Id> getCursorSerializer() {
- return IdCursorSerializer.INSTANCE;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/collect/EntityResumeFilter.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/collect/EntityResumeFilter.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/collect/EntityResumeFilter.java
new file mode 100644
index 0000000..2917b61
--- /dev/null
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/collect/EntityResumeFilter.java
@@ -0,0 +1,68 @@
+/*
+ * 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.pipeline.read.collect;
+
+
+import org.apache.usergrid.corepersistence.pipeline.cursor.CursorSerializer;
+import org.apache.usergrid.corepersistence.pipeline.read.AbstractPathFilter;
+import org.apache.usergrid.corepersistence.pipeline.read.Filter;
+import org.apache.usergrid.corepersistence.pipeline.read.FilterResult;
+import org.apache.usergrid.persistence.model.entity.Entity;
+import org.apache.usergrid.persistence.model.entity.Id;
+
+import com.google.common.base.Optional;
+
+import rx.Observable;
+
+
+/**
+ * A filter that is used when we can potentially serialize pages via cursor. This will filter the first result, only if
+ * it matches the Id that was set
+ */
+public class EntityResumeFilter extends AbstractPathFilter<Entity, Entity, Id> implements Filter<Entity, Entity> {
+
+
+ @Override
+ public Observable<FilterResult<Entity>> call( final Observable<FilterResult<Entity>> filterResultObservable ) {
+
+ //filter only the first id, then map into our path for our next pass
+
+
+ return filterResultObservable.skipWhile( filterResult -> {
+
+ final Optional<Id> startFromCursor = getSeekValue();
+
+ return startFromCursor.isPresent() && startFromCursor.get().equals( filterResult.getValue().getId() );
+ } ).map( filterResult -> {
+
+
+ final Entity entity = filterResult.getValue();
+ final Id entityId = entity.getId();
+
+ return createFilterResult( entity, entityId, filterResult.getPath() );
+ } );
+ }
+
+
+ @Override
+ protected CursorSerializer<Id> getCursorSerializer() {
+ return IdCursorSerializer.INSTANCE;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/3a1784f0/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/elasticsearch/CandidateIdFilter.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/elasticsearch/CandidateIdFilter.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/elasticsearch/CandidateIdFilter.java
index 56e1c1c..0e87141 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/elasticsearch/CandidateIdFilter.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/pipeline/read/elasticsearch/CandidateIdFilter.java
@@ -28,7 +28,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.apache.usergrid.corepersistence.pipeline.read.AbstractFilter;
-import org.apache.usergrid.corepersistence.pipeline.PipelineOperation;
import org.apache.usergrid.corepersistence.pipeline.read.Filter;
import org.apache.usergrid.corepersistence.pipeline.read.FilterResult;
import org.apache.usergrid.persistence.collection.EntityCollectionManager;
@@ -50,11 +49,10 @@ import rx.Observable;
/**
- * Responsible for verifying candidate result versions, then emitting the Ids of these versions
- * Input is a batch of candidate results, output is a stream of validated Ids
+ * Responsible for verifying candidate result versions, then emitting the Ids of these versions Input is a batch of
+ * candidate results, output is a stream of validated Ids
*/
-public class CandidateIdFilter extends AbstractFilter<Candidate, Id>
- implements Filter<Candidate, Id> {
+public class CandidateIdFilter extends AbstractFilter<Candidate, Id> implements Filter<Candidate, Id> {
private final EntityCollectionManagerFactory entityCollectionManagerFactory;
private final EntityIndexFactory entityIndexFactory;
@@ -68,9 +66,8 @@ public class CandidateIdFilter extends AbstractFilter<Candidate, Id>
}
-
@Override
- public Observable<FilterResult<Id>> call( final Observable<FilterResult<Candidate>> filterResultObservable ) {
+ public Observable<FilterResult<Id>> call( final Observable<FilterResult<Candidate>> filterResultObservable ) {
/**
@@ -87,32 +84,28 @@ public class CandidateIdFilter extends AbstractFilter<Candidate, Id>
final ApplicationEntityIndex applicationIndex =
entityIndexFactory.createApplicationEntityIndex( applicationScope );
- final Observable<FilterResult<Id>> searchIdSetObservable = filterResultObservable.buffer( pipelineContext.getLimit() ).flatMap(
- candidateResults -> {
- //flatten toa list of ids to load
- final Observable<List<Id>> candidateIds =
- Observable.from( candidateResults ).map( candidate -> candidate.getValue().getCandidateResult().getId() )
- .toList();
+ final Observable<FilterResult<Id>> searchIdSetObservable =
+ filterResultObservable.buffer( pipelineContext.getLimit() ).flatMap( candidateResults -> {
+ //flatten toa list of ids to load
+ final Observable<List<Id>> candidateIds = Observable.from( candidateResults ).map(
+ candidate -> candidate.getValue().getCandidateResult().getId() ).toList();
- //load the ids
- final Observable<VersionSet> versionSetObservable =
- candidateIds.flatMap( ids -> entityCollectionManager.getLatestVersion( ids ) );
+ //load the ids
+ final Observable<VersionSet> versionSetObservable =
+ candidateIds.flatMap( ids -> entityCollectionManager.getLatestVersion( ids ) );
- //now we have a collection, validate our canidate set is correct.
+ //now we have a collection, validate our canidate set is correct.
- return versionSetObservable.map(
- entitySet -> new EntityCollector( applicationIndex.createBatch(), entitySet, candidateResults ) )
- .doOnNext( entityCollector -> entityCollector.merge() ).flatMap(
+ return versionSetObservable.map(
+ entitySet -> new EntityCollector( applicationIndex.createBatch(), entitySet,
+ candidateResults ) ).doOnNext( entityCollector -> entityCollector.merge() ).flatMap(
entityCollector -> Observable.from( entityCollector.collectResults() ) );
- } );
+ } );
return searchIdSetObservable;
}
-
-
-
/**
* Map a new cp entity to an old entity. May be null if not present
*/
@@ -155,7 +148,6 @@ public class CandidateIdFilter extends AbstractFilter<Candidate, Id>
/**
* Validate each candidate results vs the data loaded from cass
- * @param filterCandidate
*/
private void validate( final FilterResult<Candidate> filterCandidate ) {
@@ -191,11 +183,9 @@ public class CandidateIdFilter extends AbstractFilter<Candidate, Id>
//they're the same add it
- final FilterResult<Id> result = new FilterResult<>( entityId, filterCandidate.getPath() );
+ final FilterResult<Id> result = new FilterResult<>( entityId, filterCandidate.getPath() );
results.add( result );
}
}
-
-
}
[5/8] incubator-usergrid git commit: rename vars
Posted by to...@apache.org.
rename vars
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/e3ba2b0b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/e3ba2b0b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/e3ba2b0b
Branch: refs/heads/USERGRID-641
Commit: e3ba2b0bca060b59c854e82502bade67ce01ae77
Parents: f5cb788
Author: Shawn Feldman <sf...@apache.org>
Authored: Wed May 13 10:35:18 2015 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Wed May 13 10:35:18 2015 -0700
----------------------------------------------------------------------
.../corepersistence/CpRelationManager.java | 77 ++++++++++----------
.../cassandra/ManagementServiceImpl.java | 3 +-
2 files changed, 38 insertions(+), 42 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/e3ba2b0b/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 fb66b97..bd3d137 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
@@ -19,6 +19,8 @@ package org.apache.usergrid.corepersistence;
import java.util.*;
+import org.apache.usergrid.persistence.graph.*;
+import org.apache.usergrid.utils.UUIDUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.Assert;
@@ -48,10 +50,6 @@ import org.apache.usergrid.persistence.core.metrics.MetricsFactory;
import org.apache.usergrid.persistence.core.scope.ApplicationScope;
import org.apache.usergrid.persistence.entities.Group;
import org.apache.usergrid.persistence.entities.User;
-import org.apache.usergrid.persistence.graph.Edge;
-import org.apache.usergrid.persistence.graph.GraphManager;
-import org.apache.usergrid.persistence.graph.SearchByEdge;
-import org.apache.usergrid.persistence.graph.SearchByEdgeType;
import org.apache.usergrid.persistence.graph.impl.SimpleEdge;
import org.apache.usergrid.persistence.graph.impl.SimpleSearchByEdge;
import org.apache.usergrid.persistence.graph.impl.SimpleSearchByEdgeType;
@@ -270,11 +268,11 @@ public class CpRelationManager implements RelationManager {
@SuppressWarnings( "unchecked" )
@Override
- public boolean isCollectionMember( String collName, EntityRef entity ) throws Exception {
+ public boolean isCollectionMember( String collectionName, EntityRef entity ) throws Exception {
Id entityId = new SimpleId( entity.getUuid(), entity.getType() );
- String edgeType = CpNamingUtils.getEdgeTypeFromCollectionName(collName);
+ String edgeType = CpNamingUtils.getEdgeTypeFromCollectionName(collectionName);
logger.debug( "isCollectionMember(): Checking for edge type {} from {}:{} to {}:{}", new Object[] {
edgeType, headEntity.getType(), headEntity.getUuid(), entity.getType(), entity.getUuid()
@@ -313,7 +311,6 @@ public class CpRelationManager implements RelationManager {
public Results getCollection( String collectionName, UUID startResult, int count, Level resultsLevel,
boolean reversed ) throws Exception {
-
final String ql;
if ( startResult != null ) {
@@ -332,35 +329,35 @@ public class CpRelationManager implements RelationManager {
@Override
- public Results getCollection( String collName, Query query, Level level ) throws Exception {
+ public Results getCollection( String collectionName, Query query, Level level ) throws Exception {
- return searchCollection( collName, query );
+ return searchCollection( collectionName, query );
}
// add to a named collection of the head entity
@Override
- public Entity addToCollection( String collName, EntityRef itemRef ) throws Exception {
+ public Entity addToCollection( String collectionName, EntityRef itemRef ) throws Exception {
- CollectionInfo collection = getDefaultSchema().getCollection( headEntity.getType(), collName );
+ CollectionInfo collection = getDefaultSchema().getCollection( headEntity.getType(), collectionName );
if ( ( collection != null ) && !collection.getType().equals( itemRef.getType() ) ) {
return null;
}
- return addToCollection( collName, itemRef, ( collection != null && collection.getLinkedCollection() != null ) );
+ return addToCollection( collectionName, itemRef, ( collection != null && collection.getLinkedCollection() != null ) );
}
- public Entity addToCollection( String collName, EntityRef itemRef, boolean connectBack ) throws Exception {
+ public Entity addToCollection( String collectionName, EntityRef itemRef, boolean connectBack ) throws Exception {
Id entityId = new SimpleId( itemRef.getUuid(), itemRef.getType() );
org.apache.usergrid.persistence.model.entity.Entity memberEntity = ( ( CpEntityManager ) em ).load( entityId );
- return addToCollection( collName, itemRef, memberEntity, connectBack );
+ return addToCollection( collectionName, itemRef, memberEntity, connectBack );
}
- public Entity addToCollection( final String collName, final EntityRef itemRef,
+ public Entity addToCollection( final String collectionName, final EntityRef itemRef,
final org.apache.usergrid.persistence.model.entity.Entity memberEntity,
final boolean connectBack ) throws Exception {
@@ -377,7 +374,7 @@ public class CpRelationManager implements RelationManager {
return null;
}
- CollectionInfo collection = getDefaultSchema().getCollection( headEntity.getType(), collName );
+ CollectionInfo collection = getDefaultSchema().getCollection( headEntity.getType(), collectionName );
if ( ( collection != null ) && !collection.getType().equals( itemRef.getType() ) ) {
return null;
}
@@ -396,7 +393,7 @@ public class CpRelationManager implements RelationManager {
// create graph edge connection from head entity to member entity
- final Edge edge = createCollectionEdge( cpHeadEntity.getId(), collName, memberEntity.getId() );
+ final Edge edge = createCollectionEdge( cpHeadEntity.getId(), collectionName, memberEntity.getId() );
GraphManager gm = managerCache.getGraphManager( applicationScope );
gm.writeEdge( edge ).toBlocking().last();
@@ -412,7 +409,7 @@ public class CpRelationManager implements RelationManager {
if ( logger.isDebugEnabled() ) {
logger.debug( "Added entity {}:{} to collection {}", new Object[] {
- itemRef.getUuid().toString(), itemRef.getType(), collName
+ itemRef.getUuid().toString(), itemRef.getType(), collectionName
} );
}
@@ -422,11 +419,11 @@ public class CpRelationManager implements RelationManager {
@Override
- public Entity addToCollections( List<EntityRef> owners, String collName ) throws Exception {
+ public Entity addToCollections( List<EntityRef> owners, String collectionName ) throws Exception {
// TODO: this addToCollections() implementation seems wrong.
for ( EntityRef eref : owners ) {
- addToCollection( collName, eref );
+ addToCollection( collectionName, eref );
}
return null;
@@ -434,12 +431,12 @@ public class CpRelationManager implements RelationManager {
@Override
- public Entity createItemInCollection( String collName, String itemType, Map<String, Object> properties )
+ public Entity createItemInCollection( String collectionName, String itemType, Map<String, Object> properties )
throws Exception {
if ( headEntity.getUuid().equals( applicationId ) ) {
if ( itemType.equals( TYPE_ENTITY ) ) {
- itemType = singularize( collName );
+ itemType = singularize( collectionName );
}
if ( itemType.equals( TYPE_ROLE ) ) {
@@ -453,13 +450,13 @@ public class CpRelationManager implements RelationManager {
return em.create( itemType, properties );
}
- else if ( headEntity.getType().equals( Group.ENTITY_TYPE ) && ( collName.equals( COLLECTION_ROLES ) ) ) {
+ else if ( headEntity.getType().equals( Group.ENTITY_TYPE ) && ( collectionName.equals( COLLECTION_ROLES ) ) ) {
UUID groupId = headEntity.getUuid();
String roleName = ( String ) properties.get( PROPERTY_NAME );
return em.createGroupRole( groupId, roleName, ( Long ) properties.get( PROPERTY_INACTIVITY ) );
}
- CollectionInfo collection = getDefaultSchema().getCollection( headEntity.getType(), collName );
+ CollectionInfo collection = getDefaultSchema().getCollection( headEntity.getType(), collectionName );
if ( ( collection != null ) && !collection.getType().equals( itemType ) ) {
return null;
}
@@ -470,11 +467,11 @@ public class CpRelationManager implements RelationManager {
if ( itemEntity != null ) {
- addToCollection( collName, itemEntity );
+ addToCollection( collectionName, itemEntity );
if ( collection != null && collection.getLinkedCollection() != null ) {
Id itemEntityId = new SimpleId( itemEntity.getUuid(), itemEntity.getType() );
- final Edge edge = createCollectionEdge( cpHeadEntity.getId(), collName, itemEntityId );
+ final Edge edge = createCollectionEdge( cpHeadEntity.getId(), collectionName, itemEntityId );
GraphManager gm = managerCache.getGraphManager( applicationScope );
gm.writeEdge( edge );
@@ -486,11 +483,11 @@ public class CpRelationManager implements RelationManager {
@Override
- public void removeFromCollection( String collName, EntityRef itemRef ) throws Exception {
+ public void removeFromCollection( String collectionName, EntityRef itemRef ) throws Exception {
// special handling for roles collection of the application
if ( headEntity.getUuid().equals( applicationId ) ) {
- if ( collName.equals( COLLECTION_ROLES ) ) {
+ if ( collectionName.equals( COLLECTION_ROLES ) ) {
Entity itemEntity = em.get( itemRef );
if ( itemEntity != null ) {
RoleRef roleRef = SimpleRoleRef.forRoleEntity( itemEntity );
@@ -522,7 +519,7 @@ public class CpRelationManager implements RelationManager {
//run our delete
- final Edge collectionToItemEdge = createCollectionEdge( cpHeadEntity.getId(), collName, memberEntity.getId() );
+ final Edge collectionToItemEdge = createCollectionEdge( cpHeadEntity.getId(), collectionName, memberEntity.getId() );
gm.markEdge( collectionToItemEdge ).toBlocking().last();
@@ -535,7 +532,7 @@ public class CpRelationManager implements RelationManager {
final EntityIndexBatch batch = ei.createBatch();
// remove item from collection index
- SearchEdge indexScope = createCollectionSearchEdge( cpHeadEntity.getId(), collName );
+ SearchEdge indexScope = createCollectionSearchEdge( cpHeadEntity.getId(), collectionName );
batch.deindex( indexScope, memberEntity );
@@ -546,7 +543,7 @@ public class CpRelationManager implements RelationManager {
// special handling for roles collection of a group
if ( headEntity.getType().equals( Group.ENTITY_TYPE ) ) {
- if ( collName.equals( COLLECTION_ROLES ) ) {
+ if ( collectionName.equals( COLLECTION_ROLES ) ) {
String path = ( String ) ( ( Entity ) itemRef ).getMetadata( "path" );
if ( path.startsWith( "/roles/" ) ) {
@@ -599,20 +596,20 @@ public class CpRelationManager implements RelationManager {
@Override
- public Results searchCollection( String collName, Query query ) throws Exception {
+ public Results searchCollection( String collectionName, Query query ) throws Exception {
if ( query == null ) {
query = new Query();
- query.setCollection( collName );
+ query.setCollection( collectionName );
}
headEntity = em.validate( headEntity );
- CollectionInfo collection = getDefaultSchema().getCollection( headEntity.getType(), collName );
+ CollectionInfo collection = getDefaultSchema().getCollection( headEntity.getType(), collectionName );
if ( collection == null ) {
throw new RuntimeException(
- "Cannot find collection-info for '" + collName + "' of " + headEntity.getType() + ":" + headEntity
+ "Cannot find collection-info for '" + collectionName + "' of " + headEntity.getType() + ":" + headEntity
.getUuid() );
}
@@ -627,18 +624,18 @@ public class CpRelationManager implements RelationManager {
//set our fields applicable to both operations
readPipelineBuilder.withCursor(query.getCursor());
- readPipelineBuilder.withLimit( Optional.of( query.getLimit() ));
+ readPipelineBuilder.withLimit( Optional.of(query.getLimit()));
//TODO, this should be removed when the CP relation manager is removed
readPipelineBuilder.setStartId( cpHeadEntity.getId() );
if ( query.isGraphSearch() ) {
- readPipelineBuilder.getCollection( collName );
+ readPipelineBuilder.getCollection( collectionName );
}
else {
final String entityType = collection.getType();
- readPipelineBuilder.getCollectionWithQuery( collName, entityType, query.getQl().get() );
+ readPipelineBuilder.getCollectionWithQuery( collectionName, entityType, query.getQl().get() );
}
@@ -648,14 +645,14 @@ public class CpRelationManager implements RelationManager {
}
@Override
- public Results searchCollectionConsistent( String collName, Query query, int expectedResults ) throws Exception {
+ public Results searchCollectionConsistent( String collectionName, Query query, int expectedResults ) throws Exception {
Results results;
long maxLength = entityManagerFig.pollForRecordsTimeout();
long sleepTime = entityManagerFig.sleep();
boolean found;
long current = System.currentTimeMillis(), length = 0;
do {
- results = searchCollection(collName, query);
+ results = searchCollection(collectionName, query);
length = System.currentTimeMillis() - current;
found = expectedResults == results.size();
if(found){
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/e3ba2b0b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
index ebc1008..7909439 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
@@ -540,8 +540,7 @@ public class ManagementServiceImpl implements ManagementService {
organizationEntity = em.create( organizationEntity );
em.addToCollection( organizationEntity, "users", new SimpleEntityRef( User.ENTITY_TYPE, user.getUuid() ) );
- // em.addToCollection( new SimpleEntityRef( User.ENTITY_TYPE, user.getUuid() ), Schema.COLLECTION_GROUPS, organizationEntity );
-
+// em.addToCollection( new SimpleEntityRef( User.ENTITY_TYPE, user.getUuid() ), Schema.COLLECTION_GROUPS, organizationEntity );
writeUserToken( smf.getManagementAppId(), organizationEntity, encryptionService
.plainTextCredentials( generateOAuthSecretKey( AuthPrincipalType.ORGANIZATION ), user.getUuid(),