Merge branch 'master' into asf-site
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/ddcc14f4 Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/ddcc14f4 Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/ddcc14f4 Branch: refs/heads/asf-site Commit: ddcc14f4d697780e035ca6cf1834d6f6f29a141b Parents: 967f7c8 279c020 Author: Dave Johnson <[email protected]> Authored: Tue Apr 26 11:01:34 2016 -0400 Committer: Dave Johnson <[email protected]> Committed: Tue Apr 26 11:01:34 2016 -0400 ---------------------------------------------------------------------- content/docs/README.html | 8 +- .../file-storage-configuration.html | 8 +- content/docs/assets-and-files/folders.html | 8 +- .../assets-and-files/legacy-asset-support.html | 8 +- .../assets-and-files/retrieving-assets.html | 8 +- .../docs/assets-and-files/uploading-assets.html | 8 +- .../creating-and-incrementing-counters.html | 8 +- .../events-and-counters.html | 8 +- .../retrieving-counters.html | 8 +- .../docs/data-queries/advanced-query-usage.html | 8 +- .../docs/data-queries/operators-and-types.html | 8 +- content/docs/data-queries/query-parameters.html | 8 +- .../docs/data-queries/querying-your-data.html | 8 +- content/docs/data-storage/collections.html | 8 +- content/docs/data-storage/data-store-dbms.html | 8 +- content/docs/data-storage/entities.html | 8 +- .../docs/data-storage/optimizing-access.html | 8 +- .../entity-connections/connecting-entities.html | 8 +- .../disconnecting-entities.html | 8 +- .../entity-connections/retrieving-entities.html | 8 +- content/docs/genindex.html | 8 +- content/docs/geolocation/geolocation.html | 8 +- content/docs/index.html | 8 +- content/docs/installation/deployment-guide.html | 8 +- .../docs/installation/ug1-deploy-to-tomcat.html | 8 +- .../installation/ug1-launcher-quick-start.html | 8 +- .../docs/installation/ug2-deploy-to-tomcat.html | 8 +- content/docs/introduction/async-vs-sync.html | 8 +- content/docs/introduction/data-model.html | 8 +- content/docs/introduction/overview.html | 8 +- .../docs/introduction/usergrid-features.html | 8 +- content/docs/jersey2skeleton/README.html | 8 +- content/docs/objects.inv | Bin 686 -> 686 bytes content/docs/orgs-and-apps/admin-user.html | 8 +- content/docs/orgs-and-apps/application.html | 8 +- content/docs/orgs-and-apps/managing.html | 8 +- content/docs/orgs-and-apps/organization.html | 8 +- .../push-notifications/adding-push-support.html | 8 +- .../creating-and-managing-notifications.html | 8 +- .../push-notifications/creating-notifiers.html | 8 +- .../push-notifications/getting-started.html | 8 +- .../managing-users-and-devices.html | 8 +- content/docs/push-notifications/overview.html | 8 +- .../docs/push-notifications/registering.html | 8 +- content/docs/push-notifications/tbd.html | 8 +- .../push-notifications/troubleshooting.html | 8 +- content/docs/push-notifications/tutorial.html | 8 +- .../docs/push-notifications/users-devices.html | 8 +- content/docs/reference/contribute-code.html | 8 +- content/docs/reference/presos-and-videos.html | 8 +- content/docs/rest-endpoints/api-docs.html | 8 +- content/docs/sdks/ios-new.html | 8 +- content/docs/sdks/sdk-outline.html | 8 +- content/docs/sdks/tbd.html | 8 +- content/docs/search.html | 8 +- .../docs/security-and-auth/app-security.html | 8 +- .../authenticating-api-requests.html | 8 +- ...nticating-users-and-application-clients.html | 8 +- .../changing-token-time-live-ttl.html | 8 +- .../docs/security-and-auth/facebook-sign.html | 8 +- .../revoking-tokens-logout.html | 8 +- .../security-and-auth/securing-your-app.html | 8 +- .../user-authentication-types.html | 8 +- .../security-and-auth/using-permissions.html | 8 +- content/docs/security-and-auth/using-roles.html | 8 +- content/docs/user-management/activity.html | 8 +- content/docs/user-management/group.html | 8 +- content/docs/user-management/groups.html | 8 +- .../docs/user-management/messagee-example.html | 8 +- .../docs/user-management/user-connections.html | 8 +- .../docs/user-management/user-management.html | 8 +- .../docs/user-management/working-user-data.html | 8 +- .../creating-a-new-application.html | 8 +- .../docs/using-usergrid/creating-account.html | 8 +- .../using-usergrid/using-a-sandbox-app.html | 8 +- content/docs/using-usergrid/using-the-api.html | 8 +- deployment/pcf/README.md | 2 + docs/conf.py | 4 +- release/binary-release.sh | 10 +- release/pom.xml | 2 +- release/release-candidate.sh | 62 +- release/release.sh | 84 +- release/src/main/assembly/binary.xml | 27 +- stack/build-tools/pom.xml | 2 +- stack/config/pom.xml | 2 +- .../main/resources/usergrid-default.properties | 27 +- stack/core/pom.xml | 16 +- .../apache/usergrid/batch/job/OnlyOnceJob.java | 22 +- .../corepersistence/ApplicationIdCache.java | 6 +- .../corepersistence/ApplicationIdCacheImpl.java | 64 +- .../usergrid/corepersistence/CoreModule.java | 8 +- .../corepersistence/CpEntityManager.java | 247 ++++- .../corepersistence/CpEntityManagerFactory.java | 49 +- .../corepersistence/CpManagerCache.java | 2 +- .../corepersistence/CpRelationManager.java | 149 ++- .../usergrid/corepersistence/CpSetup.java | 100 +- .../corepersistence/EntityManagerFig.java | 4 + .../usergrid/corepersistence/GuiceFactory.java | 1 + .../usergrid/corepersistence/ManagerCache.java | 2 +- .../asyncevents/AmazonAsyncEventService.java | 844 ----------------- .../asyncevents/AsyncEventService.java | 19 +- .../asyncevents/AsyncEventServiceImpl.java | 910 +++++++++++++++++++ .../asyncevents/AsyncIndexProvider.java | 4 +- .../asyncevents/EventBuilder.java | 24 +- .../asyncevents/EventBuilderImpl.java | 52 +- .../asyncevents/IndexDocNotFoundException.java | 37 + .../asyncevents/model/AsyncEvent.java | 9 +- .../model/DeIndexOldVersionsEvent.java | 50 + .../asyncevents/model/EdgeDeleteEvent.java | 4 +- .../model/ElasticsearchIndexEvent.java | 2 +- .../asyncevents/model/EntityDeleteEvent.java | 3 + .../model/InitializeApplicationIndexEvent.java | 2 +- .../index/IndexProcessorFig.java | 21 +- .../corepersistence/index/IndexSchemaCache.java | 50 + .../index/IndexSchemaCacheFactory.java | 44 + .../index/IndexSchemaCacheFig.java | 39 + .../index/IndexSchemaCacheImpl.java | 119 +++ .../corepersistence/index/IndexServiceImpl.java | 100 +- .../index/ReIndexRequestBuilder.java | 7 + .../index/ReIndexRequestBuilderImpl.java | 32 + .../index/ReIndexServiceImpl.java | 49 +- .../migration/MigrationModuleVersionPlugin.java | 137 --- .../pipeline/builder/IdBuilder.java | 6 + .../pipeline/read/FilterFactory.java | 8 +- .../read/search/CandidateEntityFilter.java | 10 +- .../read/traverse/AbstractReadGraphFilter.java | 18 +- .../pipeline/read/traverse/IdFilter.java | 52 ++ .../results/IdQueryExecutor.java | 66 ++ .../service/ApplicationServiceImpl.java | 37 +- .../service/CollectionSearch.java | 9 + .../service/CollectionService.java | 5 + .../service/CollectionServiceImpl.java | 23 + .../service/ServiceSchedulerFig.java | 2 +- .../usergrid/persistence/EntityManager.java | 7 + .../persistence/EntityManagerFactory.java | 6 +- .../persistence/MultiQueryIterator.java | 2 +- .../persistence/NotificationGraphIterator.java | 163 ++++ .../persistence/PagingResultsIterator.java | 25 +- .../apache/usergrid/persistence/PathQuery.java | 67 +- .../org/apache/usergrid/persistence/Query.java | 2 + .../apache/usergrid/persistence/Results.java | 20 + .../persistence/cassandra/ApplicationCF.java | 2 +- .../persistence/cassandra/CassandraService.java | 2 - .../usergrid/persistence/cassandra/Setup.java | 28 +- .../persistence/entities/Notification.java | 106 ++- .../main/resources/usergrid-core-context.xml | 5 +- .../corepersistence/StaleIndexCleanupTest.java | 184 +--- .../index/AmazonAsyncEventServiceTest.java | 103 --- .../index/AsyncEventServiceImplTest.java | 96 ++ .../index/AsyncIndexServiceTest.java | 3 +- .../usergrid/corepersistence/index/RxTest.java | 129 +++ .../MigrationModuleVersionPluginTest.java | 259 ------ .../usergrid/persistence/CoreSchemaManager.java | 14 +- .../cassandra/EntityManagerFactoryImplIT.java | 8 +- stack/corepersistence/cache/pom.xml | 2 +- .../impl/ScopedCacheSerializationImpl.java | 9 +- stack/corepersistence/collection/pom.xml | 2 +- .../impl/EntityCollectionManagerImpl.java | 10 +- .../mvcc/stage/write/WriteUniqueVerify.java | 9 +- .../serialization/SerializationFig.java | 3 + stack/corepersistence/common/pom.xml | 2 +- .../core/astyanax/CassandraClusterImpl.java | 36 +- .../persistence/core/astyanax/CassandraFig.java | 8 + .../persistence/core/astyanax/ColumnSearch.java | 7 +- .../core/astyanax/MultiRowColumnIterator.java | 37 +- .../astyanax/MultiRowShardColumnIterator.java | 462 ++++++++++ .../core/consistency/TimeServiceImpl.java | 5 +- .../core/executor/TaskExecutorFactory.java | 10 +- .../persistence/core/shard/SmartShard.java | 61 ++ .../astyanax/MultiRowColumnIteratorTest.java | 14 +- stack/corepersistence/graph/pom.xml | 2 +- .../usergrid/persistence/graph/GraphFig.java | 17 + .../graph/impl/GraphManagerImpl.java | 2 +- .../impl/EdgeMetadataSerializationV2Impl.java | 4 +- .../impl/shard/NodeShardCache.java | 7 +- .../graph/serialization/impl/shard/Shard.java | 33 +- .../impl/shard/impl/EdgeSearcher.java | 113 ++- .../shard/impl/EdgeShardSerializationImpl.java | 56 +- .../shard/impl/NodeShardAllocationImpl.java | 38 +- .../impl/shard/impl/NodeShardCacheImpl.java | 29 +- .../shard/impl/ShardEntryGroupIterator.java | 12 + .../shard/impl/ShardGroupCompactionImpl.java | 179 +++- .../impl/ShardedEdgeSerializationImpl.java | 51 +- .../impl/shard/impl/ShardsColumnIterator.java | 64 +- .../shard/impl/serialize/ShardSerializer.java | 86 ++ .../graph/GraphManagerShardConsistencyIT.java | 215 +++-- .../impl/shard/EdgeShardSerializationTest.java | 12 +- .../impl/shard/NodeShardAllocationTest.java | 44 +- .../impl/shard/ShardGroupCompactionTest.java | 4 +- .../graph/src/test/resources/log4j.properties | 6 + stack/corepersistence/map/pom.xml | 2 +- .../persistence/map/impl/MapManagerImpl.java | 6 + stack/corepersistence/model/pom.xml | 2 +- .../model/entity/MapToEntityConverter.java | 18 +- stack/corepersistence/pom.xml | 4 +- stack/corepersistence/queryindex/pom.xml | 2 +- .../persistence/index/EntityIndexBatch.java | 13 +- .../usergrid/persistence/index/IndexFig.java | 5 +- .../index/impl/EntityToMapConverter.java | 93 +- .../index/impl/EsEntityIndexBatchImpl.java | 21 +- .../index/impl/EsEntityIndexImpl.java | 25 +- .../index/impl/EsIndexProducerImpl.java | 5 +- .../persistence/index/impl/EsProvider.java | 20 +- .../index/impl/FailureMonitorImpl.java | 2 +- .../persistence/index/impl/IndexOperation.java | 9 +- .../index/impl/IndexOperationMessage.java | 2 +- .../persistence/index/impl/EntityIndexTest.java | 2 +- stack/corepersistence/queue/pom.xml | 2 +- .../persistence/queue/LocalQueueManager.java | 6 +- .../usergrid/persistence/queue/QueueFig.java | 21 + .../persistence/queue/QueueManager.java | 6 +- .../persistence/queue/QueueMessage.java | 10 + .../queue/impl/SNSQueueManagerImpl.java | 48 +- .../persistence/queue/QueueManagerTest.java | 10 +- .../apache/usergrid/mongo/BasicMongoTest.java | 8 +- .../apache/usergrid/mongo/MongoQueryTest.java | 18 +- stack/pom.xml | 4 +- stack/rest/pom.xml | 2 +- .../org/apache/usergrid/rest/ApiResponse.java | 7 +- .../org/apache/usergrid/rest/RootResource.java | 31 +- .../rest/applications/ApplicationResource.java | 2 +- .../rest/applications/CollectionResource.java | 233 +++++ .../rest/applications/ServiceResource.java | 140 ++- .../notifiers/NotifierResource.java | 3 +- .../notifiers/NotifiersResource.java | 3 +- .../rest/applications/users/UserResource.java | 26 +- .../rest/applications/users/UsersResource.java | 3 +- .../IllegalArgumentExceptionMapper.java | 4 +- .../ServiceResourceNotFoundExceptionMapper.java | 9 +- .../rest/management/ManagementResource.java | 308 ------- .../applications/ApplicationResource.java | 34 +- .../rest/management/users/UserResource.java | 2 +- .../organizations/OrganizationResource.java | 8 +- .../security/SecuredResourceFilterFactory.java | 31 +- .../OAuth2AccessTokenSecurityFilter.java | 3 +- .../usergrid/rest/system/DatabaseResource.java | 4 +- .../usergrid/rest/system/IndexResource.java | 6 + .../resources/usergrid-rest-deploy-context.xml | 7 + .../rest/applications/ApplicationCreateIT.java | 3 +- .../rest/applications/ApplicationDeleteIT.java | 17 +- .../applications/ApplicationResourceIT.java | 2 +- .../collection/CollectionsResourceIT.java | 764 +++++++++++++++- .../collection/paging/PagingResourceIT.java | 70 +- .../collection/users/PermissionsResourceIT.java | 6 +- .../usergrid/rest/management/AdminUsersIT.java | 102 ++- .../rest/management/ManagementResourceIT.java | 58 +- .../rest/test/resource/AbstractRestIT.java | 1 + .../rest/test/resource/ClientSetup.java | 10 + .../test/resource/endpoints/NamedResource.java | 22 + .../resources/usergrid-custom-test.properties | 4 + stack/services/pom.xml | 19 +- .../usergrid/management/ManagementService.java | 7 +- .../cassandra/ManagementServiceImpl.java | 113 ++- .../usergrid/security/shiro/ShiroCache.java | 41 +- .../security/shiro/ShiroCacheManager.java | 15 +- .../shiro/credentials/AdminUserAccessToken.java | 3 + .../credentials/ApplicationAccessToken.java | 3 + .../ApplicationClientCredentials.java | 5 + .../credentials/OrganizationAccessToken.java | 3 + .../shiro/principals/AdminUserPrincipal.java | 3 + .../principals/ApplicationGuestPrincipal.java | 4 +- .../shiro/principals/ApplicationPrincipal.java | 4 +- .../principals/ApplicationUserPrincipal.java | 3 + .../shiro/principals/OrganizationPrincipal.java | 4 +- .../security/shiro/utils/LocalShiroCache.java | 80 ++ .../usergrid/security/tokens/TokenService.java | 3 + .../tokens/cassandra/TokenServiceImpl.java | 372 +++++++- .../services/AbstractCollectionService.java | 56 ++ .../services/AbstractConnectionsService.java | 13 + .../usergrid/services/AbstractService.java | 14 +- .../org/apache/usergrid/services/Service.java | 3 + .../usergrid/services/ServiceManager.java | 4 +- .../usergrid/services/ServiceRequest.java | 5 + .../applications/ApplicationsService.java | 14 + .../usergrid/services/groups/GroupsService.java | 4 + .../notifications/NotificationDeviceFilter.java | 45 + .../notifications/NotificationsService.java | 32 +- .../services/notifications/QueueListener.java | 41 +- .../services/notifications/TaskManager.java | 33 +- .../services/notifications/gcm/GCMAdapter.java | 7 +- .../impl/ApplicationQueueManagerImpl.java | 285 ++++-- .../services/queues/ImportQueueManager.java | 4 +- .../usergrid/services/queues/QueueListener.java | 4 +- .../usergrid/services/roles/RolesService.java | 2 + .../usergrid/services/users/UsersService.java | 2 + .../services/users/roles/RolesService.java | 4 + .../resources/usergrid-services-context.xml | 11 +- .../migration/AppInfoMigrationPluginTest.java | 8 +- .../apns/NotificationsServiceIT.java | 32 +- .../gcm/NotificationsServiceIT.java | 58 +- .../resources/usergrid-custom-test.properties | 1 + stack/test-utils/pom.xml | 2 +- .../usergrid/cassandra/SchemaManager.java | 3 - .../usergrid/cassandra/FakeSchemaManager.java | 8 +- stack/tools/pom.xml | 4 +- tests/integration/test/main.js | 18 +- .../test/notifications/notifications.js | 83 +- .../test/queries/integerComparison.js | 31 +- tests/integration/test/setup.js | 4 +- tests/performance/runLoadNestedEntities.sh | 98 ++ .../datagenerators/EntityDataGenerator.scala | 40 + .../org/apache/usergrid/enums/EntityType.scala | 3 +- 302 files changed, 7717 insertions(+), 3398 deletions(-) ----------------------------------------------------------------------
