You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by mr...@apache.org on 2016/09/02 16:40:37 UTC
[3/4] usergrid git commit: Moving the Java SDK to
https://github.com/apache/usergrid-java
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/UsergridRequest.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/UsergridRequest.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/UsergridRequest.java
deleted file mode 100644
index b16783e..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/UsergridRequest.java
+++ /dev/null
@@ -1,205 +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.java.client;
-
-import okhttp3.HttpUrl;
-import okhttp3.MediaType;
-import okhttp3.Request;
-import okhttp3.RequestBody;
-import org.apache.usergrid.java.client.UsergridEnums.UsergridHttpMethod;
-import org.apache.usergrid.java.client.auth.UsergridAuth;
-import org.apache.usergrid.java.client.query.UsergridQuery;
-import org.apache.usergrid.java.client.utils.JsonUtils;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.util.Map;
-
-@SuppressWarnings("unused")
-public class UsergridRequest {
- @NotNull public static final MediaType APPLICATION_JSON_MEDIA_TYPE = MediaType.parse("application/json; charset=utf-8");
-
- @NotNull private UsergridHttpMethod method;
- @NotNull private String baseUrl;
- @NotNull private MediaType contentType;
-
- @Nullable private UsergridQuery query;
- @Nullable private Map<String, Object> headers;
- @Nullable private Map<String, Object> parameters;
- @Nullable private Object data;
- @Nullable private UsergridAuth auth;
- @Nullable private String[] pathSegments;
-
- @NotNull
- public UsergridHttpMethod getMethod() { return method; }
- public void setMethod(@NotNull final UsergridHttpMethod method) { this.method = method; }
-
- @NotNull
- public String getBaseUrl() { return baseUrl; }
- public void setBaseUrl(@NotNull final String baseUrl) { this.baseUrl = baseUrl; }
-
- @NotNull
- public MediaType getContentType() { return contentType; }
- public void setContentType(@NotNull final MediaType contentType) { this.contentType = contentType; }
-
- @Nullable
- public UsergridQuery getQuery() { return query; }
- public void setQuery(@Nullable final UsergridQuery query) { this.query = query; }
-
- @Nullable
- public Map<String,Object> getHeaders() { return headers; }
- public void setHeaders(@Nullable final Map<String,Object> headers) { this.headers = headers; }
-
- @Nullable
- public Map<String,Object> getParameters() { return parameters; }
- public void setParameters(@Nullable final Map<String,Object> parameters) { this.parameters = parameters; }
-
- @Nullable
- public Object getData() { return data; }
- public void setData(@Nullable final Object data) { this.data = data; }
-
- @Nullable
- public UsergridAuth getAuth() { return auth; }
- public void setAuth(@Nullable final UsergridAuth auth) { this.auth = auth; }
-
- @Nullable
- public String[] getPathSegments() { return pathSegments; }
- public void setPathSegments(@Nullable final String[] pathSegments) { this.pathSegments = pathSegments; }
-
- private UsergridRequest() {}
-
- public UsergridRequest(@NotNull final UsergridHttpMethod method,
- @NotNull final MediaType contentType,
- @NotNull final String url,
- @Nullable final UsergridQuery query,
- @Nullable final UsergridAuth auth,
- @Nullable final String... pathSegments) {
- this.method = method;
- this.contentType = contentType;
- this.baseUrl = url;
- this.query = query;
- this.auth = auth;
- this.pathSegments = pathSegments;
- }
-
- public UsergridRequest(@NotNull final UsergridHttpMethod method,
- @NotNull final MediaType contentType,
- @NotNull final String url,
- @Nullable final UsergridAuth auth,
- @Nullable final String... pathSegments) {
- this.method = method;
- this.contentType = contentType;
- this.baseUrl = url;
- this.auth = auth;
- this.pathSegments = pathSegments;
- }
-
- public UsergridRequest(@NotNull final UsergridHttpMethod method,
- @NotNull final MediaType contentType,
- @NotNull final String url,
- @Nullable final Map<String, Object> params,
- @Nullable final Object data,
- @Nullable final UsergridAuth auth,
- @Nullable final String... pathSegments) {
- this.method = method;
- this.contentType = contentType;
- this.baseUrl = url;
- this.parameters = params;
- this.data = data;
- this.headers = null;
- this.query = null;
- this.auth = auth;
- this.pathSegments = pathSegments;
- }
-
- public UsergridRequest(@NotNull final UsergridHttpMethod method,
- @NotNull final MediaType contentType,
- @NotNull final String url,
- @Nullable final Map<String, Object> params,
- @Nullable final Object data,
- @Nullable final Map<String, Object> headers,
- @Nullable final UsergridQuery query,
- @Nullable final UsergridAuth auth,
- @Nullable final String... pathSegments) {
- this.method = method;
- this.contentType = contentType;
- this.baseUrl = url;
- this.parameters = params;
- this.data = data;
- this.headers = headers;
- this.query = query;
- this.auth = auth;
- this.pathSegments = pathSegments;
- }
-
- @NotNull
- public Request buildRequest() {
- Request.Builder requestBuilder = new Request.Builder();
- requestBuilder.url(this.constructUrl());
- this.addHeaders(requestBuilder);
- requestBuilder.method(this.method.toString(),this.constructRequestBody());
- return requestBuilder.build();
- }
-
- @NotNull
- protected HttpUrl constructUrl() {
- String url = this.baseUrl;
- if( this.query != null ) {
- url += this.query.build(false);
- }
- HttpUrl.Builder urlBuilder = HttpUrl.parse(url).newBuilder();
- if( this.pathSegments != null ) {
- for( String path : this.pathSegments ) {
- urlBuilder.addPathSegments(path);
- }
- }
- if( this.parameters != null ) {
- for (Map.Entry<String, Object> param : this.parameters.entrySet()) {
- urlBuilder.addQueryParameter(param.getKey(),param.getValue().toString());
- }
- }
- return urlBuilder.build();
- }
-
- protected void addHeaders(@NotNull final Request.Builder requestBuilder) {
- requestBuilder.addHeader("User-Agent", UsergridRequestManager.USERGRID_USER_AGENT);
- if (this.auth != null ) {
- String accessToken = this.auth.getAccessToken();
- if( accessToken != null ) {
- requestBuilder.addHeader("Authorization", "Bearer " + accessToken);
- }
- }
- if( this.headers != null ) {
- for( Map.Entry<String,Object> header : this.headers.entrySet() ) {
- requestBuilder.addHeader(header.getKey(),header.getValue().toString());
- }
- }
- }
-
- @Nullable
- protected RequestBody constructRequestBody() {
- RequestBody requestBody = null;
- if (method == UsergridHttpMethod.POST || method == UsergridHttpMethod.PUT) {
- String jsonString = "";
- if( this.data != null ) {
- jsonString = JsonUtils.toJsonString(this.data);
- }
- requestBody = RequestBody.create(this.contentType,jsonString);
- }
- return requestBody;
- }
-}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/UsergridRequestManager.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/UsergridRequestManager.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/UsergridRequestManager.java
deleted file mode 100644
index 7099d42..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/UsergridRequestManager.java
+++ /dev/null
@@ -1,97 +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.java.client;
-
-import okhttp3.OkHttpClient;
-import okhttp3.Request;
-import okhttp3.Response;
-import org.apache.usergrid.java.client.UsergridEnums.UsergridHttpMethod;
-import org.apache.usergrid.java.client.auth.UsergridAppAuth;
-import org.apache.usergrid.java.client.auth.UsergridAuth;
-import org.apache.usergrid.java.client.model.UsergridUser;
-import org.apache.usergrid.java.client.auth.UsergridUserAuth;
-import org.apache.usergrid.java.client.response.UsergridResponse;
-import org.jetbrains.annotations.NotNull;
-
-import java.io.IOException;
-import java.util.Map;
-
-import static org.apache.usergrid.java.client.utils.ObjectUtils.isEmpty;
-
-public class UsergridRequestManager {
-
- @NotNull public static String USERGRID_USER_AGENT = "usergrid-java/v" + Usergrid.UsergridSDKVersion;
-
- @NotNull private final UsergridClient usergridClient;
- @NotNull private final OkHttpClient httpClient;
-
- public UsergridRequestManager(@NotNull final UsergridClient usergridClient) {
- this.usergridClient = usergridClient;
- this.httpClient = new OkHttpClient();
- }
-
- @NotNull
- public UsergridResponse performRequest(@NotNull final UsergridRequest usergridRequest) {
- Request request = usergridRequest.buildRequest();
- UsergridResponse usergridResponse;
- try {
- Response response = this.httpClient.newCall(request).execute();
- usergridResponse = UsergridResponse.fromResponse(this.usergridClient,usergridRequest,response);
- } catch( IOException exception ) {
- usergridResponse = UsergridResponse.fromException(this.usergridClient,exception);
- }
- return usergridResponse;
- }
-
- @NotNull
- private UsergridResponse authenticate(@NotNull final UsergridAuth auth) {
- Map<String, String> credentials = auth.credentialsMap();
- String url = this.usergridClient.clientAppUrl();
- if ( auth instanceof UsergridUserAuth){
-
- UsergridUserAuth userAuth = (UsergridUserAuth) auth;
- if( userAuth.isAdminUser()){
-
- url = this.usergridClient.managementUrl();
- }
-
- }
-
- UsergridRequest request = new UsergridRequest(UsergridHttpMethod.POST, UsergridRequest.APPLICATION_JSON_MEDIA_TYPE, url, null, credentials, this.usergridClient.authForRequests(), "token");
- UsergridResponse response = performRequest(request);
- if (!isEmpty(response.getAccessToken()) && !isEmpty(response.getExpires())) {
- auth.setAccessToken(response.getAccessToken());
- auth.setExpiry(System.currentTimeMillis() + response.getExpires() - 5000);
- }
- return response;
- }
-
- @NotNull
- public UsergridResponse authenticateApp(@NotNull final UsergridAppAuth appAuth) {
- return this.authenticate(appAuth);
- }
-
- @NotNull
- public UsergridResponse authenticateUser(@NotNull final UsergridUserAuth userAuth) {
- UsergridResponse response = this.authenticate(userAuth);
- UsergridUser responseUser = response.user();
- if ( response.ok() && responseUser != null) {
- responseUser.setUserAuth(userAuth);
- }
- return response;
- }
-}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridAppAuth.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridAppAuth.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridAppAuth.java
deleted file mode 100644
index a7ac64d..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridAppAuth.java
+++ /dev/null
@@ -1,55 +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.java.client.auth;
-
-import com.fasterxml.jackson.annotation.JsonProperty;
-import org.jetbrains.annotations.NotNull;
-
-import java.util.HashMap;
-
-@SuppressWarnings("unused")
-public class UsergridAppAuth extends UsergridAuth {
-
- @NotNull private String clientId;
- @NotNull private String clientSecret;
-
- @NotNull public String getClientId() { return clientId; }
- public void setClientId(@NotNull final String clientId) { this.clientId = clientId; }
-
- @NotNull private String getClientSecret() { return clientSecret; }
- public void setClientSecret(@NotNull final String clientSecret) { this.clientSecret = clientSecret; }
-
- @NotNull
- @Override
- public HashMap<String, String> credentialsMap() {
- HashMap<String,String> credentials = super.credentialsMap();
- credentials.put("grant_type", "client_credentials");
- credentials.put("client_id", this.clientId);
- credentials.put("client_secret", this.clientSecret);
- return credentials;
- }
-
- public UsergridAppAuth() {
- this("","");
- }
-
- public UsergridAppAuth(@JsonProperty("clientId") @NotNull final String clientId, @JsonProperty("clientSecret") @NotNull final String clientSecret) {
- super();
- this.clientId = clientId;
- this.clientSecret = clientSecret;
- }
-}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridAuth.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridAuth.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridAuth.java
deleted file mode 100644
index 1ed61da..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridAuth.java
+++ /dev/null
@@ -1,76 +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.java.client.auth;
-
-import com.fasterxml.jackson.annotation.JsonProperty;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.util.HashMap;
-
-@SuppressWarnings("unused")
-public class UsergridAuth {
-
- @Nullable private String accessToken = null;
- @Nullable private Long expiry = null;
- private boolean usingToken = false;
- private boolean isAdminUser = false;
-
- public UsergridAuth() { }
-
- public UsergridAuth(@JsonProperty("accessToken") @Nullable final String accessToken) {
- this.usingToken = true;
- setAccessToken(accessToken);
- }
-
- public UsergridAuth(@JsonProperty("accessToken") @Nullable final String accessToken, @JsonProperty("expiry") @Nullable final Long expiry) {
- this.usingToken = true;
- setAccessToken(accessToken);
- setExpiry(expiry);
- }
-
- public void destroy() {
- setAccessToken(null);
- setExpiry(null);
- }
-
- @Nullable public String getAccessToken() { return accessToken; }
- public void setAccessToken(@Nullable final String accessToken) {
- this.accessToken = accessToken;
- }
-
- @Nullable public Long getExpiry() { return expiry; }
- public void setExpiry(@Nullable final Long tokenExpiry) { this.expiry = tokenExpiry; }
-
- public boolean isValidToken() { return (hasToken() && !isExpired()); }
-
- public boolean hasToken() { return accessToken != null; }
-
- public boolean isExpired() {
- if (expiry != null) {
- Long currentTime = System.currentTimeMillis() / 1000;
- return ((expiry / 1000) < currentTime);
- } else {
- return !this.usingToken;
- }
- }
-
- @NotNull
- public HashMap<String,String> credentialsMap() {
- return new HashMap<>();
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridUserAuth.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridUserAuth.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridUserAuth.java
deleted file mode 100644
index 7cb42ad..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/auth/UsergridUserAuth.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.usergrid.java.client.auth;
-
-import com.fasterxml.jackson.annotation.JsonProperty;
-import org.jetbrains.annotations.NotNull;
-
-import java.util.HashMap;
-
-@SuppressWarnings("unused")
-public class UsergridUserAuth extends UsergridAuth {
-
- @NotNull private String username;
- @NotNull private String password;
- private boolean isAdminUser = false;
-
- @NotNull public String getUsername() { return username; }
- public void setUsername(@NotNull final String username) { this.username = username; }
-
- @NotNull private String getPassword() { return password; }
- public void setPassword(@NotNull final String password) { this.password = password; }
-
- public boolean isAdminUser() { return isAdminUser; }
-
- @NotNull
- @Override
- public HashMap<String, String> credentialsMap() {
- HashMap<String,String> credentials = super.credentialsMap();
- credentials.put("grant_type", "password");
- credentials.put("username", this.username);
- credentials.put("password", this.password);
- return credentials;
- }
-
- public UsergridUserAuth() {
- this("","");
- }
-
- public UsergridUserAuth(@JsonProperty("username") @NotNull final String username,
- @JsonProperty("password") @NotNull final String password) {
- super();
- this.username = username;
- this.password = password;
- }
-
- public UsergridUserAuth(@JsonProperty("username") @NotNull final String username,
- @JsonProperty("password") @NotNull final String password,
- @JsonProperty("isAdminUser") final boolean isAdminUser) {
- super();
- this.username = username;
- this.password = password;
- this.isAdminUser = isAdminUser;
- }
-}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/exception/UsergridException.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/exception/UsergridException.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/exception/UsergridException.java
deleted file mode 100644
index ff30a0d..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/exception/UsergridException.java
+++ /dev/null
@@ -1,50 +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.java.client.exception;
-
-import org.jetbrains.annotations.NotNull;
-
-@SuppressWarnings("unused")
-public class UsergridException extends RuntimeException {
-
- private int responseCode;
-
- public int getResponseCode() {
- return responseCode;
- }
- public void setResponseCode(final int responseCode) { this.responseCode = responseCode; }
-
- private UsergridException() {}
-
- public UsergridException(@NotNull final String message) {
- super(message);
- }
-
- public UsergridException(@NotNull final String message, @NotNull final Throwable cause) {
- super(message, cause);
- }
-
- public UsergridException(@NotNull final String message, final int responseCode) {
- super(message);
- this.responseCode = responseCode;
- }
-
- public UsergridException(@NotNull final String message, @NotNull final Throwable cause, final int responseCode) {
- super(message, cause);
- this.responseCode = responseCode;
- }
-}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridDevice.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridDevice.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridDevice.java
deleted file mode 100644
index 1833afb..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridDevice.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.apache.usergrid.java.client.model;
-
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.databind.JsonNode;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.util.Map;
-
-@SuppressWarnings("unused")
-public class UsergridDevice extends UsergridEntity {
- @NotNull public static String DEVICE_ENTITY_TYPE = "device";
-
- @Nullable private String model;
- @Nullable private String platform;
- @Nullable private String osVersion;
-
- public UsergridDevice() {
- super(DEVICE_ENTITY_TYPE);
- }
-
- public UsergridDevice(@Nullable final String name) {
- super(DEVICE_ENTITY_TYPE,name);
- }
-
- public UsergridDevice(@NotNull final Map<String, JsonNode> properties) {
- super(DEVICE_ENTITY_TYPE,null,properties);
- }
-
- public UsergridDevice(@Nullable final String name, @NotNull final Map<String, JsonNode> properties) {
- super(DEVICE_ENTITY_TYPE,name,properties);
- }
-
- @Nullable @JsonProperty("deviceModel")
- public String getModel() {
- return this.model;
- }
- @JsonProperty("deviceModel")
- public void setModel(@Nullable final String model) {
- this.model = model;
- }
-
- @Nullable @JsonProperty("devicePlatform")
- public String getPlatform() {
- return this.platform;
- }
- @JsonProperty("devicePlatform")
- public void setPlatform(@Nullable final String platform) {
- this.platform = platform;
- }
-
- @Nullable @JsonProperty("deviceOSVersion")
- public String getOsVersion() {
- return this.osVersion;
- }
- @JsonProperty("deviceOSVersion")
- public void setOsVersion(@Nullable final String osVersion) {
- this.osVersion = osVersion;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridEntity.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridEntity.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridEntity.java
deleted file mode 100644
index 3444de0..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridEntity.java
+++ /dev/null
@@ -1,487 +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.java.client.model;
-
-import com.fasterxml.jackson.annotation.*;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.ObjectReader;
-import com.fasterxml.jackson.databind.node.*;
-import org.apache.usergrid.java.client.UsergridEnums.*;
-import org.apache.usergrid.java.client.Usergrid;
-import org.apache.usergrid.java.client.UsergridClient;
-import org.apache.usergrid.java.client.response.UsergridResponse;
-import org.apache.usergrid.java.client.utils.JsonUtils;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.io.IOException;
-import java.util.*;
-
-import static org.apache.usergrid.java.client.utils.JsonUtils.*;
-
-@SuppressWarnings("unused")
-public class UsergridEntity {
-
- @NotNull private static final HashMap<String,Class<? extends UsergridEntity>> subclassMappings = new HashMap<>();
- @NotNull private static final ObjectMapper entityUpdateMapper = new ObjectMapper();
- @NotNull private final ObjectReader entityUpdateReader = entityUpdateMapper.readerForUpdating(this);
-
- static {
- subclassMappings.put("user",UsergridUser.class);
- subclassMappings.put("device",UsergridDevice.class);
- }
-
- @NotNull private String type;
- @Nullable private String uuid;
- @Nullable private String name;
- @Nullable private Long created;
- @Nullable private Long modified;
-
- @NotNull private Map<String, JsonNode> properties = new HashMap<>();
-
- public UsergridEntity(@JsonProperty("type") @NotNull final String type) {
- this.type = type;
- }
-
- public UsergridEntity(@NotNull final String type, @Nullable final String name) {
- this(type);
- if( name != null ) {
- this.name = name;
- }
- }
-
- public UsergridEntity(@NotNull final String type, @Nullable final String name, @NotNull final Map<String, ?> properties) {
- this(type,name);
- this.updatePropertiesWithMap(properties);
- }
-
- @Nullable
- public static Class<? extends UsergridEntity> customSubclassForType(@NotNull final String type) {
- return UsergridEntity.subclassMappings.get(type);
- }
-
- public void copyAllProperties(@NotNull final UsergridEntity fromEntity) {
- try {
- this.updatePropertiesWithJsonNode(entityUpdateMapper.valueToTree(fromEntity));
- } catch( IllegalArgumentException e ) { System.out.print("Usergrid Error: Unable to update properties from entity - " + fromEntity.toString()); }
- }
-
- public void updatePropertiesWithMap(@NotNull final Map<String,?> properties) {
- try {
- this.updatePropertiesWithJsonNode(entityUpdateMapper.valueToTree(properties));
- } catch( IllegalArgumentException e ) { System.out.print("Usergrid Error: Unable to update properties from map - " + properties.toString()); }
- }
-
- public void updatePropertiesWithJsonNode(@NotNull final JsonNode node) {
- try {
- entityUpdateReader.readValue(node);
- } catch( IOException e ) { System.out.print("Usergrid Error: Unable to update properties from jsonNode - " + node.toString()); }
- }
-
- public static void mapCustomSubclassToType(@NotNull final String type, @NotNull final Class<? extends UsergridEntity> subclass) {
- UsergridEntity.subclassMappings.put(type,subclass);
- }
-
- @NotNull @Override public String toString() {
- return toJsonString(this);
- }
- @NotNull public String toPrettyString() { return toPrettyJsonString(this); }
- @NotNull public JsonNode toJsonObjectValue() {
- return toJsonNode(this);
- }
- @SuppressWarnings("unchecked")
- @NotNull public Map<String,?> toMapValue() { return toMap(this); }
-
- @JsonIgnore
- public boolean isUser() { return (this instanceof UsergridUser || this.getType().equalsIgnoreCase(UsergridUser.USER_ENTITY_TYPE)); }
-
- @NotNull public String getType() { return this.type; }
- private void setType(@NotNull final String type) { this.type = type; }
-
- @Nullable public String getUuid() { return this.uuid; }
- private void setUuid(@NotNull final String uuid) { this.uuid = uuid; }
-
- @Nullable public String getName() { return this.name; }
- protected void setName(@Nullable final String name) { this.name = name; }
-
- @Nullable public Long getCreated() { return this.created; }
- private void setCreated(@NotNull final Long created) { this.created = created; }
-
- @Nullable public Long getModified() { return this.modified; }
- private void setModified(@NotNull final Long modified) { this.modified = modified; }
-
- public void setLocation(final double latitude, final double longitude) {
- ObjectNode rootNode = JsonUtils.createObjectNode();
- rootNode.put("latitude", latitude);
- rootNode.put("longitude", longitude);
- setObjectProperty(this.properties, "location", rootNode);
- }
-
- @Nullable
- public String uuidOrName() {
- String uuidOrName = this.getUuid();
- if( uuidOrName == null ) {
- uuidOrName = this.getName();
- }
- return uuidOrName;
- }
-
- @NotNull
- public UsergridResponse reload() {
- return this.reload(Usergrid.getInstance());
- }
-
- @NotNull
- public UsergridResponse reload(@NotNull final UsergridClient client) {
- String uuidOrName = this.uuidOrName();
- if( uuidOrName == null ) {
- return UsergridResponse.fromError(client, "No UUID or name found.", "The entity object must have a `uuid` or `name` assigned.");
- }
- UsergridResponse response = client.GET(this.getType(), uuidOrName);
- if( response.ok() ) {
- UsergridEntity responseEntity = response.first();
- if( responseEntity != null ) {
- this.copyAllProperties(responseEntity);
- }
- }
- return response;
- }
-
- @NotNull
- public UsergridResponse save() {
- return this.save(Usergrid.getInstance());
- }
-
- @NotNull
- public UsergridResponse save(@NotNull final UsergridClient client) {
- UsergridResponse response;
- if( this.getUuid() != null ) {
- response = client.PUT(this);
- } else {
- response = client.POST(this);
- }
- if( response.ok() ) {
- UsergridEntity responseEntity = response.first();
- if( responseEntity != null ) {
- this.copyAllProperties(responseEntity);
- }
- }
- return response;
- }
-
- @NotNull
- public UsergridResponse remove() {
- return this.remove(Usergrid.getInstance());
- }
-
- @NotNull
- public UsergridResponse remove(@NotNull final UsergridClient client) {
- return client.DELETE(this);
- }
-
- @NotNull
- public UsergridResponse connect(@NotNull final String relationship, @NotNull final UsergridEntity toEntity) {
- return this.connect(Usergrid.getInstance(), relationship, toEntity);
- }
-
- @NotNull
- public UsergridResponse connect(@NotNull final UsergridClient client, @NotNull final String relationship, @NotNull final UsergridEntity toEntity) {
- return client.connect(this,relationship,toEntity);
- }
-
- @NotNull
- public UsergridResponse disconnect(@NotNull final String relationship, @NotNull final UsergridEntity fromEntity) {
- return this.disconnect(Usergrid.getInstance(), relationship, fromEntity);
- }
-
- @NotNull
- public UsergridResponse disconnect(@NotNull final UsergridClient client, @NotNull final String relationship, @NotNull final UsergridEntity fromEntity) {
- return client.disconnect(this,relationship,fromEntity);
- }
-
- @NotNull
- public UsergridResponse getConnections(@NotNull final UsergridDirection direction, @NotNull final String relationship) {
- return this.getConnections(Usergrid.getInstance(),direction,relationship);
- }
-
- @NotNull
- public UsergridResponse getConnections(@NotNull final UsergridClient client, @NotNull final UsergridDirection direction, @NotNull final String relationship) {
- return client.getConnections(direction,this,relationship);
- }
-
- public void removeProperty(@NotNull final String name) {
- putProperty(name, NullNode.getInstance());
- }
-
- public void removeProperties(@NotNull final List<String> names) {
- for( String propertyName : names ) {
- this.removeProperty(propertyName);
- }
- }
-
- public void putProperty(@NotNull final String name, @NotNull final String value) {
- this.putProperty(name, JsonNodeFactory.instance.textNode(value));
- }
- public void putProperty(@NotNull final String name, final boolean value) {
- this.putProperty(name, JsonNodeFactory.instance.booleanNode(value));
- }
- public void putProperty(@NotNull final String name, @NotNull final List value) {
- this.putProperty(name, JsonNodeFactory.instance.pojoNode(value));
- }
- public void putProperty(@NotNull final String name, final int value) {
- this.putProperty(name, JsonNodeFactory.instance.numberNode(value));
- }
- public void putProperty(@NotNull final String name, final long value) {
- this.putProperty(name, JsonNodeFactory.instance.numberNode(value));
- }
- public void putProperty(@NotNull final String name, final float value) {
- this.putProperty(name, JsonNodeFactory.instance.numberNode(value));
- }
- public void putProperty(@NotNull final String name, @Nullable final JsonNode value) {
- UsergridEntityProperties entityProperty = UsergridEntityProperties.fromString(name);
- if( entityProperty != null && !entityProperty.isMutableForEntity(this)) {
- return;
- }
-
- JsonNode valueNode = value;
- if( valueNode == null ) {
- valueNode = NullNode.getInstance();
- }
- this.updatePropertiesWithMap(Collections.singletonMap(name,valueNode));
- }
- public void putProperties(@NotNull final String jsonString) {
- try {
- JsonNode jsonNode = entityUpdateMapper.readTree(jsonString);
- this.putProperties(jsonNode);
- } catch( Exception ignore ) {}
- }
- public void putProperties(@NotNull final Map<String, Object> properties) {
- try {
- JsonNode jsonNode = entityUpdateMapper.valueToTree(properties);
- this.putProperties(jsonNode);
- } catch( Exception ignore ) {}
- }
- public void putProperties(@NotNull final JsonNode jsonNode) {
- HashMap<String,JsonNode> propertiesToUpdate = new HashMap<>();
- Iterator<Map.Entry<String,JsonNode>> keys = jsonNode.fields();
- while (keys.hasNext()) {
- Map.Entry<String,JsonNode> entry = keys.next();
- String key = entry.getKey();
- UsergridEntityProperties entityProperty = UsergridEntityProperties.fromString(key);
- if( entityProperty == null || entityProperty.isMutableForEntity(this) ) {
- propertiesToUpdate.put(key,entry.getValue());
- }
- }
- if( !propertiesToUpdate.isEmpty() ) {
- this.updatePropertiesWithMap(propertiesToUpdate);
- }
- }
-
- @SuppressWarnings("unchecked")
- public void append(@NotNull final String name, @NotNull final Object value) {
- this.append(name, (value instanceof List) ? (List<Object>) value : Collections.singletonList(value));
- }
-
- public void append(@NotNull final String name, @NotNull final List<Object> value) {
- this.insert(name, value, Integer.MAX_VALUE);
- }
-
- @SuppressWarnings("unchecked")
- public void insert(@NotNull final String name, @NotNull final Object value) {
- this.insert(name, (value instanceof List) ? (List<Object>) value : Collections.singletonList(value), 0);
- }
-
- @SuppressWarnings("unchecked")
- public void insert(@NotNull final String name, @NotNull final Object value, final int index) {
- this.insert(name, (value instanceof List) ? (List<Object>) value : Collections.singletonList(value), index);
- }
-
- public void insert(@NotNull final String name, @NotNull final List<Object> value) {
- this.insert(name,value,0);
- }
-
- public void insert(@NotNull final String name, @NotNull final List<Object> value, final int index) {
- int indexToInsert = index;
- if (indexToInsert < 0) {
- indexToInsert = 0;
- }
- Object propertyValue = this.getEntityProperty(name);
- if( propertyValue != null ) {
- ArrayList<Object> propertyArrayValue = this.convertToList(propertyValue);
- propertyArrayValue = this.insertIntoArray(propertyArrayValue,value,indexToInsert);
- this.putProperty(name, propertyArrayValue);
- } else {
- this.putProperty(name, value);
- }
- }
-
- public void pop(@NotNull final String name) {
- ArrayList<Object> arrayToPop = this.getArrayToPopOrShift(name);
- if( arrayToPop != null && !arrayToPop.isEmpty() ) {
- arrayToPop.remove(arrayToPop.size() - 1);
- this.putProperty(name, arrayToPop);
- }
- }
-
- public void shift(@NotNull final String name) {
- ArrayList<Object> arrayToShift = this.getArrayToPopOrShift(name);
- if( arrayToShift != null && !arrayToShift.isEmpty() ) {
- arrayToShift.remove(0);
- this.putProperty(name, arrayToShift);
- }
- }
-
- @Nullable
- public <T> T getEntityProperty(@NotNull final String name) {
- return JsonUtils.getProperty(this.properties, name);
- }
-
- @Nullable
- public JsonNode getJsonNodeProperty(@NotNull final String name) {
- return this.getProperties().get(name);
- }
-
- @Nullable
- public String getStringProperty(@NotNull final String name) {
- return JsonUtils.getStringProperty(this.getProperties(), name);
- }
-
- @Nullable
- public Boolean getBooleanProperty(@NotNull final String name) {
- Boolean booleanValue = null;
- Object object = JsonUtils.getProperty(this.getProperties(), name);
- if( object instanceof Boolean ) {
- booleanValue = (Boolean)object;
- }
- return booleanValue;
- }
-
- @Nullable
- public Number getNumberProperty(@NotNull final String name) {
- Number numberValue = null;
- Object object = JsonUtils.getProperty(this.getProperties(), name);
- if( object instanceof Number ) {
- numberValue = (Number)object;
- }
- return numberValue;
- }
-
- @Nullable
- public Integer getIntegerProperty(@NotNull final String name) {
- Integer integerValue = null;
- Object object = JsonUtils.getProperty(this.getProperties(), name);
- if( object instanceof Number ) {
- integerValue = ((Number)object).intValue();
- }
- return integerValue;
- }
-
- @Nullable
- public Float getFloatProperty(@NotNull final String name) {
- Float floatValue = null;
- Object object = JsonUtils.getProperty(this.getProperties(), name);
- if( object instanceof Number ) {
- floatValue = ((Number)object).floatValue();
- }
- return floatValue;
- }
-
- @Nullable
- public Long getLongProperty(@NotNull final String name) {
- Long longValue = null;
- Object object = JsonUtils.getProperty(this.getProperties(), name);
- if( object instanceof Number ) {
- longValue = ((Number)object).longValue();
- }
- return longValue;
- }
-
- @JsonAnyGetter @NotNull
- public Map<String, JsonNode> getProperties() {
- return this.properties;
- }
-
- @JsonAnySetter
- private void internalPutProperty(@NotNull final String name, @Nullable final JsonNode value) {
- if (value == null) {
- properties.put(name, NullNode.instance);
- } else {
- properties.put(name, value);
- }
- }
-
- @Nullable
- @SuppressWarnings("unchecked")
- private ArrayList<Object> getArrayToPopOrShift(@NotNull final String name) {
- Object entityProperty = getEntityProperty(name);
- ArrayList<Object> arrayToPopOrShift = null;
- if (entityProperty instanceof POJONode) {
- Object objectValue = ((POJONode) entityProperty).getPojo();
- if (objectValue instanceof List) {
- arrayToPopOrShift = new ArrayList<>((List) objectValue);
- } else {
- arrayToPopOrShift = new ArrayList<>();
- arrayToPopOrShift.add(objectValue);
- }
- } else if( entityProperty instanceof ArrayNode ) {
- arrayToPopOrShift = JsonUtils.convertToArrayList((ArrayNode)entityProperty);
- } else if( entityProperty instanceof List ) {
- arrayToPopOrShift = new ArrayList<>((List) entityProperty);
- }
- return arrayToPopOrShift;
- }
-
- @NotNull
- private ArrayList<Object> convertToList(@NotNull final Object value) {
- ArrayList<Object> arrayList = new ArrayList<>();
- if( value instanceof ArrayNode ) {
- arrayList = JsonUtils.convertToArrayList((ArrayNode)value);
- } else if (value instanceof POJONode) {
- Object objectValue = ((POJONode) value).getPojo();
- if( objectValue instanceof List ) {
- arrayList.addAll((List)objectValue);
- } else {
- arrayList.add(objectValue);
- }
- } else if (value instanceof List) {
- arrayList.addAll((List)value);
- } else {
- arrayList.add(value);
- }
- return arrayList;
- }
-
- @NotNull
- private ArrayList<Object> insertIntoArray(@NotNull final List<Object> propertyArrayNode, @NotNull final List<Object> arrayToInsert, final int index) {
- ArrayList<Object> mergedArray = new ArrayList<>();
- if (propertyArrayNode.size() <= 0 || arrayToInsert.isEmpty()) {
- mergedArray.addAll(arrayToInsert);
- } else if ( index <= 0 ) {
- mergedArray.addAll(arrayToInsert);
- mergedArray.addAll(propertyArrayNode);
- } else if ( index > 0 ) {
- mergedArray.addAll(propertyArrayNode);
- if ( index > propertyArrayNode.size() ) {
- mergedArray.addAll(arrayToInsert);
- } else {
- mergedArray.addAll(index,arrayToInsert);
- }
- }
- return mergedArray;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridUser.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridUser.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridUser.java
deleted file mode 100644
index f967e46..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/model/UsergridUser.java
+++ /dev/null
@@ -1,198 +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.java.client.model;
-
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.usergrid.java.client.Usergrid;
-import org.apache.usergrid.java.client.UsergridClient;
-import org.apache.usergrid.java.client.UsergridEnums.*;
-import org.apache.usergrid.java.client.auth.UsergridUserAuth;
-import org.apache.usergrid.java.client.query.UsergridQuery;
-import org.apache.usergrid.java.client.response.UsergridResponse;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.util.HashMap;
-
-@SuppressWarnings("unused")
-@JsonInclude(JsonInclude.Include.NON_NULL)
-public class UsergridUser extends UsergridEntity {
- @NotNull public final static String USER_ENTITY_TYPE = "user";
-
- @Nullable private UsergridUserAuth userAuth = null;
-
- @Nullable private String username;
- @Nullable private String email;
- @Nullable private String password;
- @Nullable private String picture;
-
- private boolean activated = false;
- private boolean disabled = false;
-
- public UsergridUser() {
- super(USER_ENTITY_TYPE);
- }
-
- public UsergridUser(@NotNull final String username, @Nullable final String password) {
- super(USER_ENTITY_TYPE);
- setUsername(username);
- setPassword(password);
- }
-
- public UsergridUser(@NotNull final String name, @NotNull final HashMap<String, Object> propertyMap) {
- super(USER_ENTITY_TYPE,name);
- putProperties(propertyMap);
- }
-
- public UsergridUser(@Nullable final String name, @Nullable final String username, @Nullable final String email, @Nullable final String password) {
- super(USER_ENTITY_TYPE,name);
- setUsername(username);
- setEmail(email);
- setPassword(password);
- }
-
- public void setName(@Nullable final String name) { super.setName(name); }
-
- @Nullable public String getUsername() { return this.username; }
- public void setUsername(@Nullable final String username) { this.username = username; }
-
- @Nullable public String getEmail() { return this.email; }
- public void setEmail(@Nullable final String email) { this.email = email; }
-
- @Nullable public String getPassword() { return this.password; }
- public void setPassword(@Nullable final String password) { this.password = password; }
-
- @Nullable public String getPicture() { return this.picture; }
- public void setPicture(@Nullable final String picture) { this.picture = picture; }
-
- public boolean isActivated() { return this.activated; }
- public void setActivated(final boolean activated) { this.activated = activated; }
-
- public boolean isDisabled() { return this.disabled; }
- public void setDisabled(final boolean disabled) { this.disabled = disabled; }
-
- @JsonIgnore @Nullable public UsergridUserAuth getUserAuth() { return this.userAuth; }
- @JsonIgnore public void setUserAuth(@Nullable final UsergridUserAuth userAuth) { this.userAuth = userAuth; }
-
- @Nullable
- public String uuidOrUsername() {
- String uuidOrUsername = this.getUuid();
- if( uuidOrUsername == null ) {
- uuidOrUsername = this.getUsername();
- }
- return uuidOrUsername;
- }
-
- @Nullable
- public String usernameOrEmail() {
- String usernameOrEmail = this.getUsername();
- if( usernameOrEmail == null ) {
- usernameOrEmail = this.getEmail();
- }
- return usernameOrEmail;
- }
-
- public static boolean checkAvailable(@Nullable final String email, @Nullable final String username) {
- return UsergridUser.checkAvailable(Usergrid.getInstance(), email, username);
- }
-
- public static boolean checkAvailable(@NotNull final UsergridClient client, @Nullable final String email, @Nullable final String username) {
- if (email == null && username == null) {
- throw new IllegalArgumentException("email and username both are null ");
- }
- UsergridQuery query = new UsergridQuery(USER_ENTITY_TYPE);
- if (username != null) {
- query.eq(UsergridUserProperties.USERNAME.toString(), username);
- }
- if (email != null) {
- query.or().eq(UsergridUserProperties.EMAIL.toString(), email);
- }
- return client.GET(query).first() != null;
- }
-
- @NotNull
- public UsergridResponse create() {
- return this.create(Usergrid.getInstance());
- }
-
- @NotNull
- public UsergridResponse create(@NotNull final UsergridClient client) {
- UsergridResponse response = client.POST(this);
- UsergridUser createdUser = response.user();
- if( createdUser != null ) {
- this.copyAllProperties(createdUser);
- }
- return response;
- }
-
- @NotNull
- public UsergridResponse login(@NotNull final String username, @NotNull final String password) {
- return this.login(Usergrid.getInstance(),username,password);
- }
-
- @NotNull
- public UsergridResponse login(@NotNull final UsergridClient client, @NotNull final String username, @NotNull final String password) {
- UsergridUserAuth userAuth = new UsergridUserAuth(username,password);
- UsergridResponse response = client.authenticateUser(userAuth,false);
- if( response.ok() ) {
- this.userAuth = userAuth;
- }
- return response;
- }
-
- @NotNull
- public UsergridResponse resetPassword(@NotNull final String oldPassword, @NotNull final String newPassword) {
- return this.resetPassword(Usergrid.getInstance(),oldPassword,newPassword);
- }
-
- @NotNull
- public UsergridResponse resetPassword(@NotNull final UsergridClient client, @NotNull final String oldPassword, @NotNull final String newPassword) {
- return client.resetPassword(this,oldPassword,newPassword);
- }
-
- @NotNull
- public UsergridResponse reauthenticate() {
- return this.reauthenticate(Usergrid.getInstance());
- }
-
- @NotNull
- public UsergridResponse reauthenticate(@NotNull final UsergridClient client) {
- return this.userAuth == null ? UsergridResponse.fromError(client, "Invalid UsergridUserAuth.", "No UsergridUserAuth found on the UsergridUser.") : client.authenticateUser(this.userAuth, false);
- }
-
- @NotNull
- public UsergridResponse logout() {
- return this.logout(Usergrid.getInstance());
- }
-
- @NotNull
- public UsergridResponse logout(@NotNull final UsergridClient client) {
- UsergridResponse response;
- String uuidOrUsername = this.uuidOrUsername();
- String accessToken = (this.userAuth != null) ? this.userAuth.getAccessToken() : null;
- if (uuidOrUsername == null || accessToken == null ) {
- response = UsergridResponse.fromError(client, "Logout Failed.", "UUID or Access Token not found on UsergridUser object.");
- } else {
- response = client.logoutUser(uuidOrUsername, accessToken);
- if( response.ok() ) {
- this.userAuth = null;
- }
- }
- return response;
- }
-}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/query/UsergridQuery.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/query/UsergridQuery.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/query/UsergridQuery.java
deleted file mode 100644
index e8c78c2..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/query/UsergridQuery.java
+++ /dev/null
@@ -1,431 +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.java.client.query;
-
-import org.apache.usergrid.java.client.UsergridEnums.UsergridQueryOperator;
-import org.apache.usergrid.java.client.UsergridEnums.UsergridQuerySortOrder;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.net.URLEncoder;
-import java.util.*;
-
-@SuppressWarnings("unused")
-public final class UsergridQuery {
-
- @NotNull private final ArrayList<String> requirementStrings = new ArrayList<>();
- @NotNull private final ArrayList<String> urlTerms = new ArrayList<>();
- @NotNull private final HashMap<String, UsergridQuerySortOrder> orderClauses = new HashMap<>();
- @NotNull private Integer limit = UsergridQuery.LIMIT_DEFAULT;
- @Nullable private String cursor = null;
- @Nullable private String fromStringValue = null;
- @Nullable private String collectionName = null;
-
- public UsergridQuery() {
- this(null);
- }
-
- public UsergridQuery(@Nullable final String collectionName) {
- this.collectionName = collectionName;
- this.requirementStrings.add(UsergridQuery.EMPTY_STRING);
- }
-
- private static boolean isUUID(@NotNull final String string) {
- try {
- UUID uuid = UUID.fromString(string);
- return true;
- } catch (Exception ex) {
- return false;
- }
- }
-
- @NotNull
- private static String encode(@NotNull final String stringValue) {
- String escapedString;
- try {
- escapedString = URLEncoder.encode(stringValue, UTF8);
- } catch (Exception e) {
- escapedString = stringValue;
- }
- return escapedString;
- }
-
- @NotNull
- public static String strJoin(@NotNull final List<String> array, @NotNull final String separator) {
- StringBuilder stringBuilder = new StringBuilder();
- for (int i = 0, il = array.size(); i < il; i++) {
- if (i > 0) {
- stringBuilder.append(separator);
- }
- stringBuilder.append(array.get(i));
- }
- return stringBuilder.toString();
- }
-
- @NotNull
- public UsergridQuery fromString(@NotNull final String stringValue) {
- this.fromStringValue = stringValue;
- return this;
- }
-
- @Nullable
- public String getType() {
- return this.collectionName;
- }
-
- @Nullable
- public String getCollectionName() {
- return this.collectionName;
- }
-
- @Nullable
- public String getCollection() {
- return this.collectionName;
- }
-
- @NotNull
- public UsergridQuery type(@Nullable final String type) {
- this.collectionName = type;
- return this;
- }
-
- @NotNull
- public UsergridQuery collection(@Nullable final String collectionName) {
- return this.type(collectionName);
- }
-
- @NotNull
- public UsergridQuery collectionName(@Nullable final String collectionName) {
- return this.type(collectionName);
- }
-
- @NotNull
- public UsergridQuery cursor(@Nullable final String value) {
- this.cursor = value;
- return this;
- }
-
- @NotNull
- public UsergridQuery limit(@NotNull final Integer limit) {
- this.limit = limit;
- return this;
- }
-
- @NotNull
- private UsergridQuery addConditionalSeparator(@NotNull final String separator) {
- if (!this.requirementStrings.get(0).isEmpty()) {
- this.requirementStrings.add(0, separator);
- this.requirementStrings.add(0, UsergridQuery.EMPTY_STRING);
- }
- return this;
- }
-
- @NotNull
- public UsergridQuery and() {
- return this.addConditionalSeparator(UsergridQuery.AND);
- }
-
- @NotNull
- public UsergridQuery or() {
- return this.addConditionalSeparator(UsergridQuery.OR);
- }
-
- @NotNull
- public UsergridQuery not() {
- return this.addConditionalSeparator(UsergridQuery.NOT);
- }
-
- @NotNull
- public UsergridQuery sort(@NotNull final String term, @NotNull final UsergridQuerySortOrder sortOrder) {
- this.orderClauses.put(term, sortOrder);
- return this;
- }
-
- @NotNull
- public UsergridQuery ascending(@NotNull final String term) {
- return this.asc(term);
- }
-
- @NotNull
- public UsergridQuery asc(@NotNull final String term) {
- return this.sort(term, UsergridQuerySortOrder.ASC);
- }
-
- @NotNull
- public UsergridQuery descending(@NotNull final String term) {
- return this.desc(term);
- }
-
- @NotNull
- public UsergridQuery desc(@NotNull final String term) {
- return this.sort(term, UsergridQuerySortOrder.DESC);
- }
-
- @NotNull
- public UsergridQuery contains(@NotNull final String term, @NotNull final String value) {
- return this.containsWord(term, value);
- }
-
- @NotNull
- public UsergridQuery containsString(@NotNull final String term, @NotNull final String value) {
- return this.containsWord(term, value);
- }
-
- @NotNull
- public UsergridQuery containsWord(@NotNull final String term, @NotNull final String value) {
- return this.addRequirement(term + SPACE + CONTAINS + SPACE + ((UsergridQuery.isUUID(value)) ? EMPTY_STRING : APOSTROPHE) + value + ((UsergridQuery.isUUID(value)) ? EMPTY_STRING : APOSTROPHE));
- }
-
- @NotNull
- public UsergridQuery filter(@NotNull final String term, @NotNull final Object value) {
- return this.eq(term, value);
- }
-
- @NotNull
- public UsergridQuery equals(@NotNull final String term, @NotNull final Object value) {
- return this.eq(term, value);
- }
-
- @NotNull
- public UsergridQuery eq(@NotNull final String term, @NotNull final Object value) {
- return this.addOperationRequirement(term, UsergridQueryOperator.EQUAL, value);
- }
-
- @NotNull
- public UsergridQuery greaterThan(@NotNull final String term, @NotNull final Object value) {
- return this.gt(term, value);
- }
-
- @NotNull
- public UsergridQuery gt(@NotNull final String term, @NotNull final Object value) {
- return this.addOperationRequirement(term, UsergridQueryOperator.GREATER_THAN, value);
- }
-
- @NotNull
- public UsergridQuery greaterThanOrEqual(@NotNull final String term, @NotNull final Object value) {
- return this.gte(term, value);
- }
-
- @NotNull
- public UsergridQuery gte(@NotNull final String term, @NotNull final Object value) {
- return this.addOperationRequirement(term, UsergridQueryOperator.GREATER_THAN_EQUAL_TO, value);
- }
-
- @NotNull
- public UsergridQuery lessThan(@NotNull final String term, @NotNull final Object value) {
- return this.lt(term, value);
- }
-
- @NotNull
- public UsergridQuery lt(@NotNull final String term, @NotNull final Object value) {
- return this.addOperationRequirement(term, UsergridQueryOperator.LESS_THAN, value);
- }
-
- @NotNull
- public UsergridQuery lessThanOrEqual(@NotNull final String term, @NotNull final Object value) {
- return this.lte(term, value);
- }
-
- @NotNull
- public UsergridQuery lte(@NotNull final String term, @NotNull final Object value) {
- return this.addOperationRequirement(term, UsergridQueryOperator.LESS_THAN_EQUAL_TO, value);
- }
-
- @NotNull
- public UsergridQuery locationWithin(final double distance, final double latitude, final double longitude) {
- return this.addRequirement(LOCATION + SPACE + WITHIN + SPACE + distance + SPACE + OF + SPACE + latitude + SPACE + COMMA + longitude);
- }
-
- @NotNull
- public UsergridQuery urlTerm(@NotNull final String term, @NotNull final String equalsValue) {
- if (term.equalsIgnoreCase(QL)) {
- this.ql(equalsValue);
- } else {
- this.urlTerms.add(UsergridQuery.encode(term) + EQUALS + UsergridQuery.encode(equalsValue));
- }
- return this;
- }
-
- @NotNull
- public UsergridQuery ql(final String value) {
-
- return value != null && !value.isEmpty() ? this.addRequirement(value) : this;
-
- }
-
- @NotNull
- public UsergridQuery addRequirement(@NotNull final String requirement) {
- String requirementString = this.requirementStrings.remove(0);
- if (!requirement.isEmpty() && !requirementString.isEmpty()) {
- requirementString += SPACE + AND + SPACE;
- }
- requirementString += requirement;
- this.requirementStrings.add(0, requirementString);
- return this;
- }
-
- @NotNull
- public UsergridQuery addOperationRequirement(@NotNull final String term, @NotNull final UsergridQueryOperator operation, final int intValue) {
- return this.addOperationRequirement(term, operation, Integer.valueOf(intValue));
- }
-
- @NotNull
- public UsergridQuery addOperationRequirement(@NotNull final String term, @NotNull final UsergridQueryOperator operation, @NotNull final Object value) {
- if (value instanceof String) {
- String valueString = value.toString();
- if (!UsergridQuery.isUUID(valueString)) {
- valueString = APOSTROPHE + value + APOSTROPHE;
- }
- return addRequirement(term + SPACE + operation.operatorValue() + SPACE + valueString);
- } else {
- return addRequirement(term + SPACE + operation.operatorValue() + SPACE + value.toString());
- }
- }
-
- @NotNull
- private String constructOrderByString() {
- String orderByString = EMPTY_STRING;
- if (!this.orderClauses.isEmpty()) {
- for (Map.Entry<String, UsergridQuerySortOrder> orderClause : this.orderClauses.entrySet()) {
- if (!orderByString.isEmpty()) {
- orderByString += COMMA;
- }
- orderByString += orderClause.getKey() + SPACE + orderClause.getValue().toString();
- }
- if (!orderByString.isEmpty()) {
- orderByString = SPACE + ORDER_BY + SPACE + orderByString;
- }
- }
- return orderByString;
- }
-
- @NotNull
- private String constructURLTermsString() {
- String urlTermsString = EMPTY_STRING;
- if (!this.urlTerms.isEmpty()) {
- urlTermsString = UsergridQuery.strJoin(this.urlTerms, AMPERSAND);
- }
- return urlTermsString;
- }
-
- @NotNull
- private String constructRequirementString() {
- ArrayList<String> requirementStrings = new ArrayList<>(this.requirementStrings);
- String firstString = requirementStrings.get(0);
- if (firstString.isEmpty()) {
- requirementStrings.remove(0);
- }
- String requirementsString = EMPTY_STRING;
- if (!requirementStrings.isEmpty()) {
- firstString = requirementStrings.get(0);
- if (firstString.equalsIgnoreCase(OR) || firstString.equalsIgnoreCase(AND) || firstString.equalsIgnoreCase(NOT)) {
- requirementStrings.remove(0);
- }
- if (!requirementStrings.isEmpty()) {
- Collections.reverse(requirementStrings);
- requirementsString = UsergridQuery.strJoin(requirementStrings, SPACE);
- }
- }
- return requirementsString;
- }
-
- @NotNull
- private String constructURLAppend() {
- return this.constructURLAppend(true);
- }
-
- @NotNull
- private String constructURLAppend(final boolean autoURLEncode) {
- if (this.fromStringValue != null) {
- String requirementsString = this.fromStringValue;
- if (autoURLEncode) {
- requirementsString = UsergridQuery.encode(requirementsString);
- }
- return QUESTION_MARK + QL + EQUALS + requirementsString;
- }
- String urlAppend = EMPTY_STRING;
- if (this.limit != LIMIT_DEFAULT) {
- urlAppend += LIMIT + EQUALS + this.limit.toString();
- }
- String urlTermsString = this.constructURLTermsString();
- if (!urlTermsString.isEmpty()) {
- if (!urlAppend.isEmpty()) {
- urlAppend += AMPERSAND;
- }
- urlAppend += urlTermsString;
- }
- if (this.cursor != null && !this.cursor.isEmpty()) {
- if (!urlAppend.isEmpty()) {
- urlAppend += AMPERSAND;
- }
- urlAppend += CURSOR + EQUALS + this.cursor;
- }
-
- String requirementsString = this.constructRequirementString();
-
- String orderByString = this.constructOrderByString();
- if (!orderByString.isEmpty()) {
- requirementsString += orderByString;
- }
- if (!requirementsString.isEmpty()) {
- if (autoURLEncode) {
- requirementsString = UsergridQuery.encode(requirementsString);
- }
- if (!urlAppend.isEmpty()) {
- urlAppend += AMPERSAND;
- }
- urlAppend += QL + EQUALS + requirementsString;
- }
- if (!urlAppend.isEmpty()) {
- urlAppend = QUESTION_MARK + urlAppend;
- }
- return urlAppend;
- }
-
- @NotNull
- public String build() {
- return this.build(true);
- }
-
- @NotNull
- public String build(final boolean autoURLEncode) {
- return this.constructURLAppend(autoURLEncode);
- }
-
- private static final int LIMIT_DEFAULT = 10;
- @NotNull private static final String AMPERSAND = "&";
- @NotNull private static final String AND = "and";
- @NotNull private static final String APOSTROPHE = "'";
- @NotNull private static final String COMMA = ",";
- @NotNull private static final String CONTAINS = "contains";
- @NotNull private static final String CURSOR = "cursor";
- @NotNull private static final String EMPTY_STRING = "";
- @NotNull private static final String EQUALS = "=";
- @NotNull private static final String LIMIT = "limit";
- @NotNull private static final String LOCATION = "location";
- @NotNull private static final String NOT = "not";
- @NotNull private static final String OF = "of";
- @NotNull private static final String OR = "or";
- @NotNull private static final String ORDER_BY = "order by";
- @NotNull private static final String QL = "ql";
- @NotNull private static final String QUESTION_MARK = "?";
- @NotNull private static final String SELECT_ALL = "select *";
- @NotNull private static final String SPACE = " ";
- @NotNull private static final String UTF8 = "UTF-8";
- @NotNull private static final String WHERE = "where";
- @NotNull private static final String WITHIN = "within";
-}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/response/UsergridResponse.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/response/UsergridResponse.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/response/UsergridResponse.java
deleted file mode 100644
index ee649c4..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/response/UsergridResponse.java
+++ /dev/null
@@ -1,230 +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.java.client.response;
-
-import com.fasterxml.jackson.annotation.*;
-import com.fasterxml.jackson.databind.JsonNode;
-import okhttp3.Headers;
-import org.apache.usergrid.java.client.UsergridClient;
-import org.apache.usergrid.java.client.UsergridEnums;
-import org.apache.usergrid.java.client.UsergridRequest;
-import org.apache.usergrid.java.client.model.UsergridEntity;
-import org.apache.usergrid.java.client.model.UsergridUser;
-import org.apache.usergrid.java.client.query.UsergridQuery;
-import org.apache.usergrid.java.client.utils.JsonUtils;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.util.*;
-
-import static org.apache.usergrid.java.client.utils.JsonUtils.toJsonString;
-
-@SuppressWarnings("unused")
-@JsonInclude(JsonInclude.Include.NON_NULL)
-public class UsergridResponse {
-
- @Nullable private UsergridClient client;
- @NotNull private Map<String, JsonNode> properties = new HashMap<>();
-
- private int statusCode = 0;
- @Nullable private JsonNode responseJson = null;
- @Nullable private String cursor;
- @Nullable private List<UsergridEntity> entities;
- @Nullable private Map<String, String> headers;
- @Nullable private UsergridQuery query;
- @Nullable private UsergridResponseError responseError = null;
-
- @Nullable private String accessToken;
- @Nullable private Long expires;
-
- public boolean ok() { return (statusCode > 0 && statusCode < 400); }
- public int count() { return (entities == null) ? 0 : entities.size(); }
- public boolean hasNextPage() { return (cursor != null); }
- @NotNull @Override public String toString() {
- return toJsonString(this);
- }
-
- @Nullable public UsergridEntity first() { return (entities == null || entities.isEmpty()) ? null : entities.get(0); }
- @Nullable public UsergridEntity entity() {
- return first();
- }
- @Nullable public UsergridEntity last() { return (entities == null || entities.isEmpty()) ? null : entities.get(entities.size() - 1); }
-
- @Nullable
- public UsergridUser user() {
- UsergridEntity entity = this.first();
- if( entity != null && entity instanceof UsergridUser ) {
- return (UsergridUser) entity;
- }
- return null;
- }
-
- @Nullable
- public List<UsergridUser> users() {
- ArrayList<UsergridUser> users = null;
- if( entities != null && !entities.isEmpty() ) {
- for( UsergridEntity entity : entities ) {
- if( entity instanceof UsergridUser ) {
- if( users == null ) {
- users = new ArrayList<>();
- }
- users.add((UsergridUser)entity);
- }
- }
- }
- return users;
- }
-
- public int getStatusCode() { return this.statusCode; }
-
- @Nullable @JsonIgnore
- public UsergridClient getClient() {
- return client;
- }
- @JsonIgnore public void setClient(@Nullable final UsergridClient client) { this.client = client; }
-
- @Nullable @JsonIgnore
- public JsonNode getResponseJson() {
- return responseJson;
- }
- private void setResponseJson(@Nullable final JsonNode responseJson) {this.responseJson = responseJson; }
-
- @Nullable @JsonIgnore
- public UsergridQuery getQuery() {
- return query;
- }
- private void setQuery(@Nullable final UsergridQuery query) { this.query = query; }
-
- @Nullable
- public UsergridResponseError getResponseError() {
- return responseError;
- }
- private void setResponseError(@Nullable final UsergridResponseError responseError) { this.responseError = responseError; }
-
- @Nullable
- public Map<String, String> getHeaders() {
- return headers;
- }
- private void setHeaders(@Nullable final Map<String, String> headers) { this.headers = headers; }
-
- @Nullable
- public List<UsergridEntity> getEntities() { return entities; }
- private void setEntities(@NotNull final List<UsergridEntity> entities) { this.entities = entities; }
-
- @Nullable @JsonProperty("cursor")
- public String getCursor() {
- return cursor;
- }
- @JsonProperty("cursor")
- private void setCursor(@NotNull final String cursor) { this.cursor = cursor; }
-
- @Nullable @JsonProperty("access_token")
- public String getAccessToken() { return this.accessToken; }
- @JsonProperty("access_token")
- private void setAccessToken(@NotNull final String accessToken) { this.accessToken = accessToken; }
-
- @Nullable @JsonProperty("expires_in")
- public Long getExpires() { return this.expires; }
- @JsonProperty("expires_in")
- private void setExpires(@NotNull final Long expires) { this.expires = expires; }
-
- @JsonProperty("user")
- private void setUser(@NotNull final UsergridUser user) {
- if( this.entities == null ) {
- this.entities = new ArrayList<>();
- }
- this.entities.add(user);
- }
-
- @NotNull @JsonAnyGetter
- public Map<String, JsonNode> getProperties() {
- return properties;
- }
- @JsonAnySetter
- private void setProperty(@NotNull final String key, @NotNull final JsonNode value) {
- properties.put(key, value);
- }
-
- @NotNull
- public UsergridResponse loadNextPage() {
- UsergridClient client = this.client;
- UsergridEntity entity = this.first();
- if( this.hasNextPage() && client != null && entity != null ) {
- Map<String, Object> paramsMap = new HashMap<>();
- paramsMap.put("cursor", getCursor());
- UsergridRequest request = new UsergridRequest(UsergridEnums.UsergridHttpMethod.GET, UsergridRequest.APPLICATION_JSON_MEDIA_TYPE, client.clientAppUrl(), paramsMap, null, null, this.getQuery(), client.authForRequests() , entity.getType());
- return client.sendRequest(request);
- } else {
- return UsergridResponse.fromError(client,"Error Loading Next Page.","Unable to load next page.");
- }
- }
-
- @NotNull
- public static UsergridResponse fromError(@Nullable final UsergridClient client, @NotNull final String errorName, @NotNull final String errorDescription) {
- UsergridResponse response = new UsergridResponse();
- response.client = client;
- response.responseError = new UsergridResponseError(errorName,errorDescription);
- return response;
- }
-
- @NotNull
- public static UsergridResponse fromException(@Nullable final UsergridClient client, @NotNull final Exception ex) {
- final UsergridResponse response = new UsergridResponse();
- response.client = client;
- final UsergridResponseError responseError = new UsergridResponseError();
- responseError.setErrorDescription(ex.getMessage());
- if( ex.getClass() != null ) {
- responseError.setErrorName(ex.getClass().toString());
- }
- if( ex.getCause() != null ) {
- responseError.setErrorException(ex.getCause().toString());
- }
- response.responseError = responseError;
- return response;
- }
-
- @NotNull
- public static UsergridResponse fromResponse(@NotNull final UsergridClient client, @NotNull final UsergridRequest request, @NotNull final okhttp3.Response requestResponse) {
- UsergridResponse response;
- JsonNode responseJson;
- try {
- String responseJsonString = requestResponse.body().string();
- responseJson = JsonUtils.mapper.readTree(responseJsonString);
- } catch ( Exception e ) {
- return UsergridResponse.fromException(client,e);
- }
- if ( responseJson.has("error") ) {
- response = new UsergridResponse();
- response.responseError = JsonUtils.fromJsonNode(responseJson,UsergridResponseError.class);
- } else {
- response = JsonUtils.fromJsonNode(responseJson,UsergridResponse.class);
- }
- response.client = client;
- response.responseJson = responseJson;
- response.statusCode = requestResponse.code();
-
- Headers responseHeaders = requestResponse.headers();
- HashMap<String,String> headers = new HashMap<>();
- for (int i = 0; i < responseHeaders.size(); i++) {
- headers.put(responseHeaders.name(i),responseHeaders.value(i));
- }
-
- response.headers = headers;
- response.query = request.getQuery();
- return response;
- }
-}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/d2f04b45/sdks/java/src/main/java/org/apache/usergrid/java/client/response/UsergridResponseError.java
----------------------------------------------------------------------
diff --git a/sdks/java/src/main/java/org/apache/usergrid/java/client/response/UsergridResponseError.java b/sdks/java/src/main/java/org/apache/usergrid/java/client/response/UsergridResponseError.java
deleted file mode 100644
index 387ae56..0000000
--- a/sdks/java/src/main/java/org/apache/usergrid/java/client/response/UsergridResponseError.java
+++ /dev/null
@@ -1,98 +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.java.client.response;
-
-import com.fasterxml.jackson.annotation.JsonAnyGetter;
-import com.fasterxml.jackson.annotation.JsonAnySetter;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.databind.JsonNode;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.util.HashMap;
-import java.util.Map;
-
-@SuppressWarnings("unused")
-@JsonInclude(JsonInclude.Include.NON_NULL)
-public class UsergridResponseError {
-
- @Nullable private String errorName;
- @Nullable private String errorDescription;
- @Nullable private String errorException;
-
- @NotNull private final Map<String, JsonNode> properties = new HashMap<>();
-
- public UsergridResponseError() {
- this(null,null,null);
- }
- public UsergridResponseError(@Nullable final String errorName) {
- this(errorName, null, null);
- }
- public UsergridResponseError(@Nullable final String errorName, @Nullable final String errorDescription) {
- this(errorName,errorDescription,null);
- }
- public UsergridResponseError(@Nullable final String errorName, @Nullable final String errorDescription, @Nullable final String errorException) {
- this.errorName = errorName;
- this.errorDescription = errorDescription;
- this.errorException = errorException;
- }
-
- @NotNull
- @JsonAnyGetter
- public Map<String, JsonNode> getProperties() {
- return properties;
- }
-
- @JsonAnySetter
- public void setProperty(@NotNull final String key, @NotNull final JsonNode value) {
- properties.put(key, value);
- }
-
- @Nullable
- @JsonProperty("error")
- public String getErrorName() {
- return errorName;
- }
-
- @JsonProperty("error")
- public void setErrorName(@NotNull final String errorName) {
- this.errorName = errorName;
- }
-
- @Nullable
- @JsonProperty("exception")
- public String getErrorException() {
- return errorException;
- }
-
- @JsonProperty("exception")
- public void setErrorException(@NotNull final String errorException) {
- this.errorException = errorException;
- }
-
- @Nullable
- @JsonProperty("error_description")
- public String getErrorDescription() {
- return errorDescription;
- }
-
- @JsonProperty("error_description")
- public void setErrorDescription(@NotNull final String errorDescription) {
- this.errorDescription = errorDescription;
- }
-}