usergrid git commit: Removed automatically added header

2016-01-25 Thread grey
Repository: usergrid
Updated Branches:
  refs/heads/USERGRID-1051 78bc3d5c0 -> 6c502aa35


Removed automatically added header


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

Branch: refs/heads/USERGRID-1051
Commit: 6c502aa355eb3f019c6652d64c70b542aaefa109
Parents: 78bc3d5
Author: George Reyes 
Authored: Mon Jan 25 11:01:28 2016 -0800
Committer: George Reyes 
Committed: Mon Jan 25 11:01:28 2016 -0800

--
 .../rest/exceptions/ElasticsearchExecutionExceptionMapper.java   | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/6c502aa3/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
index 6636727..55c5086 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
@@ -9,9 +9,7 @@ import 
org.elasticsearch.action.search.SearchPhaseExecutionException;
 import static javax.ws.rs.core.Response.Status.SERVICE_UNAVAILABLE;
 
 
-/**
- * Created by ApigeeCorporation on 1/19/16.
- */
+
 @Provider
 public class ElasticsearchExecutionExceptionMapper
 extends AbstractExceptionMapper  {



[03/35] usergrid git commit: Remove unused zookeeper lock manager.

2016-01-25 Thread grey
Remove unused zookeeper lock manager.


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

Branch: refs/heads/USERGRID-1047
Commit: 8849d8eb2cb443a70e4ad37c4dae119bb198ece4
Parents: 56eb80f
Author: Michael Russo 
Authored: Wed Jan 13 09:13:39 2016 -0800
Committer: Michael Russo 
Committed: Wed Jan 13 09:13:39 2016 -0800

--
 .../src/test/resources/usergrid-test.properties |   5 -
 stack/core/pom.xml  |   5 -
 .../zookeeper/ZooKeeperLockManagerImpl.java | 115 
 .../locking/zookeeper/ZookeeperLockImpl.java|  88 --
 .../main/resources/usergrid-core-context.xml|   8 -
 .../zookeeper/AbstractZooKeeperTest.java| 127 -
 .../usergrid/locking/zookeeper/ZooPut.java  | 114 
 .../zookeeper/ZookeeperLockManagerTest.java | 186 -
 .../resources/usergrid-standalone.properties|   4 -
 stack/pom.xml   |  32 ---
 .../test/resources/testApplicationContext.xml   | 271 +--
 11 files changed, 135 insertions(+), 820 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/8849d8eb/stack/config/src/test/resources/usergrid-test.properties
--
diff --git a/stack/config/src/test/resources/usergrid-test.properties 
b/stack/config/src/test/resources/usergrid-test.properties
index 111c750..0824673 100644
--- a/stack/config/src/test/resources/usergrid-test.properties
+++ b/stack/config/src/test/resources/usergrid-test.properties
@@ -114,11 +114,6 @@ usergrid.binary.bucketname=usergrid-test-bucket
 # Where to store temporary files
 usergrid.temp.files=/tmp/usergrid
 
-# Zookeeper instances
-zookeeper.hosts=localhost:2180
-zookeeper.sessionTimeout = 3000
-zookeeper.maxAttempts = 3
-
 swagger.basepath=http://localhost:8080
 
 AWS_ACCESS_KEY_ID=

http://git-wip-us.apache.org/repos/asf/usergrid/blob/8849d8eb/stack/core/pom.xml
--
diff --git a/stack/core/pom.xml b/stack/core/pom.xml
index 7f7dcfb..ae9f915 100644
--- a/stack/core/pom.xml
+++ b/stack/core/pom.xml
@@ -177,11 +177,6 @@
   commons-beanutils
 
 
-
-  org.apache.zookeeper
-  zookeeper
-
-
 
 
 

http://git-wip-us.apache.org/repos/asf/usergrid/blob/8849d8eb/stack/core/src/main/java/org/apache/usergrid/locking/zookeeper/ZooKeeperLockManagerImpl.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/locking/zookeeper/ZooKeeperLockManagerImpl.java
 
b/stack/core/src/main/java/org/apache/usergrid/locking/zookeeper/ZooKeeperLockManagerImpl.java
deleted file mode 100644
index 018e639..000
--- 
a/stack/core/src/main/java/org/apache/usergrid/locking/zookeeper/ZooKeeperLockManagerImpl.java
+++ /dev/null
@@ -1,115 +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.locking.zookeeper;
-
-
-import java.util.UUID;
-
-import javax.annotation.PostConstruct;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.apache.usergrid.locking.Lock;
-import org.apache.usergrid.locking.LockManager;
-import org.apache.usergrid.locking.LockPathBuilder;
-
-import com.netflix.curator.RetryPolicy;
-import com.netflix.curator.framework.CuratorFramework;
-import com.netflix.curator.framework.CuratorFrameworkFactory;
-import com.netflix.curator.framework.recipes.locks.InterProcessMutex;
-import com.netflix.curator.retry.ExponentialBackoffRetry;
-
-
-/** Implementation for Zookeeper service that handles global locks. */
-public final class ZooKeeperLockManagerImpl implements LockManager {
-
-private String hostPort;
-
-private int sessionTimeout = 2000;
-
-private int maxAttempts = 5;
-
-

[19/35] usergrid git commit: Merge commit '19de00b5b72859ddceeea01bedc94c0cc2efaeb4' into release

2016-01-25 Thread grey
Merge commit '19de00b5b72859ddceeea01bedc94c0cc2efaeb4' into release

* commit '19de00b5b72859ddceeea01bedc94c0cc2efaeb4':
  Fix tests to handle uniqueness of fields being indexed at Elasticsearch 
(before assumed duplicates were allowed).
  Initial work to support a typed null field for an entity, including a new 
index field type named "null" with value of null.  Also changes to pass a Set 
to elasticsearch for fields to index instead of a non unique list.


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

Branch: refs/heads/USERGRID-1047
Commit: cf3d6a388929a154e48fa2d9ab288ee7ea075ea6
Parents: 4e048f3 19de00b
Author: George Reyes 
Authored: Fri Jan 15 16:42:15 2016 -0800
Committer: George Reyes 
Committed: Fri Jan 15 16:42:15 2016 -0800

--
 .../model/entity/MapToEntityConverter.java  |  18 ++-
 .../persistence/model/field/FieldTypeName.java  |   3 +-
 .../persistence/model/field/NullField.java  |  44 ++
 .../model/entity/MapToEntityConverterTest.java  | 142 ++
 .../persistence/model/field/EntityTest.java |   9 +-
 .../persistence/index/impl/EntityField.java |  11 ++
 .../index/impl/EntityMappingParser.java |  16 +-
 .../index/impl/EntityToMapConverter.java|   3 +-
 .../persistence/index/impl/FieldParser.java |   5 +-
 .../persistence/index/impl/IndexingUtils.java   |   1 +
 .../persistence/index/impl/EntityIndexTest.java |  79 +-
 .../index/impl/EntityToMapConverterTest.java| 149 ++-
 .../index/impl/IndexLoadTestsIT.java|   6 +-
 13 files changed, 428 insertions(+), 58 deletions(-)
--




[30/35] usergrid git commit: Merge branch 'release'

2016-01-25 Thread grey
Merge branch 'release'


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

Branch: refs/heads/USERGRID-1047
Commit: 8ed5a24a1e125b3e3c096c41a0e3693630ffdb07
Parents: ceae7db 2e37c21
Author: Michael Russo 
Authored: Fri Jan 22 17:43:08 2016 -0800
Committer: Michael Russo 
Committed: Fri Jan 22 17:43:08 2016 -0800

--
 .../model/entity/MapToEntityConverter.java  | 235 +++
 .../persistence/model/field/ArrayField.java |   4 +-
 .../persistence/model/field/BooleanField.java   |   4 +-
 .../persistence/model/field/ByteArrayField.java |   8 +-
 .../persistence/model/field/DoubleField.java|   4 +-
 .../persistence/model/field/FloatField.java |   4 +-
 .../persistence/model/field/IntegerField.java   |   4 +-
 .../persistence/model/field/ListField.java  |   4 +-
 .../persistence/model/field/LocationField.java  |   4 +-
 .../persistence/model/field/LongField.java  |   4 +-
 .../persistence/model/field/NullField.java  |   4 +-
 .../model/field/SerializedObjectField.java  |   8 +-
 .../persistence/model/field/SetField.java   |   6 +-
 .../persistence/model/field/StringField.java|   6 +-
 .../persistence/model/field/UUIDField.java  |   4 +-
 .../model/entity/MapToEntityConverterTest.java  |  40 +++-
 16 files changed, 211 insertions(+), 132 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/8ed5a24a/stack/corepersistence/model/src/test/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverterTest.java
--



[12/35] usergrid git commit: Remove unused SingleNodeLockImpl and any references to this.

2016-01-25 Thread grey
Remove unused SingleNodeLockImpl and any references to this.


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

Branch: refs/heads/USERGRID-1047
Commit: 0071df0e235181f47ac370257b99c4de1d7705f7
Parents: 5685092
Author: Michael Russo 
Authored: Thu Jan 14 18:53:14 2016 -0800
Committer: Michael Russo 
Committed: Thu Jan 14 18:53:14 2016 -0800

--
 .../src/main/dist/lib/log4j.properties  |   1 -
 .../locking/singlenode/SingleNodeLockImpl.java  |  71 
 .../singlenode/SingleNodeLockManagerImpl.java   |  96 ---
 .../main/resources/usergrid-core-context.xml|   5 -
 .../locking/SingleNodeLockTestSingleNode.java   | 163 ---
 stack/core/src/test/resources/log4j.properties  |   1 -
 stack/rest/src/test/resources/log4j.properties  |   1 -
 .../src/test/resources/log4j.properties |   1 -
 stack/tools/src/main/resources/log4j.properties |   1 -
 9 files changed, 340 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/0071df0e/stack/awscluster/src/main/dist/lib/log4j.properties
--
diff --git a/stack/awscluster/src/main/dist/lib/log4j.properties 
b/stack/awscluster/src/main/dist/lib/log4j.properties
index 52f99ce..013563b 100644
--- a/stack/awscluster/src/main/dist/lib/log4j.properties
+++ b/stack/awscluster/src/main/dist/lib/log4j.properties
@@ -37,7 +37,6 @@ 
log4j.logger.org.apache.usergrid.persistence.cassandra.ConnectionRefImpl=WARN, s
 log4j.logger.me.prettyprint.cassandra.hector.TimingLogger=WARN, stdout
 log4j.logger.org.apache.usergrid.rest.security.AllowAjaxFilter=WARN, stdout
 log4j.logger.me.prettyprint.hector.api.beans.AbstractComposite=ERROR, stdout
-log4j.logger.org.apache.usergrid.locking.singlenode.SingleNodeLockManagerImpl=DEBUG,
 stdout
 
 #log4j.logger.org.apache.usergrid.persistence=INFO
 #log4j.logger.org.apache.usergrid.corepersistence=DEBUG

http://git-wip-us.apache.org/repos/asf/usergrid/blob/0071df0e/stack/core/src/main/java/org/apache/usergrid/locking/singlenode/SingleNodeLockImpl.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/locking/singlenode/SingleNodeLockImpl.java
 
b/stack/core/src/main/java/org/apache/usergrid/locking/singlenode/SingleNodeLockImpl.java
deleted file mode 100644
index 109307d..000
--- 
a/stack/core/src/main/java/org/apache/usergrid/locking/singlenode/SingleNodeLockImpl.java
+++ /dev/null
@@ -1,71 +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.locking.singlenode;
-
-
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.locks.ReentrantLock;
-
-import org.apache.usergrid.locking.Lock;
-import org.apache.usergrid.locking.exception.UGLockException;
-
-
-/** @author tnine */
-public class SingleNodeLockImpl implements Lock {
-
-private final ReentrantLock lock;
-
-
-/**
- *
- */
-public SingleNodeLockImpl( ReentrantLock lock ) {
-this.lock = lock;
-}
-
-
-/* (non-Javadoc)
- * @see org.apache.usergrid.locking.Lock#acquire(long)
- */
-@Override
-public boolean tryLock( long timeout, TimeUnit time ) throws 
UGLockException {
-try {
-return this.lock.tryLock( timeout, time );
-}
-catch ( InterruptedException e ) {
-throw new UGLockException( "Couldn't get the lock", e );
-}
-}
-
-
-/* (non-Javadoc)
- * @see org.apache.usergrid.locking.Lock#lock()
- */
-@Override
-public void lock() throws UGLockException {
-this.lock.lock();
-}
-
-
-/* (non-Javadoc)
- * @see org.apache.usergrid.locking.Lock#release()
- */
-@Override
-public void unlock() throws UGLockException {
-

[06/35] usergrid git commit: First commit of new implementation of Astyanax locks and having it wired with guide instead of Spring.

2016-01-25 Thread grey
First commit of new implementation of Astyanax locks and having it wired with 
guide instead of Spring.


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

Branch: refs/heads/USERGRID-1047
Commit: 71f327473434874f78fb53bebf46b8cf909a9735
Parents: 8849d8e
Author: Michael Russo 
Authored: Thu Jan 14 09:42:42 2016 -0800
Committer: Michael Russo 
Committed: Thu Jan 14 12:17:35 2016 -0800

--
 stack/core/pom.xml  |   5 +
 .../apache/usergrid/batch/job/OnlyOnceJob.java  |   3 +-
 .../usergrid/corepersistence/CoreModule.java|   2 +
 .../locking/cassandra/AstyanaxLockImpl.java |  79 +
 .../cassandra/AstyanaxLockManagerImpl.java  | 173 +
 .../usergrid/locking/guice/LockModule.java  |  40 +++
 .../mq/cassandra/QueueManagerFactoryImpl.java   |   5 +-
 .../persistence/cassandra/CassandraService.java |   5 +-
 .../main/resources/usergrid-core-context.xml|   5 +-
 stack/corepersistence/common/pom.xml| 351 ++-
 .../core/astyanax/AstyanaxKeyspaceProvider.java |  46 +--
 .../core/astyanax/CassandraCluster.java |  20 ++
 .../core/astyanax/CassandraClusterImpl.java | 198 +++
 .../persistence/core/astyanax/CassandraFig.java |  72 +++-
 .../persistence/core/guice/CommonModule.java|  11 +-
 .../data/MigrationInfoSerializationImpl.java|  10 +-
 .../core/astyanax/ColumnNameIteratorTest.java   |   5 +-
 .../MultiKeyColumnNameIteratorTest.java |   5 +-
 .../astyanax/MultiRowColumnIteratorTest.java|   5 +-
 .../persistence/core/astyanax/TestUtils.java|   8 +-
 stack/pom.xml   |   7 +
 .../services/ServiceManagerFactory.java |   6 +-
 .../resources/usergrid-services-context.xml |   6 +-
 .../test/resources/testApplicationContext.xml   |  10 +-
 24 files changed, 830 insertions(+), 247 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/71f32747/stack/core/pom.xml
--
diff --git a/stack/core/pom.xml b/stack/core/pom.xml
index ae9f915..49082b6 100644
--- a/stack/core/pom.xml
+++ b/stack/core/pom.xml
@@ -214,6 +214,11 @@
   curator-recipes
 
 
+  
+  com.netflix.astyanax
+  astyanax-recipes
+  
+
 
   com.google.guava
   guava

http://git-wip-us.apache.org/repos/asf/usergrid/blob/71f32747/stack/core/src/main/java/org/apache/usergrid/batch/job/OnlyOnceJob.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/batch/job/OnlyOnceJob.java 
b/stack/core/src/main/java/org/apache/usergrid/batch/job/OnlyOnceJob.java
index 726464e..f857d05 100644
--- a/stack/core/src/main/java/org/apache/usergrid/batch/job/OnlyOnceJob.java
+++ b/stack/core/src/main/java/org/apache/usergrid/batch/job/OnlyOnceJob.java
@@ -19,6 +19,7 @@ package org.apache.usergrid.batch.job;
 
 import java.util.concurrent.TimeUnit;
 
+import org.elasticsearch.common.inject.Inject;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.apache.usergrid.batch.Job;
@@ -37,7 +38,7 @@ import org.apache.usergrid.persistence.EntityManagerFactory;
 @Component("OnlyOnceJob")
 public abstract class OnlyOnceJob implements Job {
 
-@Autowired
+@Inject
 private LockManager lockManager;
 
 @Autowired

http://git-wip-us.apache.org/repos/asf/usergrid/blob/71f32747/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java 
b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
index 628459b..e2d845f 100644
--- 
a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
+++ 
b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
@@ -16,6 +16,7 @@
 package org.apache.usergrid.corepersistence;
 
 
+import org.apache.usergrid.locking.guice.LockModule;
 import org.apache.usergrid.persistence.cache.guice.CacheModule;
 import java.util.concurrent.ThreadPoolExecutor;
 
@@ -94,6 +95,7 @@ public class CoreModule extends AbstractModule {
 protected void configure() {
 
 install( new CommonModule());
+install( new LockModule());
 install( new CacheModule());
 install( new CollectionModule() {
 /**


[33/35] usergrid git commit: Merge branch 'release'

2016-01-25 Thread grey
Merge branch 'release'


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

Branch: refs/heads/USERGRID-1047
Commit: 40be90f5ea69d73e487fc9f079247c15a1cc0691
Parents: 78727e1 595955d
Author: Michael Russo 
Authored: Sat Jan 23 18:02:06 2016 -0800
Committer: Michael Russo 
Committed: Sat Jan 23 18:02:06 2016 -0800

--
 .../corepersistence/CpEntityMapUtilsTest.java   | 28 +-
 .../model/entity/MapToEntityConverter.java  | 39 +---
 .../model/entity/MapToEntityConverterTest.java  |  4 +-
 3 files changed, 44 insertions(+), 27 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/40be90f5/stack/corepersistence/model/src/test/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverterTest.java
--



[34/35] usergrid git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/usergrid into USERGRID-1047

2016-01-25 Thread grey
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/usergrid into 
USERGRID-1047

# By Michael Russo (19) and Dave Johnson (4)
# Via Michael Russo (4) and others
* 'master' of https://git-wip-us.apache.org/repos/asf/usergrid: (23 commits)
  Fix issue with null values nested in an entity list field being represented 
as a top-level entity NullField instead of a null value.
  Fix inheritance issue.
  Fix issue with multiple types within a list causing class cast exceptions.
  Revert ""port" tools from master"
  "port" tools from master
  Cleanup duplicate edges at the end of addToCollection and filter duplicate 
edges in our graph results.
  Only reset roles and application secrets if the create application request is 
not for a migration.
  Fix the default consistency level settings in properties.  The fig (e.g. 
CassandraFig) will only use its default if there was no java prop set already.
  Implement a minimum lock expiration time.
  Ensure the lock manager is injected as a singleton.
  Fixes to allow ImportAdmin to run in distributed env, also remove org-merge 
from ImportAdmins.
  Fix tests to handle uniqueness of fields being indexed at Elasticsearch 
(before assumed duplicates were allowed).
  Initial work to support a typed null field for an entity, including a new 
index field type named "null" with value of null.  Also changes to pass a Set 
to elasticsearch for fields to index instead of a non unique list.
  Remove unused SingleNodeLockImpl and any references to this.
  Only create new client secrets during app creation if the application UUID is 
not provided (otherwise you overwrite existing app credentials).
  Simplify the locks consistency level and default it to LQ in case something 
passed cannot be parsed to a valid consistency level.
  Fix Astyanax locking to be re-entrant as Hector locks were and possible UG 
code expects it to be.  Remove all reference of Hector locks, changing its 
existing test to work with Astyanax.
  Remove commented, old Hector configuration from Spring context config.
  Fix new lock manager wiring issues in services layer.
  First commit of new implementation of Astyanax locks and having it wired with 
guide instead of Spring.
  ...


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

Branch: refs/heads/USERGRID-1047
Commit: 31df16e3d6435db7faa3287e0f3638f766ca7b5c
Parents: d97f6e3 40be90f
Author: George Reyes 
Authored: Mon Jan 25 12:58:27 2016 -0800
Committer: George Reyes 
Committed: Mon Jan 25 12:58:27 2016 -0800

--
 .../src/main/dist/lib/log4j.properties  |   1 -
 .../main/resources/usergrid-default.properties  |  10 +-
 .../src/test/resources/usergrid-test.properties |   5 -
 stack/core/pom.xml  |  10 +-
 .../apache/usergrid/batch/job/OnlyOnceJob.java  |   3 +-
 .../usergrid/corepersistence/CoreModule.java|   2 +
 .../corepersistence/CpEntityManagerFactory.java |  18 +-
 .../corepersistence/CpRelationManager.java  |  54 +--
 .../usergrid/corepersistence/CpSetup.java   |  14 +-
 .../read/traverse/AbstractReadGraphFilter.java  |  37 +-
 .../locking/cassandra/AstyanaxLockImpl.java |  92 +
 .../cassandra/AstyanaxLockManagerImpl.java  | 211 +++
 .../locking/cassandra/HectorLockImpl.java   |  86 -
 .../cassandra/HectorLockManagerImpl.java| 142 
 .../usergrid/locking/guice/LockModule.java  |  40 +++
 .../locking/singlenode/SingleNodeLockImpl.java  |  71 
 .../singlenode/SingleNodeLockManagerImpl.java   |  96 -
 .../zookeeper/ZooKeeperLockManagerImpl.java | 115 --
 .../locking/zookeeper/ZookeeperLockImpl.java|  88 -
 .../mq/cassandra/QueueManagerFactoryImpl.java   |   5 +-
 .../persistence/EntityManagerFactory.java   |   8 +-
 .../persistence/cassandra/CassandraService.java |   5 +-
 .../main/resources/usergrid-core-context.xml|  36 +-
 .../org/apache/usergrid/CoreITSetupImpl.java|   4 +
 .../corepersistence/CpEntityMapUtilsTest.java   |  28 +-
 .../usergrid/locking/AstyanaxLockManagerIT.java | 164 +
 .../locking/cassandra/HectorLockManagerIT.java  | 185 --
 .../SingleNodeLockTestSingleNode.java   | 170 -
 .../zookeeper/AbstractZooKeeperTest.java| 127 ---
 .../usergrid/locking/zookeeper/ZooPut.java  | 114 --
 .../zookeeper/ZookeeperLockManagerTest.java | 186 --
 .../usergrid/persistence/EntityManagerIT.java   |  33 ++
 stack/core/src/test/resources/log4j.properties  |   1 -
 .../impl/ScopedCacheSerializationImpl.java  |  12 +-
 .../MvccEntitySerializationStrategyImpl.java|  14 +-
 ...vccEntitySerializationStrategyProxyImpl.java |   4 +-

[31/35] usergrid git commit: Fix inheritance issue.

2016-01-25 Thread grey
Fix inheritance issue.


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

Branch: refs/heads/USERGRID-1047
Commit: 78727e18cf0fcbc2c313074a4f21834366e9b08a
Parents: 8ed5a24
Author: Michael Russo 
Authored: Fri Jan 22 18:04:40 2016 -0800
Committer: Michael Russo 
Committed: Fri Jan 22 18:04:40 2016 -0800

--
 .../org/apache/usergrid/persistence/model/field/DoubleField.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/78727e18/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/DoubleField.java
--
diff --git 
a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/DoubleField.java
 
b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/DoubleField.java
index 3b2c413..ccbc3e2 100644
--- 
a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/DoubleField.java
+++ 
b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/DoubleField.java
@@ -20,7 +20,7 @@ package org.apache.usergrid.persistence.model.field;
 /**
  * @author: tnine
  */
-public final class DoubleField extends AbstractField {
+public class DoubleField extends AbstractField {
 
 public DoubleField(String name, Double value) {
 super(name, value);
@@ -35,7 +35,7 @@ public final class DoubleField extends AbstractField {
 
 
 @Override
-public final FieldTypeName getTypeName() {
+public FieldTypeName getTypeName() {
return FieldTypeName.DOUBLE;
}
 }



[22/35] usergrid git commit: Only reset roles and application secrets if the create application request is not for a migration.

2016-01-25 Thread grey
Only reset roles and application secrets if the create application request is 
not for a migration.


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

Branch: refs/heads/USERGRID-1047
Commit: f9028b24aa9dfb4092a8957d205aeec26b5ff11b
Parents: e03354f
Author: Michael Russo 
Authored: Tue Jan 19 15:40:01 2016 -0800
Committer: Michael Russo 
Committed: Tue Jan 19 15:40:01 2016 -0800

--
 .../corepersistence/CpEntityManagerFactory.java   | 18 +++---
 .../apache/usergrid/corepersistence/CpSetup.java  | 14 ++
 .../persistence/EntityManagerFactory.java |  8 +++-
 .../management/AppInfoMigrationPlugin.java|  3 +--
 .../usergrid/management/ManagementService.java|  4 ++--
 .../cassandra/ManagementServiceImpl.java  | 12 ++--
 .../migration/AppInfoMigrationPluginTest.java |  2 +-
 7 files changed, 26 insertions(+), 35 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/f9028b24/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 c75a025..8b6feed 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
@@ -207,17 +207,16 @@ public class CpEntityManagerFactory implements 
EntityManagerFactory, Application
 
 @Override
 public Entity createApplicationV2(String organizationName, String name) 
throws Exception {
-return createApplicationV2( organizationName, name, null, null );
+return createApplicationV2( organizationName, name, null, null, false);
 }
 
 
 @Override
 public Entity createApplicationV2(
-String orgName, String name, UUID applicationId, Map 
properties) throws Exception {
+String orgName, String name, UUID applicationId, Map 
properties, boolean forMigration) throws Exception {
 
 String appName = buildAppName( orgName, name );
 
-
 final Optional appId = applicationIdCache.getApplicationId( 
appName );
 
 if ( appId.isPresent()) {
@@ -229,7 +228,7 @@ public class CpEntityManagerFactory implements 
EntityManagerFactory, Application
 logger.debug( "New application orgName {} orgAppName {} id {} ",
 new Object[] { orgName, name, applicationId.toString() } );
 
-return initializeApplicationV2( orgName, applicationId, appName, 
properties );
+return initializeApplicationV2( orgName, applicationId, appName, 
properties, forMigration);
 }
 
 
@@ -243,8 +242,8 @@ public class CpEntityManagerFactory implements 
EntityManagerFactory, Application
  * @return UUID of newly created Entity of type application_info
  */
 @Override
-public Entity initializeApplicationV2( String organizationName, final UUID 
applicationId, String name,
-   Map properties ) throws 
Exception {
+public Entity initializeApplicationV2(String organizationName, final UUID 
applicationId, String name,
+  Map properties, 
boolean forMigration) throws Exception {
 
 // Ensure our management system exists before creating our application
 init();
@@ -268,7 +267,12 @@ public class CpEntityManagerFactory implements 
EntityManagerFactory, Application
 }
 properties.put( PROPERTY_NAME, appName );
 appEm.create(applicationId, TYPE_APPLICATION, properties);
-appEm.resetRoles();
+
+// only reset roles if this application isn't being migrated (meaning 
dictionary and role data already exists)
+if(!forMigration){
+appEm.resetRoles();
+}
+
 
 
 // create application info entity in the management app

http://git-wip-us.apache.org/repos/asf/usergrid/blob/f9028b24/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpSetup.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpSetup.java 
b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpSetup.java
index 71db120..035518e 100644
--- 

[28/35] usergrid git commit: Merge branch 'release'

2016-01-25 Thread grey
Merge branch 'release'


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

Branch: refs/heads/USERGRID-1047
Commit: ceae7db5a992291fdac207f47a8e4e229c6bf380
Parents: c4813b5 46fb926
Author: Dave Johnson 
Authored: Fri Jan 22 09:37:19 2016 -0500
Committer: Dave Johnson 
Committed: Fri Jan 22 09:37:19 2016 -0500

--

--




usergrid git commit: Changed how the use of UnsupportedException to be only in core and added a new UnsupportedRestException error that is to be used in the rest tier. Confirmed it is now thrown in th

2016-01-25 Thread grey
Repository: usergrid
Updated Branches:
  refs/heads/USERGRID-767 783c58403 -> f563a8d05


Changed how the use of UnsupportedException to be only in core and added a new 
UnsupportedRestException error that is to be used in the rest tier. Confirmed 
it is now thrown in the correct cases


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

Branch: refs/heads/USERGRID-767
Commit: f563a8d0540578228ad559e5b7a0ed4beac901e4
Parents: 783c584
Author: George Reyes 
Authored: Mon Jan 25 12:48:28 2016 -0800
Committer: George Reyes 
Committed: Mon Jan 25 12:48:28 2016 -0800

--
 .../org/apache/usergrid/rest/ApiResponse.java   |  2 +-
 .../rest/applications/ApplicationResource.java  |  3 +-
 .../exceptions/AbstractExceptionMapper.java |  3 --
 .../UnsupportedOperationExceptionMapper.java|  7 ++--
 .../UnsupportedRestOperationException.java  | 25 ++
 ...UnsupportedRestOperationExceptionMapper.java | 34 
 ...upportedServiceOperationExceptionMapper.java |  3 --
 .../applications/ApplicationResource.java   |  3 +-
 .../usergrid/rest/test/PropertiesResource.java  |  3 +-
 .../rest/test/RefreshIndexResource.java |  3 +-
 .../usergrid/rest/ExceptionResourceIT.java  |  3 --
 .../endpoints/OrganizationResource.java |  3 +-
 .../rest/test/resource/model/Collection.java|  4 ++-
 13 files changed, 76 insertions(+), 20 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/f563a8d0/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 314f9aa..5d61c39 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
@@ -184,7 +184,7 @@ public class ApiResponse {
 error = code;
 if ( e instanceof UncaughtException ) {
 errorId = ((UncaughtException) e).getTimeUUID();
-errorDescription = "Internal Server Error: "+e.getMessage();
+errorDescription = "Error: " + e.getMessage();
 exception = UncaughtException.class.getName();
 } else {
 errorDescription = description;

http://git-wip-us.apache.org/repos/asf/usergrid/blob/f563a8d0/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
index a598c4f..8feee2c 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
@@ -46,6 +46,7 @@ import 
org.apache.usergrid.rest.applications.users.UsersResource;
 import org.apache.usergrid.rest.exceptions.AuthErrorInfo;
 import org.apache.usergrid.rest.exceptions.NotFoundExceptionMapper;
 import org.apache.usergrid.rest.exceptions.RedirectionException;
+import org.apache.usergrid.rest.exceptions.UnsupportedRestOperationException;
 import org.apache.usergrid.rest.security.annotations.RequireApplicationAccess;
 import org.apache.usergrid.rest.security.annotations.RequireOrganizationAccess;
 import org.apache.usergrid.rest.security.annotations.RequireSystemAccess;
@@ -487,7 +488,7 @@ public class ApplicationResource extends ServiceResource {
 @RequireOrganizationAccess
 public ApiResponse executeDelete( @Context final UriInfo ui, 
@DefaultValue( "callback" ) final String callback,
   final String confirmAppDelete ) 
throws Exception {
-throw new UnsupportedOperationException( "Delete must be done from the 
management endpoint" );
+throw new UnsupportedRestOperationException( "Delete must be done from 
the management endpoint" );
 }
 
 

http://git-wip-us.apache.org/repos/asf/usergrid/blob/f563a8d0/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
index 5c42224..765e9fb 100644
--- 

[02/35] usergrid git commit: Fix typo in word 'tenant'.

2016-01-25 Thread grey
Fix typo in word 'tenant'.


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

Branch: refs/heads/USERGRID-1047
Commit: 56eb80f8119324e262eac8fd0a25e4c9a32087cf
Parents: c080b02
Author: Michael Russo 
Authored: Tue Jan 12 16:18:50 2016 -0800
Committer: Michael Russo 
Committed: Tue Jan 12 16:18:50 2016 -0800

--
 .../impl/ScopedCacheSerializationImpl.java  |  12 +-
 .../MvccEntitySerializationStrategyImpl.java|  14 +-
 ...vccEntitySerializationStrategyProxyImpl.java |   4 +-
 .../MvccEntitySerializationStrategyV1Impl.java  |   8 +-
 .../MvccEntitySerializationStrategyV2Impl.java  |  13 +-
 .../MvccEntitySerializationStrategyV3Impl.java  |  14 +-
 .../MvccLogEntrySerializationProxyImpl.java |   4 +-
 .../MvccLogEntrySerializationStrategyImpl.java  |   6 +-
 ...MvccLogEntrySerializationStrategyV1Impl.java |  18 +--
 ...MvccLogEntrySerializationStrategyV2Impl.java |  18 +--
 .../UniqueValueSerializationStrategyImpl.java   |  28 ++--
 ...iqueValueSerializationStrategyProxyImpl.java |   4 +-
 .../UniqueValueSerializationStrategyV1Impl.java |  31 ++---
 .../UniqueValueSerializationStrategyV2Impl.java |  31 ++---
 .../core/astyanax/MultiTenantColumnFamily.java  |  47 +++
 .../MultiTenantColumnFamilyDefinition.java  | 138 +++
 .../core/astyanax/MultiTennantColumnFamily.java |  47 ---
 .../MultiTennantColumnFamilyDefinition.java | 138 ---
 .../data/MigrationInfoSerializationImpl.java|  18 +--
 .../core/migration/schema/Migration.java|   4 +-
 .../migration/schema/MigrationManagerImpl.java  |   9 +-
 .../EdgeMetadataSerializationProxyImpl.java |   4 +-
 .../impl/EdgeMetadataSerializationV1Impl.java   |  36 ++---
 .../impl/EdgeMetadataSerializationV2Impl.java   |  36 ++---
 .../impl/NodeSerializationImpl.java |  14 +-
 .../impl/shard/EdgeColumnFamilies.java  |  12 +-
 .../shard/impl/EdgeShardSerializationImpl.java  |  14 +-
 .../impl/ShardedEdgeSerializationImpl.java  |  58 
 .../impl/shard/impl/ShardsColumnIterator.java   |  15 +-
 .../shard/impl/SizebasedEdgeColumnFamilies.java |  46 +++
 .../map/impl/MapSerializationImpl.java  |  28 ++--
 31 files changed, 424 insertions(+), 445 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/56eb80f8/stack/corepersistence/cache/src/main/java/org/apache/usergrid/persistence/cache/impl/ScopedCacheSerializationImpl.java
--
diff --git 
a/stack/corepersistence/cache/src/main/java/org/apache/usergrid/persistence/cache/impl/ScopedCacheSerializationImpl.java
 
b/stack/corepersistence/cache/src/main/java/org/apache/usergrid/persistence/cache/impl/ScopedCacheSerializationImpl.java
index 1439bc5..22c304a 100644
--- 
a/stack/corepersistence/cache/src/main/java/org/apache/usergrid/persistence/cache/impl/ScopedCacheSerializationImpl.java
+++ 
b/stack/corepersistence/cache/src/main/java/org/apache/usergrid/persistence/cache/impl/ScopedCacheSerializationImpl.java
@@ -71,8 +71,8 @@ public class ScopedCacheSerializationImpl implements 
ScopedCacheSerializati
 
 private static final ObjectSerializer COLUMN_VALUE_SERIALIZER = 
ObjectSerializer.get();
 
-public static final MultiTennantColumnFamily SCOPED_CACHE
-= new MultiTennantColumnFamily<>( "SCOPED_CACHE",
+public static final MultiTenantColumnFamily SCOPED_CACHE
+= new MultiTenantColumnFamily<>( "SCOPED_CACHE",
 BUCKET_ROWKEY_SERIALIZER, COLUMN_NAME_SERIALIZER, 
COLUMN_VALUE_SERIALIZER );
 
 /** Number of buckets to hash across */
@@ -278,13 +278,13 @@ public class ScopedCacheSerializationImpl implements 
ScopedCacheSerializati
 
//--
 
 @Override
-public Collection getColumnFamilies() {
-final MultiTennantColumnFamilyDefinition scopedCache =
-new MultiTennantColumnFamilyDefinition( SCOPED_CACHE,
+public Collection getColumnFamilies() {
+final MultiTenantColumnFamilyDefinition scopedCache =
+new MultiTenantColumnFamilyDefinition( SCOPED_CACHE,
 BytesType.class.getSimpleName(),
 BytesType.class.getSimpleName(),
 BytesType.class.getSimpleName(),
-MultiTennantColumnFamilyDefinition.CacheOption.KEYS );
+MultiTenantColumnFamilyDefinition.CacheOption.KEYS );
 
 return Arrays.asList(scopedCache);
 }


[09/35] usergrid git commit: Fix Astyanax locking to be re-entrant as Hector locks were and possible UG code expects it to be. Remove all reference of Hector locks, changing its existing test to work

2016-01-25 Thread grey
Fix Astyanax locking to be re-entrant as Hector locks were and possible UG code 
expects it to be.  Remove all reference of Hector locks, changing its existing 
test to work with Astyanax.


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

Branch: refs/heads/USERGRID-1047
Commit: 973f5a70c9cab0fdd5006684d3def8e18f962b51
Parents: d1c1d01
Author: Michael Russo 
Authored: Thu Jan 14 15:30:52 2016 -0800
Committer: Michael Russo 
Committed: Thu Jan 14 15:30:52 2016 -0800

--
 .../locking/cassandra/AstyanaxLockImpl.java |  31 +++-
 .../cassandra/AstyanaxLockManagerImpl.java  |   4 +-
 .../locking/cassandra/HectorLockImpl.java   |  86 -
 .../cassandra/HectorLockManagerImpl.java| 142 --
 .../usergrid/locking/AstyanaxLockManagerIT.java | 164 
 .../locking/SingleNodeLockTestSingleNode.java   | 163 
 .../locking/cassandra/HectorLockManagerIT.java  | 185 ---
 .../SingleNodeLockTestSingleNode.java   | 170 -
 .../test/resources/testApplicationContext.xml   |   4 -
 9 files changed, 352 insertions(+), 597 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/973f5a70/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockImpl.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockImpl.java
 
b/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockImpl.java
index 3c12d8a..1399d16 100644
--- 
a/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockImpl.java
+++ 
b/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockImpl.java
@@ -19,24 +19,24 @@ package org.apache.usergrid.locking.cassandra;
 
 import com.netflix.astyanax.recipes.locks.ColumnPrefixDistributedRowLock;
 
+import com.netflix.astyanax.retry.RetryPolicy;
+import com.netflix.astyanax.retry.RunOnce;
 import org.apache.usergrid.locking.Lock;
 import org.apache.usergrid.locking.exception.UGLockException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicInteger;
 
 
 public class AstyanaxLockImpl implements Lock {
 
-private static final Logger logger = LoggerFactory.getLogger( 
AstyanaxLockImpl.class );
+private AtomicInteger count = new AtomicInteger();
+private ColumnPrefixDistributedRowLock lock;
 
 
-
-ColumnPrefixDistributedRowLock lock;
-
-public AstyanaxLockImpl(//AstyanaxLockManagerImpl lockManager,
-ColumnPrefixDistributedRowLock lock) {
+public AstyanaxLockImpl( ColumnPrefixDistributedRowLock lock ) {
 
 this.lock = lock;
 
@@ -45,21 +45,27 @@ public class AstyanaxLockImpl implements Lock {
 
 @Override
 public boolean tryLock( long timeout, TimeUnit time ) throws 
UGLockException {
-lock.withTtl( (int) timeout, time);
 
 try {
+
 lock.acquire();
-return true;
+count.incrementAndGet();
+
 } catch (Exception e) {
 return false;
 }
+
+return true;
 }
 
 @Override
 public void lock() throws UGLockException {
 
 try {
+
 lock.acquire();
+count.incrementAndGet();
+
 } catch (Exception e) {
 throw new UGLockException("Unable to acquire lock with id: " + 
lock.getLockId());
 }
@@ -68,8 +74,15 @@ public class AstyanaxLockImpl implements Lock {
 @Override
 public void unlock() throws UGLockException {
 
+// all re-entrant locks to be used and only release them all when the 
count is 0
+int current = count.decrementAndGet();
+
 try {
-lock.release();
+
+if ( current == 0 ) {
+lock.release();
+}
+
 } catch (Exception e) {
 throw new UGLockException("Unable to release lock with id: " + 
lock.getLockId());
 }

http://git-wip-us.apache.org/repos/asf/usergrid/blob/973f5a70/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java
 
b/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java
index ece942f..1786d72 100644
--- 

[01/35] usergrid git commit: Fix typo in word 'tenant'.

2016-01-25 Thread grey
Repository: usergrid
Updated Branches:
  refs/heads/USERGRID-1047 d97f6e3c5 -> e7d2d9257


http://git-wip-us.apache.org/repos/asf/usergrid/blob/56eb80f8/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/EdgeMetadataSerializationV2Impl.java
--
diff --git 
a/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/EdgeMetadataSerializationV2Impl.java
 
b/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/EdgeMetadataSerializationV2Impl.java
index 9e59dbf..2af62a8 100644
--- 
a/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/EdgeMetadataSerializationV2Impl.java
+++ 
b/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/EdgeMetadataSerializationV2Impl.java
@@ -39,8 +39,8 @@ import 
org.apache.usergrid.persistence.core.astyanax.ColumnSearch;
 import org.apache.usergrid.persistence.core.astyanax.CompositeFieldSerializer;
 import org.apache.usergrid.persistence.core.astyanax.IdRowCompositeSerializer;
 import org.apache.usergrid.persistence.core.astyanax.MultiRowColumnIterator;
-import org.apache.usergrid.persistence.core.astyanax.MultiTennantColumnFamily;
-import 
org.apache.usergrid.persistence.core.astyanax.MultiTennantColumnFamilyDefinition;
+import org.apache.usergrid.persistence.core.astyanax.MultiTenantColumnFamily;
+import 
org.apache.usergrid.persistence.core.astyanax.MultiTenantColumnFamilyDefinition;
 import org.apache.usergrid.persistence.core.astyanax.StringColumnParser;
 import org.apache.usergrid.persistence.core.migration.schema.Migration;
 import org.apache.usergrid.persistence.core.scope.ApplicationScope;
@@ -99,23 +99,23 @@ public class EdgeMetadataSerializationV2Impl implements 
EdgeMetadataSerializatio
 /**
  * CFs where the row key contains the source node id
  */
-private static final MultiTennantColumnFamily CF_SOURCE_EDGE_TYPES =
-new MultiTennantColumnFamily<>( "Graph_Source_Edge_Types_V2", 
ROW_KEY_SER, STRING_SERIALIZER );
+private static final MultiTenantColumnFamily CF_SOURCE_EDGE_TYPES =
+new MultiTenantColumnFamily<>( "Graph_Source_Edge_Types_V2", 
ROW_KEY_SER, STRING_SERIALIZER );
 
 //all target id types for source edge type
-private static final 
MultiTennantColumnFamily 
CF_SOURCE_EDGE_ID_TYPES =
-new MultiTennantColumnFamily<>( "Graph_Source_Edge_Id_Types_V2", 
EDGE_TYPE_ROW_KEY, STRING_SERIALIZER );
+private static final 
MultiTenantColumnFamily 
CF_SOURCE_EDGE_ID_TYPES =
+new MultiTenantColumnFamily<>( "Graph_Source_Edge_Id_Types_V2", 
EDGE_TYPE_ROW_KEY, STRING_SERIALIZER );
 
 /**
  * CFs where the row key is the target node id
  */
-private static final MultiTennantColumnFamily CF_TARGET_EDGE_TYPES =
-new MultiTennantColumnFamily<>( "Graph_Target_Edge_Types_V2", 
ROW_KEY_SER, STRING_SERIALIZER );
+private static final MultiTenantColumnFamily CF_TARGET_EDGE_TYPES =
+new MultiTenantColumnFamily<>( "Graph_Target_Edge_Types_V2", 
ROW_KEY_SER, STRING_SERIALIZER );
 
 
 //all source id types for target edge type
-private static final 
MultiTennantColumnFamily 
CF_TARGET_EDGE_ID_TYPES =
-new MultiTennantColumnFamily<>( "Graph_Target_Edge_Id_Types_V2", 
EDGE_TYPE_ROW_KEY, STRING_SERIALIZER );
+private static final 
MultiTenantColumnFamily 
CF_TARGET_EDGE_ID_TYPES =
+new MultiTenantColumnFamily<>( "Graph_Target_Edge_Id_Types_V2", 
EDGE_TYPE_ROW_KEY, STRING_SERIALIZER );
 
 
 private static final Comparator STRING_COMPARATOR = new 
Comparator() {
@@ -321,7 +321,7 @@ public class EdgeMetadataSerializationV2Impl implements 
EdgeMetadataSerializatio
  */
 private MutationBatch removeEdgeType( final ApplicationScope scope, final 
Id rowKeyId, final String edgeType,
   final long version,
-  final 
MultiTennantColumnFamily cf ) {
+  final 
MultiTenantColumnFamily cf ) {
 
 
 //write target<--source edge type meta data
@@ -352,7 +352,7 @@ public class EdgeMetadataSerializationV2Impl implements 
EdgeMetadataSerializatio
  */
 private MutationBatch removeIdType( final ApplicationScope scope, final Id 
rowId, final String idType,
 final String edgeType, final long 
version,
-final 
MultiTennantColumnFamily 

[08/35] usergrid git commit: Remove commented, old Hector configuration from Spring context config.

2016-01-25 Thread grey
Remove commented, old Hector configuration from Spring context config.


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

Branch: refs/heads/USERGRID-1047
Commit: d1c1d01fc9ecbfa33493b7c2a8c4c8c155132971
Parents: 8ddc7d9
Author: Michael Russo 
Authored: Thu Jan 14 13:31:03 2016 -0800
Committer: Michael Russo 
Committed: Thu Jan 14 13:31:03 2016 -0800

--
 .../main/resources/usergrid-core-context.xml| 22 
 1 file changed, 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/d1c1d01f/stack/core/src/main/resources/usergrid-core-context.xml
--
diff --git a/stack/core/src/main/resources/usergrid-core-context.xml 
b/stack/core/src/main/resources/usergrid-core-context.xml
index d413816..fb668fa 100644
--- a/stack/core/src/main/resources/usergrid-core-context.xml
+++ b/stack/core/src/main/resources/usergrid-core-context.xml
@@ -72,33 +72,11 @@
 
 
 
-   
-   
-
-
 
 
 
 
-
 




[15/35] usergrid git commit: Fixes to allow ImportAdmin to run in distributed env, also remove org-merge from ImportAdmins.

2016-01-25 Thread grey
Fixes to allow ImportAdmin to run in distributed env, also remove org-merge 
from ImportAdmins.


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

Branch: refs/heads/USERGRID-1047
Commit: b22ac656cda8429ac4ae47ffbdfe78c9c4fb599b
Parents: e38ee3e
Author: Dave Johnson 
Authored: Fri Jan 15 15:12:09 2016 -0500
Committer: Dave Johnson 
Committed: Fri Jan 15 15:12:09 2016 -0500

--
 .../org/apache/usergrid/tools/ImportAdmins.java | 81 ++--
 .../org/apache/usergrid/tools/ToolBase.java |  6 +-
 2 files changed, 11 insertions(+), 76 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/b22ac656/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java
--
diff --git 
a/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java 
b/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java
index 7a925b0..c1a60b8 100644
--- a/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java
+++ b/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java
@@ -30,7 +30,6 @@ import org.apache.usergrid.persistence.EntityRef;
 import org.apache.usergrid.persistence.SimpleEntityRef;
 import org.apache.usergrid.persistence.entities.User;
 import 
org.apache.usergrid.persistence.exceptions.DuplicateUniquePropertyExistsException;
-import org.apache.usergrid.persistence.index.query.Identifier;
 import org.codehaus.jackson.JsonFactory;
 import org.codehaus.jackson.JsonParser;
 import org.codehaus.jackson.JsonToken;
@@ -118,9 +117,8 @@ public class ImportAdmins extends ToolBase {
 @SuppressWarnings("static-access")
 public Options createOptions() {
 
-Option hostOption = OptionBuilder.withArgName("host")
-.hasArg()
-.withDescription("Cassandra host").create("host");
+// inherit parent options
+Options options = super.createOptions();
 
 Option inputDir = OptionBuilder
 .hasArg()
@@ -138,10 +136,8 @@ public class ImportAdmins extends ToolBase {
 .withDescription("Print on the console an echo of the content 
written to the file")
 .create(VERBOSE);
 
-Options options = new Options();
-options.addOption(hostOption);
-options.addOption(writeThreads);
-options.addOption(auditThreads);
+options.addOption( writeThreads );
+options.addOption( auditThreads );
 options.addOption( inputDir );
 options.addOption( verbose );
 
@@ -503,73 +499,8 @@ public class ImportAdmins extends ToolBase {
 logger.warn("User {} has no dictionaries", entityRef.getUuid() 
);
 }
 
-} else { // this is a duplicate user, so merge orgs
-
-logger.info("Processing duplicate username={} email={}", 
dup.email, dup.username );
-
-Identifier identifier = dup.email != null ?
-Identifier.fromEmail( dup.email ) : Identifier.from( 
dup.username );
-User originalUser = em.get( em.getUserByIdentifier(identifier), 
User.class );
-
-// get map of original user's orgs
-
-UserInfo originalUserInfo = managementService.getAdminUserByEmail( 
originalUser.getEmail() );
-Map originalUserOrgData =
-managementService.getAdminUserOrganizationData( 
originalUser.getUuid() );
-Map> originalUserOrgs =
-(Map>) 
originalUserOrgData.get( "organizations" );
-
-// loop through duplicate user's orgs and give orgs to original 
user
-
-List organizationsList = (List) 
metadata.get("organizations");
-for (Object orgObject : organizationsList) {
-
-Map orgMap = (Map) orgObject;
-UUID orgUuid = UUID.fromString( (String) orgMap.get( "uuid" ) 
);
-String orgName = (String) orgMap.get( "name" );
-
-if (originalUserOrgs.get( orgName ) == null) { // original 
user does not have this org
-
-OrganizationInfo orgInfo = 
managementService.getOrganizationByUuid( orgUuid );
-
-if (orgInfo == null) { // org does not exist yet, create 
it and add original user to it
-try {
-managementService.createOrganization( orgUuid, 
orgName, originalUserInfo, false );
-orgInfo = 

[13/35] usergrid git commit: Initial work to support a typed null field for an entity, including a new index field type named "null" with value of null. Also changes to pass a Set to elasticsearch for

2016-01-25 Thread grey
Initial work to support a typed null field for an entity, including a new index 
field type named "null" with value of null.  Also changes to pass a Set to 
elasticsearch for fields to index instead of a non unique list.

Conflicts:

stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/FieldTypeName.java

stack/corepersistence/model/src/test/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverterTest.java

stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/EntityIndexTest.java


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

Branch: refs/heads/USERGRID-1047
Commit: 4a695c09f8ea5ba88ae8fad528d0576e9ccee0df
Parents: 38b6b88
Author: Michael Russo 
Authored: Fri Jan 15 09:10:10 2016 -0800
Committer: Michael Russo 
Committed: Fri Jan 15 09:16:10 2016 -0800

--
 .../model/entity/MapToEntityConverter.java  |  18 ++-
 .../persistence/model/field/FieldTypeName.java  |   3 +-
 .../persistence/model/field/NullField.java  |  44 ++
 .../model/entity/MapToEntityConverterTest.java  | 142 +++
 .../persistence/model/field/EntityTest.java |   9 +-
 .../persistence/index/impl/EntityField.java |  11 ++
 .../index/impl/EntityMappingParser.java |  16 ++-
 .../index/impl/EntityToMapConverter.java|   3 +-
 .../persistence/index/impl/FieldParser.java |   5 +-
 .../persistence/index/impl/IndexingUtils.java   |   1 +
 .../persistence/index/impl/EntityIndexTest.java |  79 ++-
 .../index/impl/EntityToMapConverterTest.java|  80 +--
 12 files changed, 378 insertions(+), 33 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/4a695c09/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
--
diff --git 
a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
 
b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
index aff7439..38d6631 100644
--- 
a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
+++ 
b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
@@ -77,7 +77,13 @@ public class MapToEntityConverter{
 entity.setField( new LongField( fieldName, (Long)value, unique 
));
 
 } else if ( value instanceof List) {
-entity.setField( listToListField( fieldName, (List)value ));
+
+Field field = listToListField( fieldName, (List)value );
+if(field == null){
+entity.setField( new NullField( fieldName, unique));
+}else{
+entity.setField( listToListField( fieldName, (List)value 
));
+}
 
 } else if ( value instanceof UUID) {
 entity.setField( new UUIDField( fieldName, (UUID)value, unique 
));
@@ -88,7 +94,10 @@ public class MapToEntityConverter{
 } else if ( value instanceof Enum ) {
 entity.setField( new StringField( fieldName, value.toString(), 
unique ));
 
-} else if ( value != null ) {
+} else if ( value == null ){
+entity.setField( new NullField( fieldName, unique ));
+
+} else {
 byte[] valueSerialized;
 try {
 valueSerialized = objectMapper.writeValueAsBytes( value );
@@ -137,7 +146,10 @@ public class MapToEntityConverter{
 } else if ( sample instanceof Long ) {
 return new ArrayField( fieldName, (List)list );
 
-} else {
+} else if ( sample == null ) {
+return new ArrayField( fieldName, (List)list );
+
+} else{
 throw new RuntimeException("Unknown type " + 
sample.getClass().getName());
 }
 }

http://git-wip-us.apache.org/repos/asf/usergrid/blob/4a695c09/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/FieldTypeName.java
--
diff --git 
a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/FieldTypeName.java
 
b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/field/FieldTypeName.java
index 90f3879..975c6bb 100644
--- 

[21/35] usergrid git commit: Fix the default consistency level settings in properties. The fig (e.g. CassandraFig) will only use its default if there was no java prop set already.

2016-01-25 Thread grey
Fix the default consistency level settings in properties.  The fig (e.g. 
CassandraFig) will only use its default if there was no java prop set already.


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

Branch: refs/heads/USERGRID-1047
Commit: e03354f60bc1174056ced91926172fdf004bec33
Parents: cf3d6a3
Author: Michael Russo 
Authored: Sun Jan 17 17:10:48 2016 -0800
Committer: Michael Russo 
Committed: Sun Jan 17 17:10:48 2016 -0800

--
 .../config/src/main/resources/usergrid-default.properties | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/e03354f6/stack/config/src/main/resources/usergrid-default.properties
--
diff --git a/stack/config/src/main/resources/usergrid-default.properties 
b/stack/config/src/main/resources/usergrid-default.properties
index 39ae84e..cac7898 100644
--- a/stack/config/src/main/resources/usergrid-default.properties
+++ b/stack/config/src/main/resources/usergrid-default.properties
@@ -134,19 +134,19 @@ cassandra.password=
 
 # Set the read consistency level.  This is the default Usergrid read 
consistency.
 #
-cassandra.readcl=QUORUM
-usergrid.read.cl=CL_QUORUM
+cassandra.readcl=LOCAL_QUORUM
+usergrid.read.cl=CL_LOCAL_QUORUM
 
 # Set the write consistency level.  This is the default Usergrid write 
consistency.
 #
-cassandra.writecl=QUORUM
-usergrid.write.cl=CL_QUORUM
+cassandra.writecl=LOCAL_QUORUM
+usergrid.write.cl=CL_LOCAL_QUORUM
 
 # Set an additional strict read consistency level.  When choosing to perform a
 # consistent read from Usergrid, this is the consistency level used when 
reading
 # from Cassandra.  Used only with astyanax client.
 #
-#usergrid.consistent.read.cl=CL_LOCAL_QUORUM
+#usergrid.consistent.read.cl=CL_QUORUM
 
 
 # Set the timeout used when writing unique values and logs to the datastore. 
(in seconds).



[20/35] usergrid git commit: Merge commit '4945b6f2d3a8a2d6e78c230bce6be09082dfa68c'

2016-01-25 Thread grey
Merge commit '4945b6f2d3a8a2d6e78c230bce6be09082dfa68c'

* commit '4945b6f2d3a8a2d6e78c230bce6be09082dfa68c':
  Implement a minimum lock expiration time.
  Ensure the lock manager is injected as a singleton.
  Remove unused SingleNodeLockImpl and any references to this.
  Simplify the locks consistency level and default it to LQ in case something 
passed cannot be parsed to a valid consistency level.
  Fix Astyanax locking to be re-entrant as Hector locks were and possible UG 
code expects it to be.  Remove all reference of Hector locks, changing its 
existing test to work with Astyanax.
  Remove commented, old Hector configuration from Spring context config.
  Fix new lock manager wiring issues in services layer.
  First commit of new implementation of Astyanax locks and having it wired with 
guide instead of Spring.
  Remove unused zookeeper lock manager.
  Fix typo in word 'tenant'.


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

Branch: refs/heads/USERGRID-1047
Commit: d796b68c64a47b5a79f9b98ae26f5a326ca62bd5
Parents: a51ee2c 4945b6f
Author: George Reyes 
Authored: Fri Jan 15 16:44:30 2016 -0800
Committer: George Reyes 
Committed: Fri Jan 15 16:44:30 2016 -0800

--
 .../src/main/dist/lib/log4j.properties  |   1 -
 .../src/test/resources/usergrid-test.properties |   5 -
 stack/core/pom.xml  |  10 +-
 .../apache/usergrid/batch/job/OnlyOnceJob.java  |   3 +-
 .../usergrid/corepersistence/CoreModule.java|   2 +
 .../locking/cassandra/AstyanaxLockImpl.java |  92 +
 .../cassandra/AstyanaxLockManagerImpl.java  | 211 +++
 .../locking/cassandra/HectorLockImpl.java   |  86 -
 .../cassandra/HectorLockManagerImpl.java| 142 
 .../usergrid/locking/guice/LockModule.java  |  40 +++
 .../locking/singlenode/SingleNodeLockImpl.java  |  71 
 .../singlenode/SingleNodeLockManagerImpl.java   |  96 -
 .../zookeeper/ZooKeeperLockManagerImpl.java | 115 --
 .../locking/zookeeper/ZookeeperLockImpl.java|  88 -
 .../mq/cassandra/QueueManagerFactoryImpl.java   |   5 +-
 .../persistence/cassandra/CassandraService.java |   5 +-
 .../main/resources/usergrid-core-context.xml|  36 +-
 .../org/apache/usergrid/CoreITSetupImpl.java|   4 +
 .../usergrid/locking/AstyanaxLockManagerIT.java | 164 +
 .../locking/cassandra/HectorLockManagerIT.java  | 185 --
 .../SingleNodeLockTestSingleNode.java   | 170 -
 .../zookeeper/AbstractZooKeeperTest.java| 127 ---
 .../usergrid/locking/zookeeper/ZooPut.java  | 114 --
 .../zookeeper/ZookeeperLockManagerTest.java | 186 --
 stack/core/src/test/resources/log4j.properties  |   1 -
 .../impl/ScopedCacheSerializationImpl.java  |  12 +-
 .../MvccEntitySerializationStrategyImpl.java|  14 +-
 ...vccEntitySerializationStrategyProxyImpl.java |   4 +-
 .../MvccEntitySerializationStrategyV1Impl.java  |   8 +-
 .../MvccEntitySerializationStrategyV2Impl.java  |  13 +-
 .../MvccEntitySerializationStrategyV3Impl.java  |  14 +-
 .../MvccLogEntrySerializationProxyImpl.java |   4 +-
 .../MvccLogEntrySerializationStrategyImpl.java  |   6 +-
 ...MvccLogEntrySerializationStrategyV1Impl.java |  18 +-
 ...MvccLogEntrySerializationStrategyV2Impl.java |  18 +-
 .../UniqueValueSerializationStrategyImpl.java   |  28 +-
 ...iqueValueSerializationStrategyProxyImpl.java |   4 +-
 .../UniqueValueSerializationStrategyV1Impl.java |  31 +-
 .../UniqueValueSerializationStrategyV2Impl.java |  31 +-
 stack/corepersistence/common/pom.xml| 351 ++-
 .../core/astyanax/AstyanaxKeyspaceProvider.java |  46 +--
 .../core/astyanax/CassandraCluster.java |  20 ++
 .../core/astyanax/CassandraClusterImpl.java | 198 +++
 .../persistence/core/astyanax/CassandraFig.java |  72 +++-
 .../core/astyanax/MultiTenantColumnFamily.java  |  47 +++
 .../MultiTenantColumnFamilyDefinition.java  | 138 
 .../core/astyanax/MultiTennantColumnFamily.java |  47 ---
 .../MultiTennantColumnFamilyDefinition.java | 138 
 .../persistence/core/guice/CommonModule.java|  11 +-
 .../data/MigrationInfoSerializationImpl.java|  24 +-
 .../core/migration/schema/Migration.java|   4 +-
 .../migration/schema/MigrationManagerImpl.java  |   9 +-
 .../core/astyanax/ColumnNameIteratorTest.java   |   5 +-
 .../MultiKeyColumnNameIteratorTest.java |   5 +-
 .../astyanax/MultiRowColumnIteratorTest.java|   5 +-
 .../persistence/core/astyanax/TestUtils.java|   8 +-
 .../EdgeMetadataSerializationProxyImpl.java |   4 +-
 .../impl/EdgeMetadataSerializationV1Impl.java   |  36 +-
 

[17/35] usergrid git commit: Ensure the lock manager is injected as a singleton.

2016-01-25 Thread grey
Ensure the lock manager is injected as a singleton.


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

Branch: refs/heads/USERGRID-1047
Commit: 289cc97c34d5fbe4ec16ac376da85621055524a1
Parents: 0071df0
Author: Michael Russo 
Authored: Fri Jan 15 12:26:20 2016 -0800
Committer: Michael Russo 
Committed: Fri Jan 15 12:26:20 2016 -0800

--
 .../apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java | 2 ++
 .../main/java/org/apache/usergrid/locking/guice/LockModule.java| 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/289cc97c/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java
 
b/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java
index f310118..1fcd1b7 100644
--- 
a/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java
+++ 
b/stack/core/src/main/java/org/apache/usergrid/locking/cassandra/AstyanaxLockManagerImpl.java
@@ -19,6 +19,7 @@ package org.apache.usergrid.locking.cassandra;
 
 import com.google.common.collect.ImmutableMap;
 import com.google.inject.Inject;
+import com.google.inject.Singleton;
 import com.netflix.astyanax.Keyspace;
 import com.netflix.astyanax.connectionpool.exceptions.ConnectionException;
 import com.netflix.astyanax.ddl.ColumnFamilyDefinition;
@@ -41,6 +42,7 @@ import java.util.Map;
 import java.util.UUID;
 import java.util.concurrent.TimeUnit;
 
+@Singleton
 public class AstyanaxLockManagerImpl implements LockManager {
 
 private static final Logger logger = LoggerFactory.getLogger( 
AstyanaxLockManagerImpl.class );

http://git-wip-us.apache.org/repos/asf/usergrid/blob/289cc97c/stack/core/src/main/java/org/apache/usergrid/locking/guice/LockModule.java
--
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/locking/guice/LockModule.java 
b/stack/core/src/main/java/org/apache/usergrid/locking/guice/LockModule.java
index 49c58fe..79e2b67 100644
--- a/stack/core/src/main/java/org/apache/usergrid/locking/guice/LockModule.java
+++ b/stack/core/src/main/java/org/apache/usergrid/locking/guice/LockModule.java
@@ -32,7 +32,7 @@ public class LockModule extends AbstractModule {
 @Override
 protected void configure() {
 
-bind( LockManager.class ).to( AstyanaxLockManagerImpl.class );
+bind( LockManager.class ).to( AstyanaxLockManagerImpl.class 
).asEagerSingleton();
 
 }
 }



[25/35] usergrid git commit: "port" tools from master

2016-01-25 Thread grey
"port" tools from master


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

Branch: refs/heads/USERGRID-1047
Commit: e5ebb375386f34b2ad8883c28701500b59208a81
Parents: 4e048f3
Author: Dave Johnson 
Authored: Fri Jan 22 09:31:06 2016 -0500
Committer: Dave Johnson 
Committed: Fri Jan 22 09:31:06 2016 -0500

--
 .../usergrid/management/ManagementService.java  |   4 +-
 .../cassandra/ManagementServiceImpl.java|  10 +-
 .../usergrid/tools/DryRunUserOrgManager.java|  62 +++
 .../usergrid/tools/DuplicateAdminRepair.java| 293 +
 .../usergrid/tools/DuplicateOrgRepair.java  | 421 +++
 .../org/apache/usergrid/tools/ExportAdmins.java |  38 +-
 .../apache/usergrid/tools/UserOrgInterface.java | 173 
 .../apache/usergrid/tools/UserOrgManager.java   | 389 +
 .../apache/usergrid/tools/ExportAppTest.java|   4 -
 9 files changed, 1372 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/e5ebb375/stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
--
diff --git 
a/stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
 
b/stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
index cf2924b..0851838 100644
--- 
a/stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
+++ 
b/stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
@@ -229,7 +229,9 @@ public interface ManagementService {
   String objectType, String 
objectName, String title, String content )
 throws Exception;
 
-public void removeAdminUserFromOrganization( UUID userId, UUID 
organizationId ) throws Exception;
+public void removeAdminUserFromOrganization(UUID userId, UUID 
organizationId ) throws Exception;
+
+public void removeAdminUserFromOrganization(UUID userId, UUID 
organizationId, boolean force ) throws Exception;
 
 public void removeOrganizationApplication( UUID organizationId, UUID 
applicationId ) throws Exception;
 

http://git-wip-us.apache.org/repos/asf/usergrid/blob/e5ebb375/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 f252705..fe8152d 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
@@ -1585,7 +1585,13 @@ public class ManagementServiceImpl implements 
ManagementService {
 
 
 @Override
-public void removeAdminUserFromOrganization( UUID userId, UUID 
organizationId ) throws Exception {
+public void removeAdminUserFromOrganization(UUID userId, UUID 
organizationId ) throws Exception {
+removeAdminUserFromOrganization( userId, organizationId, false );
+}
+
+
+@Override
+public void removeAdminUserFromOrganization(UUID userId, UUID 
organizationId, boolean force) throws Exception {
 
 if ( ( userId == null ) || ( organizationId == null ) ) {
 return;
@@ -1594,7 +1600,7 @@ public class ManagementServiceImpl implements 
ManagementService {
 EntityManager em = emf.getEntityManager( smf.getManagementAppId() );
 
 try {
-if ( em.getCollection( new SimpleEntityRef( Group.ENTITY_TYPE, 
organizationId ), "users", null, 2,
+if ( !force && em.getCollection( new SimpleEntityRef( 
Group.ENTITY_TYPE, organizationId ), "users", null, 2,
 Level.IDS, false ).size() <= 1 ) {
 throw new Exception();
 }

http://git-wip-us.apache.org/repos/asf/usergrid/blob/e5ebb375/stack/tools/src/main/java/org/apache/usergrid/tools/DryRunUserOrgManager.java
--
diff --git 
a/stack/tools/src/main/java/org/apache/usergrid/tools/DryRunUserOrgManager.java 
b/stack/tools/src/main/java/org/apache/usergrid/tools/DryRunUserOrgManager.java
new file mode 100644
index 000..966b18c
--- /dev/null
+++ 
b/stack/tools/src/main/java/org/apache/usergrid/tools/DryRunUserOrgManager.java
@@ -0,0 +1,62 @@
+/*
+ * Licensed to 

[04/35] usergrid git commit: Copy in just the tools changes from the master branch.

2016-01-25 Thread grey
http://git-wip-us.apache.org/repos/asf/usergrid/blob/e38ee3e9/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java
--
diff --git 
a/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java 
b/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java
index f39ef9b..7a925b0 100644
--- a/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java
+++ b/stack/tools/src/main/java/org/apache/usergrid/tools/ImportAdmins.java
@@ -17,20 +17,20 @@
 package org.apache.usergrid.tools;
 
 
-import com.sun.org.apache.bcel.internal.generic.DUP;
 import org.apache.commons.cli.CommandLine;
 import org.apache.commons.cli.Option;
 import org.apache.commons.cli.OptionBuilder;
 import org.apache.commons.cli.Options;
 import org.apache.commons.io.filefilter.PrefixFileFilter;
+import org.apache.usergrid.corepersistence.util.CpNamingUtils;
 import org.apache.usergrid.management.OrganizationInfo;
 import org.apache.usergrid.management.UserInfo;
 import org.apache.usergrid.persistence.EntityManager;
 import org.apache.usergrid.persistence.EntityRef;
-import org.apache.usergrid.persistence.Identifier;
 import org.apache.usergrid.persistence.SimpleEntityRef;
 import org.apache.usergrid.persistence.entities.User;
 import 
org.apache.usergrid.persistence.exceptions.DuplicateUniquePropertyExistsException;
+import org.apache.usergrid.persistence.index.query.Identifier;
 import org.codehaus.jackson.JsonFactory;
 import org.codehaus.jackson.JsonParser;
 import org.codehaus.jackson.JsonToken;
@@ -39,7 +39,10 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.File;
-import java.util.*;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
 import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.TimeUnit;
@@ -47,18 +50,16 @@ import java.util.concurrent.atomic.AtomicInteger;
 
 import static org.apache.usergrid.persistence.Schema.PROPERTY_TYPE;
 import static org.apache.usergrid.persistence.Schema.PROPERTY_UUID;
-import static 
org.apache.usergrid.persistence.cassandra.CassandraService.MANAGEMENT_APPLICATION_ID;
-
 
 /**
  * Import Admin Users and metadata including organizations and passwords.
- * 
- * Usage Example: 
- * 
+ *
+ * Usage Example:
+ *
  * java -Xmx8000m -Dlog4j.configuration=file:/home/me/log4j.properties 
-classpath . \
  *  -jar usergrid-tools-1.0.2.jar ImportAdmins -writeThreads 100 
-auditThreads 100 \
- *  -host casshost -inputDir=/home/me/import-data 
- *  
+ *  -host casshost -inputDir=/home/me/import-data
+ *
  * If you want to provide any property overrides, put properties file named 
usergrid-custom-tools.properties
  * in the same directory where you run the above command. For example, you 
might want to set the Cassandra
  * client threads and import to a specific set of keyspaces:
@@ -97,8 +98,8 @@ public class ImportAdmins extends ToolBase {
 AtomicInteger writeEmptyCount = new AtomicInteger( 0 );
 AtomicInteger auditEmptyCount = new AtomicInteger( 0 );
 AtomicInteger metadataEmptyCount = new AtomicInteger( 0 );
-
-
+
+
 static class DuplicateUser {
 String email;
 String username;
@@ -110,7 +111,7 @@ public class ImportAdmins extends ToolBase {
 }
 }
 }
-
+
 
 
 @Override
@@ -269,7 +270,7 @@ public class ImportAdmins extends ToolBase {
 long timeRemaining = (long) ( sizeLast / (rateAverageSum / 
iterations) );
 
 logger.info("++PROGRESS ({}): sizeLast={} nowSize={} processed={} 
rateLast={}/s rateAvg={}/s timeRemaining={}s",
-new Object[] { 
+new Object[] {
 identifier, sizeLast, sizeNow, processed, rateLast, 
(rateAverageSum / iterations), timeRemaining } );
 }
 
@@ -355,7 +356,7 @@ public class ImportAdmins extends ToolBase {
 workerThread.start();
 metadataWorkerThreadMap.put(worker, workerThread);
 }
-
+
 logger.info( "Started {} metadata workers", writeThreadCount );
 }
 
@@ -363,7 +364,7 @@ public class ImportAdmins extends ToolBase {
 @SuppressWarnings("unchecked")
 private void importMetadata(String fileName, int writeThreads) throws 
Exception {
 
-EntityManager em = emf.getEntityManager(MANAGEMENT_APPLICATION_ID);
+EntityManager em = emf.getEntityManager( 
CpNamingUtils.MANAGEMENT_APPLICATION_ID);
 
 File metadataFile = new File(importDir, fileName);
 
@@ -401,10 +402,10 @@ public class ImportAdmins extends ToolBase {
 try {
 EntityRef entityRef = new SimpleEntityRef( "user", 
UUID.fromString( entityOwnerId ) );
 Map metadata = (Map) 
jp.readValueAs( Map.class );
-
+
 

usergrid git commit: USERGRID-1200: EmailFlowIT fix

2016-01-25 Thread mdunker
Repository: usergrid
Updated Branches:
  refs/heads/master 4610eed26 -> 586dad080


USERGRID-1200: EmailFlowIT fix


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

Branch: refs/heads/master
Commit: 586dad08091ed19e532695f234a0d973176ad3b6
Parents: 4610eed
Author: Mike Dunker 
Authored: Mon Jan 25 17:23:58 2016 -0800
Committer: Mike Dunker 
Committed: Mon Jan 25 17:23:58 2016 -0800

--
 .../test/java/org/apache/usergrid/management/EmailFlowIT.java| 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/586dad08/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 e9c0bd8..a46bd60 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
@@ -78,7 +78,6 @@ public class EmailFlowIT {
 setup.set( PROPERTIES_SYSADMIN_APPROVES_ADMIN_USERS, "false" );
 setup.set( PROPERTIES_SYSADMIN_APPROVES_ORGANIZATIONS, "false" );
 setup.set( PROPERTIES_ADMIN_USERS_REQUIRE_CONFIRMATION, "true" );
-setup.set( PROPERTIES_DEFAULT_SYSADMIN_EMAIL, 
"sysadmi...@mockserver.com" );
 setup.set( PROPERTIES_NOTIFY_ADMIN_OF_ACTIVATION, "true" );
 
 final String orgName = uniqueOrg();
@@ -121,7 +120,6 @@ public class EmailFlowIT {
 setup.set( PROPERTIES_NOTIFY_ADMIN_OF_ACTIVATION, "true" );
 setup.set( PROPERTIES_SYSADMIN_APPROVES_ORGANIZATIONS, "false" );
 setup.set( PROPERTIES_ADMIN_USERS_REQUIRE_CONFIRMATION, "true" );
-setup.set( PROPERTIES_DEFAULT_SYSADMIN_EMAIL, 
"sysadmi...@mockserver.com" );
 
 final String orgName = uniqueOrg();
 final String userName = uniqueUsername();
@@ -156,7 +154,7 @@ public class EmailFlowIT {
 
 assertEquals( "User Account Confirmed", confirmation.getSubject() );
 
-List sysadmin_inbox = Mailbox.get( 
"sysadmi...@mockserver.com" );
+List sysadmin_inbox = Mailbox.get( "testad...@usergrid.com" );
 assertFalse( sysadmin_inbox.isEmpty() );
 
 Message activation = sysadmin_inbox.get( 0 );



[1/7] usergrid git commit: USERGRID-1200: workflow URL refactor

2016-01-25 Thread mrusso
Repository: usergrid
Updated Branches:
  refs/heads/master 949105226 -> 21ba17e45


http://git-wip-us.apache.org/repos/asf/usergrid/blob/90d5d665/stack/services/src/main/java/org/apache/usergrid/management/OrganizationConfigProps.java
--
diff --git 
a/stack/services/src/main/java/org/apache/usergrid/management/OrganizationConfigProps.java
 
b/stack/services/src/main/java/org/apache/usergrid/management/OrganizationConfigProps.java
index 577e1d6..f50705f 100644
--- 
a/stack/services/src/main/java/org/apache/usergrid/management/OrganizationConfigProps.java
+++ 
b/stack/services/src/main/java/org/apache/usergrid/management/OrganizationConfigProps.java
@@ -16,25 +16,45 @@
  */
 package org.apache.usergrid.management;
 
+import org.apache.usergrid.system.ServerEnvironmentProps;
+
 import java.util.Map;
+import java.util.Properties;
 import java.util.Set;
 
 public interface OrganizationConfigProps {
-String PROPERTIES_DEFAULT_CONNECTION_PARAM = 
"usergrid.rest.default-connection-param";
-String PROPERTIES_ADMIN_SYSADMIN_EMAIL = 
AccountCreationProps.PROPERTIES_ADMIN_SYSADMIN_EMAIL;
-String PROPERTIES_ADMIN_ACTIVATION_URL = 
AccountCreationProps.PROPERTIES_ADMIN_ACTIVATION_URL;
-String PROPERTIES_ADMIN_CONFIRMATION_URL = 
AccountCreationProps.PROPERTIES_ADMIN_CONFIRMATION_URL;
-String PROPERTIES_ADMIN_RESETPW_URL = 
AccountCreationProps.PROPERTIES_ADMIN_RESETPW_URL;
+String ORGPROPERTIES_API_URL_BASE = ServerEnvironmentProps.API_URL_BASE;
+String ORGPROPERTIES_DEFAULT_CONNECTION_PARAM = 
"usergrid.rest.default-connection-param";
+String ORGPROPERTIES_ADMIN_SYSADMIN_EMAIL = 
AccountCreationProps.PROPERTIES_ADMIN_SYSADMIN_EMAIL;
+
+// these can not currently be set as org config items, but they select
+// the full URL to be created from the org-specific API URL base and the
+// hardcoded paths
+//
+// use these specifiers with getFullUrl() to select the URL to be built
+enum WorkflowUrl {
+ORGANIZATION_ACTIVATION_URL,
+ADMIN_ACTIVATION_URL,
+ADMIN_CONFIRMATION_URL,
+ADMIN_RESETPW_URL,
+USER_ACTIVATION_URL,
+USER_CONFIRMATION_URL,
+USER_RESETPW_URL
+}
+
+Set getOrgPropertyNames();
 
-Set getPropertyNames();
+Properties getPropertiesMap();
 
-Map getPropertyMap();
+Map getDefaultPropertiesMap();
+
+Map getOrgPropertiesMap();
 
 String getProperty(String name);
 
 String getProperty(String name, String defaultValue);
 
-boolean isProperty(String name, boolean defaultValue);
+boolean boolProperty(String name, boolean defaultValue);
 
 int intProperty(String name, int defaultValue);
 
@@ -42,4 +62,8 @@ public interface OrganizationConfigProps {
 
 void setProperty(String name, String value);
 
+String getFullUrlTemplate(WorkflowUrl urlType);
+
+String getFullUrl(WorkflowUrl urlType, Object ... arguments);
+
 }

http://git-wip-us.apache.org/repos/asf/usergrid/blob/90d5d665/stack/services/src/main/java/org/apache/usergrid/management/OrganizationInfo.java
--
diff --git 
a/stack/services/src/main/java/org/apache/usergrid/management/OrganizationInfo.java
 
b/stack/services/src/main/java/org/apache/usergrid/management/OrganizationInfo.java
index ba6322e..7481447 100644
--- 
a/stack/services/src/main/java/org/apache/usergrid/management/OrganizationInfo.java
+++ 
b/stack/services/src/main/java/org/apache/usergrid/management/OrganizationInfo.java
@@ -17,12 +17,8 @@
 package org.apache.usergrid.management;
 
 
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.Map.Entry;
-import java.util.UUID;
 
 import static org.apache.usergrid.persistence.Schema.PROPERTY_PATH;
 import static org.apache.usergrid.persistence.Schema.PROPERTY_UUID;
@@ -53,9 +49,9 @@ public class OrganizationInfo {
 }
 
 
-public OrganizationInfo( UUID id, String name, Map 
properties ) {
+public  OrganizationInfo( UUID id, String name, 
Map properties ) {
 this( id, name );
-this.properties = properties;
+setProperties(properties);
 }
 
 
@@ -98,7 +94,7 @@ public class OrganizationInfo {
 
 
 public static List fromNameIdMap( Map map 
) {
-List list = new ArrayList();
+List list = new ArrayList<>();
 for ( Entry s : map.entrySet() ) {
 list.add( new OrganizationInfo( s.getValue(), s.getKey() ) );
 }
@@ -107,7 +103,7 @@ public class OrganizationInfo {
 
 
 public static List fromIdNameMap( Map map 
) {
-List list = new ArrayList();
+List list = new ArrayList<>();
 for ( Entry s : map.entrySet() ) 

[5/7] usergrid git commit: Merge remote-tracking branch 'origin/master' into USERGRID-1200

2016-01-25 Thread mrusso
Merge remote-tracking branch 'origin/master' into USERGRID-1200


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

Branch: refs/heads/master
Commit: f6c8b8535a8b74179224b34594bc9983a353cd8f
Parents: 34f7d71 40be90f
Author: Mike Dunker 
Authored: Mon Jan 25 09:48:48 2016 -0800
Committer: Mike Dunker 
Committed: Mon Jan 25 09:48:48 2016 -0800

--
 .../main/resources/usergrid-default.properties  |  10 +-
 .../corepersistence/CpEntityManagerFactory.java |  18 +-
 .../corepersistence/CpRelationManager.java  |  54 +--
 .../usergrid/corepersistence/CpSetup.java   |  14 +-
 .../read/traverse/AbstractReadGraphFilter.java  |  37 +-
 .../persistence/EntityManagerFactory.java   |   8 +-
 .../corepersistence/CpEntityMapUtilsTest.java   |  28 +-
 .../usergrid/persistence/EntityManagerIT.java   |  33 ++
 .../graph/impl/stage/EdgeDeleteRepairImpl.java  |   8 +-
 .../model/entity/MapToEntityConverter.java  | 230 +++-
 .../persistence/model/field/ArrayField.java |   4 +-
 .../persistence/model/field/BooleanField.java   |   4 +-
 .../persistence/model/field/ByteArrayField.java |   8 +-
 .../persistence/model/field/FieldTypeName.java  |   3 +-
 .../persistence/model/field/FloatField.java |   4 +-
 .../persistence/model/field/IntegerField.java   |   4 +-
 .../persistence/model/field/ListField.java  |   4 +-
 .../persistence/model/field/LocationField.java  |   4 +-
 .../persistence/model/field/LongField.java  |   4 +-
 .../persistence/model/field/NullField.java  |  44 +++
 .../model/field/SerializedObjectField.java  |   8 +-
 .../persistence/model/field/SetField.java   |   6 +-
 .../persistence/model/field/StringField.java|   6 +-
 .../persistence/model/field/UUIDField.java  |   4 +-
 .../model/entity/MapToEntityConverterTest.java  |  64 
 .../persistence/model/field/EntityTest.java |   9 +-
 .../persistence/index/impl/EntityField.java |  11 +
 .../index/impl/EntityMappingParser.java |  16 +-
 .../index/impl/EntityToMapConverter.java|   3 +-
 .../persistence/index/impl/FieldParser.java |   5 +-
 .../persistence/index/impl/IndexingUtils.java   |   1 +
 .../persistence/index/impl/EntityIndexTest.java |  69 +++-
 .../index/impl/EntityToMapConverterTest.java| 149 ++--
 .../index/impl/IndexLoadTestsIT.java|   1 +
 .../management/AppInfoMigrationPlugin.java  |   3 +-
 .../usergrid/management/ManagementService.java  | 348 +--
 .../cassandra/ManagementServiceImpl.java|  25 +-
 .../migration/AppInfoMigrationPluginTest.java   |   2 +-
 .../apache/usergrid/tools/DupAdminRepair.java   | 297 
 .../org/apache/usergrid/tools/DupOrgRepair.java | 263 --
 .../org/apache/usergrid/tools/ExportApp.java|  16 +-
 .../org/apache/usergrid/tools/ImportAdmins.java |  81 +
 .../apache/usergrid/tools/PopulateSample.java   |   2 +-
 .../org/apache/usergrid/tools/ToolBase.java |   6 +-
 .../apache/usergrid/tools/bean/MetricQuery.java |   7 +-
 .../apache/usergrid/tools/ExportAppTest.java|   6 +-
 .../usergrid/tools/ExportImportAdminsTest.java  |   3 +-
 47 files changed, 873 insertions(+), 1061 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/f6c8b853/stack/config/src/main/resources/usergrid-default.properties
--

http://git-wip-us.apache.org/repos/asf/usergrid/blob/f6c8b853/stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
--
diff --cc 
stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
index 117269a,4e99f13..1352dad
--- 
a/stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
+++ 
b/stack/services/src/main/java/org/apache/usergrid/management/ManagementService.java
@@@ -41,322 -41,332 +41,322 @@@ import rx.Observable
  
  public interface ManagementService {
  
- void activateAdminUser( UUID userId ) throws Exception;
 -public void activateAdminUser( UUID userId ) throws Exception;
++  void activateAdminUser( UUID userId ) throws Exception;
  
- void activateOrganization( OrganizationInfo organization ) throws 
Exception;
 -public void activateOrganization( OrganizationInfo organization ) throws 
Exception;
++  void activateOrganization( OrganizationInfo organization ) throws 
Exception;
  
- void addAdminUserToOrganization( UserInfo user, OrganizationInfo 
organization, boolean email )
 -public void 

[4/7] usergrid git commit: USERGRID-1200: bug fixes and tests

2016-01-25 Thread mrusso
USERGRID-1200: bug fixes and tests

1. Fix copying of Properties object (requires constructor + putAll() )
2. Fix property retrieval for org-configurable properties (take from org 
properties first,
then config file properties, then org property defaults.
3. Added 2 tests for new org config functionality.


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

Branch: refs/heads/master
Commit: 34f7d7139a2e8561da6c232eab17f2216bcd2cee
Parents: a33698b
Author: Mike Dunker 
Authored: Tue Jan 19 16:56:47 2016 -0800
Committer: Mike Dunker 
Committed: Tue Jan 19 16:56:47 2016 -0800

--
 .../src/test/resources/usergrid-test.properties |   1 +
 .../cassandra/OrganizationConfigPropsImpl.java  |  18 +++-
 .../management/OrganizationConfigIT.java| 108 ++-
 3 files changed, 121 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/34f7d713/stack/config/src/test/resources/usergrid-test.properties
--
diff --git a/stack/config/src/test/resources/usergrid-test.properties 
b/stack/config/src/test/resources/usergrid-test.properties
index 4693f8d..29bb332 100644
--- a/stack/config/src/test/resources/usergrid-test.properties
+++ b/stack/config/src/test/resources/usergrid-test.properties
@@ -144,6 +144,7 @@ usergrid.recaptcha.public=
 usergrid.recaptcha.private=
 
 usergrid.sysadmin.email=
+usergrid.admin.sysadmin.email=testad...@usergrid.com
 
 usergrid.management.admin_users_require_confirmation=false
 usergrid.management.admin_users_require_activation=false

http://git-wip-us.apache.org/repos/asf/usergrid/blob/34f7d713/stack/services/src/main/java/org/apache/usergrid/management/cassandra/OrganizationConfigPropsImpl.java
--
diff --git 
a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/OrganizationConfigPropsImpl.java
 
b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/OrganizationConfigPropsImpl.java
index 1063000..56c1e12 100644
--- 
a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/OrganizationConfigPropsImpl.java
+++ 
b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/OrganizationConfigPropsImpl.java
@@ -68,6 +68,7 @@ public class OrganizationConfigPropsImpl implements 
OrganizationConfigProps {
 
 public OrganizationConfigPropsImpl(Properties properties, Map map) {
 this.properties = new Properties(properties);
+this.properties.putAll(properties);
 
 this.defaultProperties = new HashMap<>(noConfigDefaults);
 // add any corresponding properties to default props map
@@ -101,7 +102,9 @@ public class OrganizationConfigPropsImpl implements 
OrganizationConfigProps {
 
 @Override
 public Properties getPropertiesMap() {
-return new Properties(properties);
+Properties ret = new Properties(properties);
+ret.putAll(properties);
+return ret;
 }
 
 @Override
@@ -125,9 +128,16 @@ public class OrganizationConfigPropsImpl implements 
OrganizationConfigProps {
 String propertyValue;
 
 if (orgPropertyNameValid(name)) {
-// return from org-specific properties, if set
-propertyValue = orgProperties.containsKey(name) ?
-orgProperties.get(name) : defaultProperties.get(name);
+if (orgProperties.containsKey(name)) {
+// return from org-specific properties
+propertyValue = orgProperties.get(name);
+} else if (properties.containsKey(name)) {
+// return from properties file
+propertyValue = (String)properties.get(name);
+} else {
+// return the default
+propertyValue = defaultProperties.get(name);
+}
 } else {
 // not an org config item, return from properties
 propertyValue = properties.getProperty(name);

http://git-wip-us.apache.org/repos/asf/usergrid/blob/34f7d713/stack/services/src/test/java/org/apache/usergrid/management/OrganizationConfigIT.java
--
diff --git 
a/stack/services/src/test/java/org/apache/usergrid/management/OrganizationConfigIT.java
 
b/stack/services/src/test/java/org/apache/usergrid/management/OrganizationConfigIT.java
index fc1a0f4..6424dbd 100644
--- 
a/stack/services/src/test/java/org/apache/usergrid/management/OrganizationConfigIT.java
+++ 

[2/2] usergrid git commit: Merge commit 'refs/pull/471/head' of github.com:apache/usergrid

2016-01-25 Thread mrusso
Merge commit 'refs/pull/471/head' of github.com:apache/usergrid


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

Branch: refs/heads/master
Commit: 37d78ab9aafe288440cdb18474a525bc1b2d74e8
Parents: 21ba17e dfac0ca
Author: Michael Russo 
Authored: Mon Jan 25 16:05:43 2016 -0800
Committer: Michael Russo 
Committed: Mon Jan 25 16:05:43 2016 -0800

--
 sdks/ios/README.md | 53 -
 1 file changed, 13 insertions(+), 40 deletions(-)
--




[2/7] usergrid git commit: USERGRID-1200: workflow URL refactor

2016-01-25 Thread mrusso
USERGRID-1200: workflow URL refactor

1. Add usergrid.api.url.base property (defaults to http://localhost:8080/ROOT) 
that can be overridden for an org.
2. The confirmation and activation properties are hardcoded paths and don't 
need org overrides. Example:
usergrid.admin.activation.url is built by concatenating usergrid.api.url.base 
and "/management/users/%s/activate"
3. swagger.basepath removed and replaced by usergrid.api.url.base.
4. Refactor orgconfig to return system defaults if not configurable by org.


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

Branch: refs/heads/master
Commit: 90d5d665df0144b9f70098d8bd297d368e41d64f
Parents: 7032c03
Author: Mike Dunker 
Authored: Tue Jan 19 10:04:47 2016 -0800
Committer: Mike Dunker 
Committed: Tue Jan 19 10:04:47 2016 -0800

--
 .../src/main/groovy/configure_usergrid.groovy   |  16 +-
 .../main/resources/usergrid-default.properties  |  21 +-
 .../src/test/resources/usergrid-test.properties |  14 +-
 .../usergrid/system/ServerEnvironmentProps.java |  27 ++
 .../usergrid/persistence/RebuildIndexTest.java  |   2 +
 .../resources/usergrid-standalone.properties|   8 +-
 .../usergrid/rest/AbstractContextResource.java  |   2 +-
 .../org/apache/usergrid/rest/ApiResponse.java   |  72 +++--
 .../rest/ServerEnvironmentProperties.java   |  22 +-
 .../apache/usergrid/rest/SwaggerServlet.java|   2 +-
 .../rest/applications/ServiceResource.java  |   4 +-
 .../notifiers/NotifiersResource.java|  11 +-
 ...rganizationApplicationNotFoundException.java |   6 +-
 .../organizations/OrganizationResource.java |  28 +-
 .../organizations/OrganizationResource.java |   2 +-
 .../rest/management/RegistrationIT.java |  18 +-
 .../resources/usergrid-custom-test.properties   |   2 +-
 .../management/AccountCreationProps.java| 131 -
 .../usergrid/management/ManagementService.java  | 288 +--
 .../usergrid/management/OrganizationConfig.java |  99 ---
 .../management/OrganizationConfigProps.java |  40 ++-
 .../usergrid/management/OrganizationInfo.java   |  27 +-
 .../cassandra/ManagementServiceImpl.java| 167 +--
 .../cassandra/OrganizationConfigPropsImpl.java  | 158 +++---
 .../apache/usergrid/management/EmailFlowIT.java |  17 +-
 .../management/OrganizationConfigIT.java|   4 +-
 26 files changed, 642 insertions(+), 546 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/90d5d665/stack/awscluster/src/main/groovy/configure_usergrid.groovy
--
diff --git a/stack/awscluster/src/main/groovy/configure_usergrid.groovy 
b/stack/awscluster/src/main/groovy/configure_usergrid.groovy
index 647213a..a4d6a52 100644
--- a/stack/awscluster/src/main/groovy/configure_usergrid.groovy
+++ b/stack/awscluster/src/main/groovy/configure_usergrid.groovy
@@ -171,23 +171,9 @@ usergrid.management.notify_sysadmin_of_new_admin_users=true
 
 # Redirect path when request come in for TLD
 usergrid.redirect_root=${baseUrl}/status
+usergrid.api.url.base=${baseUrl}
 
-usergrid.view.management.organizations.organization.activate=${baseUrl}/accounts/welcome
-usergrid.view.management.organizations.organization.confirm=${baseUrl}/accounts/welcome
 \n\
-usergrid.view.management.users.user.activate=${baseUrl}/accounts/welcome
-usergrid.view.management.users.user.confirm=${baseUrl}/accounts/welcome
-
-usergrid.admin.confirmation.url=${baseUrl}/management/users/%s/confirm
-usergrid.user.confirmation.url=${baseUrl}/%s/%s/users/%s/confirm
-
-usergrid.organization.activation.url=${baseUrl}/management/organizations/%s/activate
-
-usergrid.admin.activation.url=${baseUrl}/management/users/%s/activate
-usergrid.user.activation.url=${baseUrl}%s/%s/users/%s/activate
-
-usergrid.admin.resetpw.url=${baseUrl}/management/users/%s/resetpw
-usergrid.user.resetpw.url=${baseUrl}/%s/%s/users/%s/resetpw
 
 
 usergrid.metrics.graphite.host=${graphite}

http://git-wip-us.apache.org/repos/asf/usergrid/blob/90d5d665/stack/config/src/main/resources/usergrid-default.properties
--
diff --git a/stack/config/src/main/resources/usergrid-default.properties 
b/stack/config/src/main/resources/usergrid-default.properties
index 1f8b7c9..56257db 100644
--- a/stack/config/src/main/resources/usergrid-default.properties
+++ b/stack/config/src/main/resources/usergrid-default.properties
@@ -558,9 +558,9 @@ usergrid.redirect_root=
 #usergrid.recaptcha.public=false
 #usergrid.recaptcha.private=false
 
-# Set a basepath 

[3/7] usergrid git commit: Merge remote-tracking branch 'origin/master' into USERGRID-1200

2016-01-25 Thread mrusso
Merge remote-tracking branch 'origin/master' into USERGRID-1200


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

Branch: refs/heads/master
Commit: a33698b166abfc3e96c9f88af5dddb41d7e5fa9e
Parents: 90d5d66 d796b68
Author: Mike Dunker 
Authored: Tue Jan 19 11:14:23 2016 -0800
Committer: Mike Dunker 
Committed: Tue Jan 19 11:14:23 2016 -0800

--
 .../src/main/dist/lib/log4j.properties  |   1 -
 .../src/test/resources/usergrid-test.properties |   5 -
 stack/core/pom.xml  |  10 +-
 .../apache/usergrid/batch/job/OnlyOnceJob.java  |   3 +-
 .../usergrid/corepersistence/CoreModule.java|   2 +
 .../asyncevents/AsyncEventsSchedulerFig.java|   2 +-
 .../index/IndexProcessorFig.java|   2 +-
 .../locking/cassandra/AstyanaxLockImpl.java |  92 ++
 .../cassandra/AstyanaxLockManagerImpl.java  | 211 +
 .../locking/cassandra/HectorLockImpl.java   |  86 --
 .../cassandra/HectorLockManagerImpl.java| 142 ---
 .../usergrid/locking/guice/LockModule.java  |  40 +
 .../locking/singlenode/SingleNodeLockImpl.java  |  71 --
 .../singlenode/SingleNodeLockManagerImpl.java   |  96 --
 .../zookeeper/ZooKeeperLockManagerImpl.java | 115 ---
 .../locking/zookeeper/ZookeeperLockImpl.java|  88 --
 .../mq/cassandra/QueueManagerFactoryImpl.java   |   5 +-
 .../apache/usergrid/mq/cassandra/QueuesCF.java  |   2 +-
 .../persistence/cassandra/CassandraService.java |   5 +-
 .../main/resources/usergrid-core-context.xml|  36 +-
 .../org/apache/usergrid/CoreITSetupImpl.java|   4 +
 .../usergrid/locking/AstyanaxLockManagerIT.java | 164 
 .../locking/cassandra/HectorLockManagerIT.java  | 185 
 .../SingleNodeLockTestSingleNode.java   | 170 
 .../zookeeper/AbstractZooKeeperTest.java| 127 ---
 .../usergrid/locking/zookeeper/ZooPut.java  | 114 ---
 .../zookeeper/ZookeeperLockManagerTest.java | 186 
 .../org/apache/usergrid/persistence/GeoIT.java  |  62 +-
 stack/core/src/test/resources/log4j.properties  |   1 -
 .../impl/ScopedCacheSerializationImpl.java  |  12 +-
 .../MvccEntitySerializationStrategyImpl.java|  14 +-
 ...vccEntitySerializationStrategyProxyImpl.java |   4 +-
 .../MvccEntitySerializationStrategyV1Impl.java  |   8 +-
 .../MvccEntitySerializationStrategyV2Impl.java  |  13 +-
 .../MvccEntitySerializationStrategyV3Impl.java  |  14 +-
 .../MvccLogEntrySerializationProxyImpl.java |   4 +-
 .../MvccLogEntrySerializationStrategyImpl.java  |   6 +-
 ...MvccLogEntrySerializationStrategyV1Impl.java |  18 +-
 ...MvccLogEntrySerializationStrategyV2Impl.java |  18 +-
 .../UniqueValueSerializationStrategyImpl.java   |  28 +-
 ...iqueValueSerializationStrategyProxyImpl.java |   4 +-
 .../UniqueValueSerializationStrategyV1Impl.java |  31 +-
 .../UniqueValueSerializationStrategyV2Impl.java |  31 +-
 stack/corepersistence/common/pom.xml| 351 
 .../core/astyanax/AstyanaxKeyspaceProvider.java |  46 +-
 .../core/astyanax/CassandraCluster.java |  20 +
 .../core/astyanax/CassandraClusterImpl.java | 198 +
 .../persistence/core/astyanax/CassandraFig.java |  72 +-
 .../core/astyanax/MultiTenantColumnFamily.java  |  47 +
 .../MultiTenantColumnFamilyDefinition.java  | 138 +++
 .../core/astyanax/MultiTennantColumnFamily.java |  47 -
 .../MultiTennantColumnFamilyDefinition.java | 138 ---
 .../persistence/core/guice/CommonModule.java|  11 +-
 .../data/MigrationInfoSerializationImpl.java|  24 +-
 .../core/migration/schema/Migration.java|   4 +-
 .../migration/schema/MigrationManagerImpl.java  |   9 +-
 .../core/astyanax/ColumnNameIteratorTest.java   |   5 +-
 .../MultiKeyColumnNameIteratorTest.java |   5 +-
 .../astyanax/MultiRowColumnIteratorTest.java|   5 +-
 .../persistence/core/astyanax/TestUtils.java|   8 +-
 .../EdgeMetadataSerializationProxyImpl.java |   4 +-
 .../impl/EdgeMetadataSerializationV1Impl.java   |  36 +-
 .../impl/EdgeMetadataSerializationV2Impl.java   |  36 +-
 .../impl/NodeSerializationImpl.java |  14 +-
 .../impl/shard/EdgeColumnFamilies.java  |  12 +-
 .../shard/impl/EdgeShardSerializationImpl.java  |  14 +-
 .../impl/ShardedEdgeSerializationImpl.java  |  58 +-
 .../impl/shard/impl/ShardsColumnIterator.java   |  15 +-
 .../shard/impl/SizebasedEdgeColumnFamilies.java |  46 +-
 .../map/impl/MapSerializationImpl.java  |  28 +-
 .../resources/usergrid-standalone.properties|   4 -
 stack/pom.xml   |  39 +-
 stack/rest/pom.xml  |  32 +-
 .../rest/applications/ServiceResource.java  |  12 +-
 

[10/14] usergrid git commit: Changed how the use of UnsupportedException to be only in core and added a new UnsupportedRestException error that is to be used in the rest tier. Confirmed it is now thro

2016-01-25 Thread mrusso
Changed how the use of UnsupportedException to be only in core and added a new 
UnsupportedRestException error that is to be used in the rest tier. Confirmed 
it is now thrown in the correct cases


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

Branch: refs/heads/master
Commit: f563a8d0540578228ad559e5b7a0ed4beac901e4
Parents: 783c584
Author: George Reyes 
Authored: Mon Jan 25 12:48:28 2016 -0800
Committer: George Reyes 
Committed: Mon Jan 25 12:48:28 2016 -0800

--
 .../org/apache/usergrid/rest/ApiResponse.java   |  2 +-
 .../rest/applications/ApplicationResource.java  |  3 +-
 .../exceptions/AbstractExceptionMapper.java |  3 --
 .../UnsupportedOperationExceptionMapper.java|  7 ++--
 .../UnsupportedRestOperationException.java  | 25 ++
 ...UnsupportedRestOperationExceptionMapper.java | 34 
 ...upportedServiceOperationExceptionMapper.java |  3 --
 .../applications/ApplicationResource.java   |  3 +-
 .../usergrid/rest/test/PropertiesResource.java  |  3 +-
 .../rest/test/RefreshIndexResource.java |  3 +-
 .../usergrid/rest/ExceptionResourceIT.java  |  3 --
 .../endpoints/OrganizationResource.java |  3 +-
 .../rest/test/resource/model/Collection.java|  4 ++-
 13 files changed, 76 insertions(+), 20 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/f563a8d0/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 314f9aa..5d61c39 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
@@ -184,7 +184,7 @@ public class ApiResponse {
 error = code;
 if ( e instanceof UncaughtException ) {
 errorId = ((UncaughtException) e).getTimeUUID();
-errorDescription = "Internal Server Error: "+e.getMessage();
+errorDescription = "Error: " + e.getMessage();
 exception = UncaughtException.class.getName();
 } else {
 errorDescription = description;

http://git-wip-us.apache.org/repos/asf/usergrid/blob/f563a8d0/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
index a598c4f..8feee2c 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
@@ -46,6 +46,7 @@ import 
org.apache.usergrid.rest.applications.users.UsersResource;
 import org.apache.usergrid.rest.exceptions.AuthErrorInfo;
 import org.apache.usergrid.rest.exceptions.NotFoundExceptionMapper;
 import org.apache.usergrid.rest.exceptions.RedirectionException;
+import org.apache.usergrid.rest.exceptions.UnsupportedRestOperationException;
 import org.apache.usergrid.rest.security.annotations.RequireApplicationAccess;
 import org.apache.usergrid.rest.security.annotations.RequireOrganizationAccess;
 import org.apache.usergrid.rest.security.annotations.RequireSystemAccess;
@@ -487,7 +488,7 @@ public class ApplicationResource extends ServiceResource {
 @RequireOrganizationAccess
 public ApiResponse executeDelete( @Context final UriInfo ui, 
@DefaultValue( "callback" ) final String callback,
   final String confirmAppDelete ) 
throws Exception {
-throw new UnsupportedOperationException( "Delete must be done from the 
management endpoint" );
+throw new UnsupportedRestOperationException( "Delete must be done from 
the management endpoint" );
 }
 
 

http://git-wip-us.apache.org/repos/asf/usergrid/blob/f563a8d0/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
index 5c42224..765e9fb 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
+++ 

[07/14] usergrid git commit: Fixed assets tests and fixed oversight of not updating entity metadata for AWS binary assets. Also changed tests so they will run with properties set the way its done occa

2016-01-25 Thread mrusso
Fixed assets tests and fixed oversight of not updating entity metadata for AWS 
binary assets.
Also changed tests so they will run with properties set the way its done 
occasionally.


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

Branch: refs/heads/master
Commit: d97f6e3c5d219ed8ca69be492d5d0dc9c45fd3a4
Parents: ee8c7c4
Author: George Reyes 
Authored: Thu Jan 14 12:12:42 2016 -0800
Committer: George Reyes 
Committed: Thu Jan 14 12:12:42 2016 -0800

--
 .../rest/applications/assets/AwsAssetResourceIT.java| 9 +++--
 .../rest/applications/assets/aws/NoAWSCredsRule.java| 4 ++--
 .../usergrid/services/assets/data/AwsSdkS3BinaryStore.java  | 8 +++-
 3 files changed, 16 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/d97f6e3c/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
--
diff --git 
a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
 
b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
index 4561199..914d253 100644
--- 
a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
+++ 
b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
@@ -34,6 +34,8 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import javax.ws.rs.ClientErrorException;
+import javax.ws.rs.ForbiddenException;
+import javax.ws.rs.InternalServerErrorException;
 import javax.ws.rs.NotFoundException;
 import javax.ws.rs.core.MediaType;
 import java.io.IOException;
@@ -151,7 +153,7 @@ public class AwsAssetResourceIT extends AbstractRestIT {
 }catch ( AwsPropertiesNotFoundException e ){
 fail("Shouldn't interrupt runtime if access key isnt found.");
 }
-catch( ClientErrorException uie){
+catch( InternalServerErrorException uie){
 assertEquals( 500, uie.getResponse().getStatus() );
 }
 finally{
@@ -193,7 +195,10 @@ public class AwsAssetResourceIT extends AbstractRestIT {
 }catch ( AwsPropertiesNotFoundException e ){
 fail("Shouldn't interrupt runtime if access key isnt found.");
 }
-catch( ClientErrorException uie){
+catch(ForbiddenException fe){
+assertEquals( 403, fe.getResponse().getStatus() );
+}
+catch( InternalServerErrorException uie){
 assertEquals( 500, uie.getResponse().getStatus() );
 }
 finally{

http://git-wip-us.apache.org/repos/asf/usergrid/blob/d97f6e3c/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java
--
diff --git 
a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java
 
b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java
index 1dd00ff..40a6b45 100644
--- 
a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java
+++ 
b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java
@@ -57,8 +57,8 @@ public class NoAWSCredsRule  extends AbstractRestIT 
implements TestRule {
 try {
  Map properties = getRemoteTestProperties();
 //TODO: GREY change this so that it checks for the 
properties, then if it doesn't have them, mark the tests as ignored.
-accessId = (String)properties.get( 
SDKGlobalConfiguration.ACCESS_KEY_ENV_VAR );
-secretKey = (String)properties.get( 
SDKGlobalConfiguration.SECRET_KEY_ENV_VAR );
+accessId = (String)System.getProperty( 
SDKGlobalConfiguration.ACCESS_KEY_ENV_VAR );
+secretKey = (String)System.getProperty( 
SDKGlobalConfiguration.SECRET_KEY_ENV_VAR );
 bucketName =(String) properties.get( 
"usergrid.binary.bucketname" );
 
 if(accessId==null||secretKey==null||bucketName==null){

http://git-wip-us.apache.org/repos/asf/usergrid/blob/d97f6e3c/stack/services/src/main/java/org/apache/usergrid/services/assets/data/AwsSdkS3BinaryStore.java
--
diff --git 
a/stack/services/src/main/java/org/apache/usergrid/services/assets/data/AwsSdkS3BinaryStore.java
 

[02/14] usergrid git commit: Modified excess code and removed it.

2016-01-25 Thread mrusso
Modified excess code and removed it.


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

Branch: refs/heads/master
Commit: a0b8b0342c9b51b0405884b9cacbb48a14b4f54b
Parents: 3c96d5f
Author: George Reyes 
Authored: Wed Jan 6 11:31:20 2016 -0800
Committer: George Reyes 
Committed: Wed Jan 6 11:31:20 2016 -0800

--
 .../org/apache/usergrid/rest/ExceptionResourceIT.java   | 12 
 1 file changed, 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/a0b8b034/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java
--
diff --git 
a/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java 
b/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java
index 49dd317..b07de4d 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java
@@ -39,18 +39,6 @@ public class ExceptionResourceIT extends AbstractRestIT{
 @Test
 public void testNotImplementedException(){
 try {
-//Organization organization = createOrgPayload( 
"testCreateDuplicateOrgName", null );
-//Organization orgCreatedResponse = 
clientSetup.getRestClient().management().orgs().post( organization );
-//this.refreshIndex();
-//
-//assertNotNull( orgCreatedResponse );
-//
-//// Ensure that the token from the newly created organization 
works.
-//Token tokenPayload = new Token( "password", 
organization.getUsername(), organization.getPassword() );
-//Token tokenReturned = 
clientSetup.getRestClient().management().token()
-// .post( false, Token.class, 
tokenPayload, null );
-//this.management().token().setToken(tokenReturned);
-
 
 clientSetup.getRestClient().management().orgs().delete( true );
 



[08/14] usergrid git commit: ElasticsearchException added so we return 503's if we don't do GETs.

2016-01-25 Thread mrusso
ElasticsearchException added so we return 503's if we don't do GETs.


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

Branch: refs/heads/master
Commit: 78bc3d5c06c25e2a2e7280e9d87e87f169b328b7
Parents: a51ee2c
Author: George Reyes 
Authored: Wed Jan 20 15:02:20 2016 -0800
Committer: George Reyes 
Committed: Wed Jan 20 15:02:20 2016 -0800

--
 .../ElasticsearchExecutionExceptionMapper.java  | 24 
 1 file changed, 24 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/78bc3d5c/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
new file mode 100644
index 000..6636727
--- /dev/null
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
@@ -0,0 +1,24 @@
+package org.apache.usergrid.rest.exceptions;
+
+
+import javax.ws.rs.core.Response;
+import javax.ws.rs.ext.Provider;
+
+import org.elasticsearch.action.search.SearchPhaseExecutionException;
+
+import static javax.ws.rs.core.Response.Status.SERVICE_UNAVAILABLE;
+
+
+/**
+ * Created by ApigeeCorporation on 1/19/16.
+ */
+@Provider
+public class ElasticsearchExecutionExceptionMapper
+extends AbstractExceptionMapper  {
+
+@Override
+public Response toResponse( SearchPhaseExecutionException spee ){
+return toResponse( SERVICE_UNAVAILABLE, spee );
+
+}
+}



[13/14] usergrid git commit: Merge commit 'refs/pull/457/head' of github.com:apache/usergrid

2016-01-25 Thread mrusso
Merge commit 'refs/pull/457/head' of github.com:apache/usergrid


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

Branch: refs/heads/master
Commit: 6c08e29c87659477702d0c96d6a90607dc07a610
Parents: e7d2d92 f563a8d
Author: Michael Russo 
Authored: Mon Jan 25 16:03:26 2016 -0800
Committer: Michael Russo 
Committed: Mon Jan 25 16:03:26 2016 -0800

--
 .../org/apache/usergrid/rest/ApiResponse.java   |  2 +-
 .../rest/applications/ApplicationResource.java  |  3 +-
 .../exceptions/AbstractExceptionMapper.java |  8 ++-
 .../AwsPropertiesNotFoundExceptionMapper.java   |  3 +-
 .../exceptions/NotAllowedExceptionMapper.java   | 21 ++
 .../UnsupportedOperationExceptionMapper.java| 19 +
 .../UnsupportedRestOperationException.java  | 25 +++
 ...UnsupportedRestOperationExceptionMapper.java | 34 +
 ...upportedServiceOperationExceptionMapper.java | 18 +
 .../applications/ApplicationResource.java   |  3 +-
 .../usergrid/rest/test/PropertiesResource.java  |  3 +-
 .../rest/test/RefreshIndexResource.java |  3 +-
 .../usergrid/rest/ExceptionResourceIT.java  | 75 
 .../endpoints/OrganizationResource.java |  3 +-
 .../rest/test/resource/model/Collection.java|  4 +-
 15 files changed, 213 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/6c08e29c/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
--

http://git-wip-us.apache.org/repos/asf/usergrid/blob/6c08e29c/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
--
diff --cc 
stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
index 26e2736,765e9fb..b4fad57
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
@@@ -105,9 -107,8 +107,9 @@@ public abstract class AbstractException
  // only log real errors as errors
  logger.error( "Server Error (" + status + "):\n" + jsonResponse );
  } else if ( logger.isDebugEnabled() ) {
- logger.debug( "Server Error (" + status + "):\n" + jsonResponse );
+ logger.debug( "Client Error (" + status + "):\n" + jsonResponse );
  }
 +
  String callback = httpServletRequest.getParameter( "callback" );
  if ( isJSONP() && isNotBlank( callback ) ) {
  jsonResponse = wrapJSONPResponse( callback, jsonResponse );

http://git-wip-us.apache.org/repos/asf/usergrid/blob/6c08e29c/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationResource.java
--

http://git-wip-us.apache.org/repos/asf/usergrid/blob/6c08e29c/stack/rest/src/main/java/org/apache/usergrid/rest/test/RefreshIndexResource.java
--



[11/14] usergrid git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/usergrid into USERGRID-1047

2016-01-25 Thread mrusso
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/usergrid into 
USERGRID-1047

# By Michael Russo (19) and Dave Johnson (4)
# Via Michael Russo (4) and others
* 'master' of https://git-wip-us.apache.org/repos/asf/usergrid: (23 commits)
  Fix issue with null values nested in an entity list field being represented 
as a top-level entity NullField instead of a null value.
  Fix inheritance issue.
  Fix issue with multiple types within a list causing class cast exceptions.
  Revert ""port" tools from master"
  "port" tools from master
  Cleanup duplicate edges at the end of addToCollection and filter duplicate 
edges in our graph results.
  Only reset roles and application secrets if the create application request is 
not for a migration.
  Fix the default consistency level settings in properties.  The fig (e.g. 
CassandraFig) will only use its default if there was no java prop set already.
  Implement a minimum lock expiration time.
  Ensure the lock manager is injected as a singleton.
  Fixes to allow ImportAdmin to run in distributed env, also remove org-merge 
from ImportAdmins.
  Fix tests to handle uniqueness of fields being indexed at Elasticsearch 
(before assumed duplicates were allowed).
  Initial work to support a typed null field for an entity, including a new 
index field type named "null" with value of null.  Also changes to pass a Set 
to elasticsearch for fields to index instead of a non unique list.
  Remove unused SingleNodeLockImpl and any references to this.
  Only create new client secrets during app creation if the application UUID is 
not provided (otherwise you overwrite existing app credentials).
  Simplify the locks consistency level and default it to LQ in case something 
passed cannot be parsed to a valid consistency level.
  Fix Astyanax locking to be re-entrant as Hector locks were and possible UG 
code expects it to be.  Remove all reference of Hector locks, changing its 
existing test to work with Astyanax.
  Remove commented, old Hector configuration from Spring context config.
  Fix new lock manager wiring issues in services layer.
  First commit of new implementation of Astyanax locks and having it wired with 
guide instead of Spring.
  ...


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

Branch: refs/heads/master
Commit: 31df16e3d6435db7faa3287e0f3638f766ca7b5c
Parents: d97f6e3 40be90f
Author: George Reyes 
Authored: Mon Jan 25 12:58:27 2016 -0800
Committer: George Reyes 
Committed: Mon Jan 25 12:58:27 2016 -0800

--
 .../src/main/dist/lib/log4j.properties  |   1 -
 .../main/resources/usergrid-default.properties  |  10 +-
 .../src/test/resources/usergrid-test.properties |   5 -
 stack/core/pom.xml  |  10 +-
 .../apache/usergrid/batch/job/OnlyOnceJob.java  |   3 +-
 .../usergrid/corepersistence/CoreModule.java|   2 +
 .../corepersistence/CpEntityManagerFactory.java |  18 +-
 .../corepersistence/CpRelationManager.java  |  54 +--
 .../usergrid/corepersistence/CpSetup.java   |  14 +-
 .../read/traverse/AbstractReadGraphFilter.java  |  37 +-
 .../locking/cassandra/AstyanaxLockImpl.java |  92 +
 .../cassandra/AstyanaxLockManagerImpl.java  | 211 +++
 .../locking/cassandra/HectorLockImpl.java   |  86 -
 .../cassandra/HectorLockManagerImpl.java| 142 
 .../usergrid/locking/guice/LockModule.java  |  40 +++
 .../locking/singlenode/SingleNodeLockImpl.java  |  71 
 .../singlenode/SingleNodeLockManagerImpl.java   |  96 -
 .../zookeeper/ZooKeeperLockManagerImpl.java | 115 --
 .../locking/zookeeper/ZookeeperLockImpl.java|  88 -
 .../mq/cassandra/QueueManagerFactoryImpl.java   |   5 +-
 .../persistence/EntityManagerFactory.java   |   8 +-
 .../persistence/cassandra/CassandraService.java |   5 +-
 .../main/resources/usergrid-core-context.xml|  36 +-
 .../org/apache/usergrid/CoreITSetupImpl.java|   4 +
 .../corepersistence/CpEntityMapUtilsTest.java   |  28 +-
 .../usergrid/locking/AstyanaxLockManagerIT.java | 164 +
 .../locking/cassandra/HectorLockManagerIT.java  | 185 --
 .../SingleNodeLockTestSingleNode.java   | 170 -
 .../zookeeper/AbstractZooKeeperTest.java| 127 ---
 .../usergrid/locking/zookeeper/ZooPut.java  | 114 --
 .../zookeeper/ZookeeperLockManagerTest.java | 186 --
 .../usergrid/persistence/EntityManagerIT.java   |  33 ++
 stack/core/src/test/resources/log4j.properties  |   1 -
 .../impl/ScopedCacheSerializationImpl.java  |  12 +-
 .../MvccEntitySerializationStrategyImpl.java|  14 +-
 ...vccEntitySerializationStrategyProxyImpl.java |   4 +-
 

[04/14] usergrid git commit: Added additional test, and verified that they all throw their kind of exceptions but they get mapped to NotAllowed for whatever reason.

2016-01-25 Thread mrusso
Added additional test, and verified that they all throw their kind of 
exceptions but they get mapped to NotAllowed for whatever reason.


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

Branch: refs/heads/master
Commit: 783c58403e5ecaf1fd899261746260268018aa33
Parents: b153591
Author: George Reyes 
Authored: Fri Jan 8 12:08:30 2016 -0800
Committer: George Reyes 
Committed: Fri Jan 8 12:08:30 2016 -0800

--
 .../exceptions/AbstractExceptionMapper.java |  3 ---
 .../AwsPropertiesNotFoundExceptionMapper.java   |  3 ++-
 .../exceptions/NotAllowedExceptionMapper.java   | 21 
 .../UnsupportedOperationExceptionMapper.java| 20 
 ...upportedServiceOperationExceptionMapper.java | 21 
 .../usergrid/rest/ExceptionResourceIT.java  | 25 +---
 6 files changed, 81 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/783c5840/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
index b428567..5c42224 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
@@ -60,9 +60,6 @@ public abstract class AbstractExceptionMapper imp
 
 @Override
 public Response toResponse( E e ) {
-if(e instanceof UnsupportedServiceOperationException || e instanceof  
NotAllowedException || e instanceof UnsupportedOperationException){
-return toResponse( METHOD_NOT_ALLOWED,e );
-}
 // if we don't know what type of error it is then it's a 500
 return toResponse( INTERNAL_SERVER_ERROR, e );
 }

http://git-wip-us.apache.org/repos/asf/usergrid/blob/783c5840/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AwsPropertiesNotFoundExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AwsPropertiesNotFoundExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AwsPropertiesNotFoundExceptionMapper.java
index f0f6e97..33f20b6 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AwsPropertiesNotFoundExceptionMapper.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AwsPropertiesNotFoundExceptionMapper.java
@@ -22,13 +22,14 @@ import javax.ws.rs.core.Response;
 import org.apache.usergrid.services.exceptions.AwsPropertiesNotFoundException;
 
 import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
-import static javax.ws.rs.core.Response.Status.NOT_FOUND;
+import javax.ws.rs.ext.Provider;
 
 
 /**
  * Maps the AwsPropertiesNotFoundExceptionMapper to a 500 error due to having 
a legit response
  * but there is an error in the properties file.
  */
+@Provider
 public class AwsPropertiesNotFoundExceptionMapper extends 
AbstractExceptionMapper {
 @Override
 public Response toResponse( AwsPropertiesNotFoundException e ) {

http://git-wip-us.apache.org/repos/asf/usergrid/blob/783c5840/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/NotAllowedExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/NotAllowedExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/NotAllowedExceptionMapper.java
new file mode 100644
index 000..08070aa
--- /dev/null
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/NotAllowedExceptionMapper.java
@@ -0,0 +1,21 @@
+package org.apache.usergrid.rest.exceptions;
+
+
+import javax.ws.rs.NotAllowedException;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.ext.Provider;
+
+import static javax.ws.rs.core.Response.Status.METHOD_NOT_ALLOWED;
+
+
+/**
+ * Created by ApigeeCorporation on 1/8/16.
+ */
+@Provider
+public class NotAllowedExceptionMapper extends 
AbstractExceptionMapper {
+
+@Override
+public Response toResponse( NotAllowedException e ) {
+return toResponse( METHOD_NOT_ALLOWED, e );
+}
+}


[05/14] usergrid git commit: Added test that verify that doing a get on an asset will now return on 404 and added AmazonException throwing for reading.

2016-01-25 Thread mrusso
Added test that verify that doing a get on an asset will now return on 404 and 
added AmazonException throwing for reading.


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

Branch: refs/heads/master
Commit: dae825429656871f97bba71b79a764e9c8976121
Parents: c080b02
Author: George Reyes 
Authored: Wed Jan 13 12:18:53 2016 -0800
Committer: George Reyes 
Committed: Wed Jan 13 12:18:53 2016 -0800

--
 .../rest/applications/ServiceResource.java  |  9 
 .../applications/assets/AwsAssetResourceIT.java | 22 
 2 files changed, 31 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/dae82542/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ServiceResource.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ServiceResource.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ServiceResource.java
index 9956ff7..ba8a5a8 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ServiceResource.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ServiceResource.java
@@ -17,6 +17,8 @@
 package org.apache.usergrid.rest.applications;
 
 
+import com.amazonaws.AmazonClientException;
+import com.amazonaws.AmazonServiceException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.jaxrs.json.annotation.JSONP;
 import org.apache.commons.lang.StringUtils;
@@ -823,6 +825,13 @@ public class ServiceResource extends 
AbstractContextResource {
 logger.error( "Amazon Property needed for this operation not 
found",apnfe );
 return 
Response.status(Response.Status.INTERNAL_SERVER_ERROR).build();
 }
+catch(AmazonServiceException ase){
+logger.error(ase.getMessage());
+return Response.status(ase.getStatusCode()).build();
+}
+catch(AmazonClientException ace){
+logger.error(ace.getMessage());
+}
 catch(RuntimeException re){
 logger.error(re.getMessage());
 return 
Response.status(Response.Status.INTERNAL_SERVER_ERROR).build();

http://git-wip-us.apache.org/repos/asf/usergrid/blob/dae82542/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
--
diff --git 
a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
 
b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
index c1e87a6..4561199 100644
--- 
a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
+++ 
b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java
@@ -18,6 +18,8 @@ package org.apache.usergrid.rest.applications.assets;
 
 
 import com.amazonaws.SDKGlobalConfiguration;
+import com.amazonaws.services.cognitoidentity.model.InternalErrorException;
+
 import net.jcip.annotations.NotThreadSafe;
 import org.apache.commons.io.IOUtils;
 import org.apache.usergrid.rest.applications.assets.aws.NoAWSCredsRule;
@@ -32,6 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import javax.ws.rs.ClientErrorException;
+import javax.ws.rs.NotFoundException;
 import javax.ws.rs.core.MediaType;
 import java.io.IOException;
 import java.io.InputStream;
@@ -71,6 +74,25 @@ public class AwsAssetResourceIT extends AbstractRestIT {
 setTestProperties(originalProperties);
 }
 
+
+@Test
+public void ensureMissingFileReturns404(){
+Map payload = hashMap( "name", "assettest" );
+ApiResponse postResponse = pathResource( getOrgAppPath( "missingFile" 
) ).post( payload );
+UUID assetId = postResponse.getEntities().get( 0 ).getUuid();
+assertNotNull( assetId );
+
+try {
+pathResource( getOrgAppPath( "missingFile/assettest" ) 
).getAssetAsStream( true );
+fail("Should fail as there isn't an asset to retrieve.");
+}catch(NotFoundException nfe){
+}
+catch(Exception e){
+fail("Shouldn't return any other kind of exception");
+}
+
+}
+
 @Test
 public void errorCheckingMissingProperties() throws Exception {
 Map errorTestProperties;



[01/14] usergrid git commit: Added fixes for USERGRID-767 and added tests looking for cases that would previously cause uncaught exception errors.

2016-01-25 Thread mrusso
Repository: usergrid
Updated Branches:
  refs/heads/master 40be90f5e -> 949105226


Added fixes for USERGRID-767 and added tests looking for cases that would 
previously cause uncaught exception errors.


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

Branch: refs/heads/master
Commit: 3c96d5ff25ad0ddb015a76dfc14a32e851ce940d
Parents: dd8d027
Author: George Reyes 
Authored: Tue Jan 5 16:04:18 2016 -0800
Committer: George Reyes 
Committed: Tue Jan 5 16:04:18 2016 -0800

--
 .../exceptions/AbstractExceptionMapper.java | 14 +++-
 .../usergrid/rest/ExceptionResourceIT.java  | 81 
 2 files changed, 92 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/3c96d5ff/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
index 9e0f359..b428567 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/AbstractExceptionMapper.java
@@ -18,10 +18,13 @@ package org.apache.usergrid.rest.exceptions;
 
 
 import org.apache.usergrid.rest.ApiResponse;
+import 
org.apache.usergrid.services.exceptions.UnsupportedServiceOperationException;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import javax.servlet.http.HttpServletRequest;
+import javax.ws.rs.NotAllowedException;
 import javax.ws.rs.core.Context;
 import javax.ws.rs.core.HttpHeaders;
 import javax.ws.rs.core.Response;
@@ -30,6 +33,8 @@ import javax.ws.rs.ext.ExceptionMapper;
 
 import static javax.ws.rs.core.MediaType.APPLICATION_JSON_TYPE;
 import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
+import static javax.ws.rs.core.Response.Status.METHOD_NOT_ALLOWED;
+import static javax.ws.rs.core.Response.Status.NOT_IMPLEMENTED;
 import static javax.ws.rs.core.Response.Status.OK;
 import static org.apache.commons.lang.StringUtils.isNotBlank;
 import static org.apache.usergrid.rest.utils.JSONPUtils.isJavascript;
@@ -55,8 +60,11 @@ public abstract class AbstractExceptionMapper imp
 
 @Override
 public Response toResponse( E e ) {
+if(e instanceof UnsupportedServiceOperationException || e instanceof  
NotAllowedException || e instanceof UnsupportedOperationException){
+return toResponse( METHOD_NOT_ALLOWED,e );
+}
 // if we don't know what type of error it is then it's a 500
-return toResponse( INTERNAL_SERVER_ERROR, (E) new UncaughtException(e) 
);
+return toResponse( INTERNAL_SERVER_ERROR, e );
 }
 
 
@@ -73,7 +81,7 @@ public abstract class AbstractExceptionMapper imp
 
 } else {
 if (logger.isDebugEnabled()) {
-logger.debug(e.getClass().getCanonicalName() + " Uncaught 
Exception (" + status + ")", e);
+logger.debug(e.getClass().getCanonicalName() + " Following 
Exception Thrown (" + status + ")", e);
 }
 }
 
@@ -105,7 +113,7 @@ public abstract class AbstractExceptionMapper imp
 // only log real errors as errors
 logger.error( "Server Error (" + status + "):\n" + jsonResponse );
 } else if ( logger.isDebugEnabled() ) {
-logger.debug( "Server Error (" + status + "):\n" + jsonResponse );
+logger.debug( "Client Error (" + status + "):\n" + jsonResponse );
 }
 String callback = httpServletRequest.getParameter( "callback" );
 if ( isJSONP() && isNotBlank( callback ) ) {

http://git-wip-us.apache.org/repos/asf/usergrid/blob/3c96d5ff/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java
--
diff --git 
a/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java 
b/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java
new file mode 100644
index 000..49dd317
--- /dev/null
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/ExceptionResourceIT.java
@@ -0,0 +1,81 @@
+package org.apache.usergrid.rest;
+
+
+import java.util.Map;
+
+import javax.ws.rs.NotAllowedException;
+import javax.ws.rs.ServerErrorException;
+
+import org.junit.Test;
+
+import org.apache.usergrid.persistence.Entity;
+import org.apache.usergrid.persistence.index.utils.UUIDUtils;

[09/14] usergrid git commit: Removed automatically added header

2016-01-25 Thread mrusso
Removed automatically added header


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

Branch: refs/heads/master
Commit: 6c502aa355eb3f019c6652d64c70b542aaefa109
Parents: 78bc3d5
Author: George Reyes 
Authored: Mon Jan 25 11:01:28 2016 -0800
Committer: George Reyes 
Committed: Mon Jan 25 11:01:28 2016 -0800

--
 .../rest/exceptions/ElasticsearchExecutionExceptionMapper.java   | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/6c502aa3/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
--
diff --git 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
index 6636727..55c5086 100644
--- 
a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
+++ 
b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/ElasticsearchExecutionExceptionMapper.java
@@ -9,9 +9,7 @@ import 
org.elasticsearch.action.search.SearchPhaseExecutionException;
 import static javax.ws.rs.core.Response.Status.SERVICE_UNAVAILABLE;
 
 
-/**
- * Created by ApigeeCorporation on 1/19/16.
- */
+
 @Provider
 public class ElasticsearchExecutionExceptionMapper
 extends AbstractExceptionMapper  {



[06/14] usergrid git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/usergrid into USERGRID-1047

2016-01-25 Thread mrusso
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/usergrid into 
USERGRID-1047

# Via Dave Johnson (1) and George Reyes (1)
* 'master' of https://git-wip-us.apache.org/repos/asf/usergrid:
  Added apache header to testing text. Fun fact time: The apache header adds 
803 bytes unto every file. For the 251 files of apache rat checked files we use 
201 KB on headers alone!
  Added some comments and deleting found commented out code.
  Created a test that correctly emulates what occurs when running curl asset 
call.
  Added additional test file and test case to verify the issue in USERGRID-144. 
Also, added fix to file not getting rid of text metadata and being properly 
replaced by image asset.


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

Branch: refs/heads/master
Commit: ee8c7c4d023db8cc3b5c7dfb274492c2475de5c5
Parents: dae8254 a51ee2c
Author: George Reyes 
Authored: Thu Jan 14 11:19:05 2016 -0800
Committer: George Reyes 
Committed: Thu Jan 14 11:19:05 2016 -0800

--
 .../rest/applications/ServiceResource.java  | 12 ++-
 .../applications/assets/AssetResourceIT.java| 80 
 stack/rest/src/test/resources/test.txt  | 17 +
 3 files changed, 105 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/ee8c7c4d/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ServiceResource.java
--



[14/14] usergrid git commit: Merge commit 'refs/pull/470/head' of github.com:apache/usergrid

2016-01-25 Thread mrusso
Merge commit 'refs/pull/470/head' of github.com:apache/usergrid


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

Branch: refs/heads/master
Commit: 94910522628e90dc1b789ebc7ba459d87d4a5673
Parents: 6c08e29 6c502aa
Author: Michael Russo 
Authored: Mon Jan 25 16:03:44 2016 -0800
Committer: Michael Russo 
Committed: Mon Jan 25 16:03:44 2016 -0800

--
 .../ElasticsearchExecutionExceptionMapper.java  | 22 
 1 file changed, 22 insertions(+)
--




[6/7] usergrid git commit: USERGRID-1200: fix test

2016-01-25 Thread mrusso
USERGRID-1200: fix test


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

Branch: refs/heads/master
Commit: 445ff5e5e4ae72e7ddfcd3957ffcbac0ae263e3e
Parents: f6c8b85
Author: Mike Dunker 
Authored: Mon Jan 25 12:20:25 2016 -0800
Committer: Mike Dunker 
Committed: Mon Jan 25 12:20:25 2016 -0800

--
 .../org/apache/usergrid/rest/management/RegistrationIT.java| 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/usergrid/blob/445ff5e5/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
--
diff --git 
a/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
 
b/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
index c678239..885710d 100644
--- 
a/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
+++ 
b/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
@@ -170,13 +170,11 @@ public class RegistrationIT extends AbstractRestIT {
 
 String subject = "Password Reset";
 
-/*
 SpringResource springResource = 
ConcurrentProcessSingleton.getInstance().getSpringResource();
 ManagementService mgmt = springResource.getBean( 
ManagementService.class );
 OrganizationConfig orgConfig = 
mgmt.getOrganizationConfigByName(this.clientSetup.getOrganizationName());
 
-String reset_url = 
orgConfig.getFullUrl(OrganizationConfigProps.WorkflowUrl.ADMIN_RESETPW_URL);
-*/
+String reset_url = 
orgConfig.getFullUrl(OrganizationConfigProps.WorkflowUrl.ADMIN_RESETPW_URL, 
userId);
 String invited = "User Invited To Organization";
 
 Message[] msgs = getMessages("servertest.com", 
this.clientSetup.getUsername(), "password");
@@ -191,7 +189,7 @@ public class RegistrationIT extends AbstractRestIT {
 // reseturl
 String mailContent = (String) ((MimeMultipart) 
msgs[0].getContent()).getBodyPart(1).getContent();
 logger.info(mailContent);
-//assertTrue(StringUtils.contains(mailContent, reset_url));
+assertTrue(StringUtils.contains(mailContent, reset_url));
 
 //reset token
 String token = getTokenFromMessage(msgs[0]);



[usergrid] Git Push Summary

2016-01-25 Thread mrusso
Repository: usergrid
Updated Tags:  refs/tags/2.1.0 [created] 1a795d823