Skip to content

Commit c335c17

Browse files
committed
Deploy
1 parent 4931fc7 commit c335c17

File tree

630 files changed

+142660
-359
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

630 files changed

+142660
-359
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<project><modelVersion>4.0.0</modelVersion><groupId>com.bandwidth.sdk</groupId><artifactId>bandwidth-sdk</artifactId><version>3.5.0</version><packaging>jar</packaging><name>BandwidthLib</name><build><pluginManagement><plugins><plugin><groupId>org.eclipse.m2e</groupId><artifactId>lifecycle-mapping</artifactId><version>1.0.0</version><configuration><lifecycleMappingMetadata><pluginExecutions><pluginExecution><pluginExecutionFilter><groupId>org.apache.maven.plugins</groupId><artifactId>maven-enforcer-plugin</artifactId><versionRange>[2.0.0,)</versionRange><goals><goal>enforce</goal></goals></pluginExecutionFilter><action><execute><runOnIncremental>true</runOnIncremental></execute></action></pluginExecution></pluginExecutions></lifecycleMappingMetadata></configuration></plugin></plugins></pluginManagement><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-enforcer-plugin</artifactId><version>3.0.0-M2</version><executions><execution><id>enforce-versions</id><goals><goal>enforce</goal></goals><configuration><fail>true</fail><rules><requireJavaVersion><version>1.8</version></requireJavaVersion></rules></configuration></execution></executions></plugin><plugin><artifactId>maven-assembly-plugin</artifactId><configuration><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs><appendAssemblyId>false</appendAssemblyId></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><version>3.1.0</version><executions><execution><id>attach-sources</id><goals><goal>jar</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-gpg-plugin</artifactId><version>1.5</version><executions><execution><id>sign-artifacts</id><phase>verify</phase><goals><goal>sign</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><version>3.1.1</version><configuration><failOnError>false</failOnError></configuration><executions><execution><id>attach-javadocs</id><goals><goal>jar</goal></goals></execution></executions></plugin><plugin><groupId>org.sonatype.plugins</groupId><artifactId>nexus-staging-maven-plugin</artifactId><version>1.6.2</version><extensions>true</extensions><configuration><serverId>ossrh</serverId><nexusUrl>https://oss.sonatype.org/</nexusUrl><autoReleaseAfterClose>true</autoReleaseAfterClose></configuration></plugin></plugins></build><properties><jackson.version>2.9.10</jackson.version><jackson.databind.version>2.9.10.4</jackson.databind.version><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><dependency><groupId>javax.xml.bind</groupId><artifactId>jaxb-api</artifactId><version>2.3.0</version></dependency><dependency><groupId>com.sun.xml.bind</groupId><artifactId>jaxb-core</artifactId><version>2.3.0</version></dependency><dependency><groupId>com.sun.xml.bind</groupId><artifactId>jaxb-impl</artifactId><version>2.3.0</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.8</version></dependency><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>3.12.1</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>${jackson.databind.version}</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>${jackson.version}</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-annotations</artifactId><version>${jackson.version}</version></dependency></dependencies><distributionManagement><snapshotRepository><id>ossrh</id><url>https://oss.sonatype.org/content/repositories/snapshots</url></snapshotRepository><repository><id>ossrh</id><url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url></repository></distributionManagement><parent><groupId>org.sonatype.oss</groupId><artifactId>oss-parent</artifactId><version>7</version></parent><licenses><license><name>Apache License, Version 2.0</name><url>http://www.apache.org/licenses/LICENSE-2.0.txt</url><distribution>repo</distribution></license></licenses><scm><url>https://github.com/Bandwidth/java-sdk</url><connection>scm:git:git@github.com:Bandwidth/java-sdk.git</connection><developerConnection>scm:git:git@github.com:Bandwidth/java-sdk.git</developerConnection></scm><developers><developer><id>support</id><name>Bandwidth Support</name><email>info@bandwidth.com</email><organization>Bandwidth, Inc.</organization><organizationUrl>http://bandwidth.com</organizationUrl><timezone>-5</timezone></developer></developers></project>
1+
<project><modelVersion>4.0.0</modelVersion><groupId>com.bandwidth.sdk</groupId><artifactId>bandwidth-sdk</artifactId><version>3.6.0</version><packaging>jar</packaging><name>BandwidthLib</name><build><pluginManagement><plugins><plugin><groupId>org.eclipse.m2e</groupId><artifactId>lifecycle-mapping</artifactId><version>1.0.0</version><configuration><lifecycleMappingMetadata><pluginExecutions><pluginExecution><pluginExecutionFilter><groupId>org.apache.maven.plugins</groupId><artifactId>maven-enforcer-plugin</artifactId><versionRange>[2.0.0,)</versionRange><goals><goal>enforce</goal></goals></pluginExecutionFilter><action><execute><runOnIncremental>true</runOnIncremental></execute></action></pluginExecution></pluginExecutions></lifecycleMappingMetadata></configuration></plugin></plugins></pluginManagement><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-enforcer-plugin</artifactId><version>3.0.0-M2</version><executions><execution><id>enforce-versions</id><goals><goal>enforce</goal></goals><configuration><fail>true</fail><rules><requireJavaVersion><version>1.8</version></requireJavaVersion></rules></configuration></execution></executions></plugin><plugin><artifactId>maven-assembly-plugin</artifactId><configuration><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs><appendAssemblyId>false</appendAssemblyId></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><version>3.1.0</version><executions><execution><id>attach-sources</id><goals><goal>jar</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-gpg-plugin</artifactId><version>1.5</version><executions><execution><id>sign-artifacts</id><phase>verify</phase><goals><goal>sign</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><version>3.1.1</version><configuration><failOnError>false</failOnError></configuration><executions><execution><id>attach-javadocs</id><goals><goal>jar</goal></goals></execution></executions></plugin><plugin><groupId>org.sonatype.plugins</groupId><artifactId>nexus-staging-maven-plugin</artifactId><version>1.6.2</version><extensions>true</extensions><configuration><serverId>ossrh</serverId><nexusUrl>https://oss.sonatype.org/</nexusUrl><autoReleaseAfterClose>true</autoReleaseAfterClose></configuration></plugin></plugins></build><properties><jackson.version>2.9.10</jackson.version><jackson.databind.version>2.9.10.4</jackson.databind.version><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><dependency><groupId>javax.xml.bind</groupId><artifactId>jaxb-api</artifactId><version>2.3.0</version></dependency><dependency><groupId>com.sun.xml.bind</groupId><artifactId>jaxb-core</artifactId><version>2.3.0</version></dependency><dependency><groupId>com.sun.xml.bind</groupId><artifactId>jaxb-impl</artifactId><version>2.3.0</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.8</version></dependency><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>3.12.1</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>${jackson.databind.version}</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>${jackson.version}</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-annotations</artifactId><version>${jackson.version}</version></dependency></dependencies><distributionManagement><snapshotRepository><id>ossrh</id><url>https://oss.sonatype.org/content/repositories/snapshots</url></snapshotRepository><repository><id>ossrh</id><url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url></repository></distributionManagement><parent><groupId>org.sonatype.oss</groupId><artifactId>oss-parent</artifactId><version>7</version></parent><licenses><license><name>Apache License, Version 2.0</name><url>http://www.apache.org/licenses/LICENSE-2.0.txt</url><distribution>repo</distribution></license></licenses><scm><url>https://github.com/Bandwidth/java-sdk</url><connection>scm:git:git@github.com:Bandwidth/java-sdk.git</connection><developerConnection>scm:git:git@github.com:Bandwidth/java-sdk.git</developerConnection></scm><developers><developer><id>support</id><name>Bandwidth Support</name><email>info@bandwidth.com</email><organization>Bandwidth, Inc.</organization><organizationUrl>http://bandwidth.com</organizationUrl><timezone>-5</timezone></developer></developers></project>

src/main/java/com/bandwidth/ApiHelper.java

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -220,8 +220,8 @@ public static <T extends Object> T deserialize(String json, TypeReference<T> typ
220220
* @param queryBuilder The query string builder to replace the template parameters
221221
* @param parameters The parameters to replace in the URL
222222
*/
223-
public static void appendUrlWithTemplateParameters(StringBuilder queryBuilder, Map<String, Object> parameters,
224-
boolean encode) {
223+
public static void appendUrlWithTemplateParameters(StringBuilder queryBuilder,
224+
Map<String, SimpleEntry<Object, Boolean>> parameters) {
225225
// Perform parameter validation
226226
if (null == queryBuilder) {
227227
throw new IllegalArgumentException("Given value for parameter \"queryBuilder\" is invalid." );
@@ -232,22 +232,24 @@ public static void appendUrlWithTemplateParameters(StringBuilder queryBuilder, M
232232
}
233233

234234
// Iterate and append parameters
235-
for (Map.Entry<String, Object> pair : parameters.entrySet()) {
235+
for (Map.Entry<String, SimpleEntry<Object, Boolean>> pair : parameters.entrySet()) {
236236

237237
String replaceValue = "";
238+
Object element = pair.getValue().getKey();
239+
boolean shouldEncode = pair.getValue().getValue();
238240

239241
// Load element value as string
240-
if (null == pair.getValue()) {
242+
if (null == element) {
241243
replaceValue = "";
242244
}
243-
else if (pair.getValue() instanceof Collection<?>) {
244-
replaceValue = flattenCollection("", (Collection<?>) pair.getValue(), "%s%s%s", '/');
245+
else if (element instanceof Collection<?>) {
246+
replaceValue = flattenCollection("", (Collection<?>) element, shouldEncode, "%s%s%s", '/');
245247
}
246248
else {
247-
if (encode) {
248-
replaceValue = tryUrlEncode(pair.getValue().toString());
249+
if (shouldEncode) {
250+
replaceValue = tryUrlEncode(element.toString());
249251
} else {
250-
replaceValue = pair.getValue().toString();
252+
replaceValue = element.toString();
251253
}
252254
}
253255

@@ -263,10 +265,10 @@ else if (pair.getValue() instanceof Collection<?>) {
263265
*/
264266
public static void appendUrlWithQueryParameters(StringBuilder queryBuilder, Map<String, Object> parameters) {
265267
// Perform parameter validation
266-
if (null == queryBuilder) {
268+
if (queryBuilder == null) {
267269
throw new IllegalArgumentException("Given value for parameter \"queryBuilder\" is invalid.");
268270
}
269-
if (null == parameters) {
271+
if (parameters == null || parameters.isEmpty()) {
270272
return;
271273
}
272274

@@ -409,7 +411,7 @@ private static void encodeObjectAsQueryString(String name, Object obj, StringBui
409411
* @param separator Separator to use for string concatenation
410412
* @return Representative string made up of array elements
411413
*/
412-
private static String flattenCollection(String elemName, Collection<?> array, String fmt, char separator) {
414+
private static String flattenCollection(String elemName, Collection<?> array, boolean encode, String fmt, char separator) {
413415
StringBuilder builder = new StringBuilder();
414416

415417
// Append all elements of the array into a string
@@ -422,7 +424,9 @@ private static String flattenCollection(String elemName, Collection<?> array, St
422424
} else {
423425
elemValue = element.toString();
424426
}
425-
elemValue = tryUrlEncode(elemValue);
427+
if (encode) {
428+
elemValue = tryUrlEncode(elemValue);
429+
}
426430
builder.append(String.format(fmt, elemName, elemValue, separator));
427431
}
428432

src/main/java/com/bandwidth/BandwidthClient.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,9 @@
55
*/
66
package com.bandwidth;
77

8-
import java.util.Map;
8+
import java.util.AbstractMap.SimpleEntry;
99
import java.util.HashMap;
10+
import java.util.Map;
1011

1112

1213
import com.bandwidth.http.client.HttpClient;
@@ -237,8 +238,8 @@ public Map<String, AuthManager> getAuthManagers() {
237238
*/
238239
public String getBaseUri(Server server) {
239240
StringBuilder baseUrl = new StringBuilder(environmentMapper(environment, server));
240-
Map<String, Object> parameters = new HashMap<>();
241-
ApiHelper.appendUrlWithTemplateParameters(baseUrl, parameters, false);
241+
Map<String, SimpleEntry<Object, Boolean>> parameters = new HashMap<>();
242+
ApiHelper.appendUrlWithTemplateParameters(baseUrl, parameters);
242243
return baseUrl.toString();
243244
}
244245

src/main/java/com/bandwidth/controllers/BaseController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public abstract class BaseController {
2929
* Protected variables to hold an instance of Configuration
3030
*/
3131
protected final Configuration config;
32-
protected static final String userAgent = "java-sdk-refs/tags/java3.5.0";
32+
protected static final String userAgent = "java-sdk-refs/tags/java3.6.0";
3333

3434

3535
protected Map<String, AuthManager> authManagers;

src/main/java/com/bandwidth/http/client/HttpClient.java

Lines changed: 21 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import java.io.IOException;
99
import java.util.AbstractMap.SimpleEntry;
1010
import java.util.List;
11+
import java.util.Map;
1112
import java.util.concurrent.CompletableFuture;
1213

1314
import com.bandwidth.http.Headers;
@@ -51,60 +52,60 @@ public interface HttpClient {
5152
/**
5253
* Create a simple HTTP GET request
5354
*/
54-
public HttpRequest get(String queryUrl,
55-
Headers headers, List<SimpleEntry<String, Object>> parameters);
55+
public HttpRequest get(StringBuilder queryUrlBuilder, Headers headers,
56+
Map<String, Object> queryParams, List<SimpleEntry<String, Object>> parameters);
5657

5758
/**
5859
* Create a simple HTTP HEAD request
5960
*/
60-
public HttpRequest head(String queryUrl,
61-
Headers headers, List<SimpleEntry<String, Object>> parameters);
61+
public HttpRequest head(StringBuilder queryUrlBuilder, Headers headers,
62+
Map<String, Object> queryParams, List<SimpleEntry<String, Object>> parameters);
6263

6364
/**
6465
* Create an HTTP POST request with parameters
6566
*/
66-
public HttpRequest post(String queryUrl,
67-
Headers headers, List<SimpleEntry<String, Object>> parameters);
67+
public HttpRequest post(StringBuilder queryUrlBuilder, Headers headers,
68+
Map<String, Object> queryParams, List<SimpleEntry<String, Object>> parameters);
6869

6970
/**
7071
* Create an HTTP POST request with body
7172
*/
72-
public HttpBodyRequest postBody(String queryUrl,
73-
Headers headers, Object body);
73+
public HttpBodyRequest postBody(StringBuilder queryUrlBuilder,
74+
Headers headers, Map<String, Object> queryParams, Object body);
7475

7576
/**
7677
* Create an HTTP PUT request with parameters
7778
*/
78-
public HttpRequest put(String queryUrl,
79-
Headers headers, List<SimpleEntry<String, Object>> parameters);
79+
public HttpRequest put(StringBuilder queryUrlBuilder, Headers headers,
80+
Map<String, Object> queryParams, List<SimpleEntry<String, Object>> parameters);
8081

8182
/**
8283
* Create an HTTP PUT request with body
8384
*/
84-
HttpBodyRequest putBody(String queryUrl,
85-
Headers headers, Object body);
85+
HttpBodyRequest putBody(StringBuilder queryUrlBuilder,
86+
Headers headers, Map<String, Object> queryParams, Object body);
8687

8788
/**
8889
* Create an HTTP PATCH request with parameters
8990
*/
90-
public HttpRequest patch(String queryUrl,
91-
Headers headers, List<SimpleEntry<String, Object>> parameters);
91+
public HttpRequest patch(StringBuilder queryUrlBuilder, Headers headers,
92+
Map<String, Object> queryParams, List<SimpleEntry<String, Object>> parameters);
9293

9394
/**
9495
* Create an HTTP PATCH request with body
9596
*/
96-
public HttpBodyRequest patchBody(String queryUrl,
97-
Headers headers, Object body);
97+
public HttpBodyRequest patchBody(StringBuilder queryUrlBuilder,
98+
Headers headers, Map<String, Object> queryParams, Object body);
9899

99100
/**
100101
* Create an HTTP DELETE request with parameters
101102
*/
102-
HttpRequest delete(String queryUrl,
103-
Headers headers, List<SimpleEntry<String, Object>> parameters);
103+
HttpRequest delete(StringBuilder queryUrlBuilder, Headers headers,
104+
Map<String, Object> queryParams, List<SimpleEntry<String, Object>> parameters);
104105

105106
/**
106107
* Create an HTTP DELETE request with body
107108
*/
108-
public HttpBodyRequest deleteBody(String queryUrl,
109-
Headers headers, Object body);
109+
public HttpBodyRequest deleteBody(StringBuilder queryUrlBuilder,
110+
Headers headers, Map<String, Object> queryParams, Object body);
110111
}

0 commit comments

Comments
 (0)