diff --git a/.fernignore b/.fernignore index e0ea883..d19619c 100644 --- a/.fernignore +++ b/.fernignore @@ -7,8 +7,8 @@ src/main/java/com/squidex/api/core/ClientOptions.java src/main/java/com/squidex/api/AccessToken.java src/main/java/com/squidex/api/AuthInterceptor.java src/main/java/com/squidex/api/InMemoryTokenStore.java -src/main/java/com/squidex/api/SquidexApiClient.java -src/main/java/com/squidex/api/SquidexApiClientBuilder.java +src/main/java/com/squidex/api/SquidexClient.java +src/main/java/com/squidex/api/SquidexClientBuilder.java src/main/java/com/squidex/api/TokenStore.java # Workflows diff --git a/README.md b/README.md index 94a734d..8f42d50 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ The Squidex Java SDK provides convenient access to the Squidex API from Java. ## Documentation -API reference documentation is available [here](https://cloud.squidex.io/api/docs). +API reference documentation is available [here](https://docs.squidex.io/02-documentation/software-development-kits/java). ## Installation @@ -17,7 +17,7 @@ Add the dependency in your `build.gradle`: ```groovy dependencies { - implementation 'io.squidex:squidex:0.x.x' + implementation 'io.squidex:squidex:1.0.0' } ``` @@ -29,17 +29,18 @@ Add the dependency in your `pom.xml`: io.squidex squidex - 0.x.x + 1.0.0 ``` ## Usage ```java -SquidexApiClient squidex = SquidexApiClient.builder() - .token("YOUR_OAUTH_TOKEN") - .url("https://your.squidex-deployment") +SquidexClient squidex = SquidexClient.builder() .appName("my-app") + .clientId("your-app:default") + .clientSecret("xxx") + .url("https://your.squidex-deployment") .build(); RulesDto rules = squidex.rules().getRules(); @@ -48,16 +49,10 @@ System.out.println("Received response from Squidex: " + rules); ``` ## Staged Builders + The generated builders all follow the staged builder pattern. Read more [here](https://immutables.github.io/immutable.html#staged-builder). Staged builders only allow you to build the object once all required properties have been specified. -## Beta status - -This SDK is in beta, and there may be breaking changes between versions without a major version update. -Therefore, we recommend pinning the package version to a specific version in your build.gradle file. -This way, you can install the same version each time without breaking changes unless you are intentionally -looking for the latest version. - ## Contributing While we value open-source contributions to this SDK, this library is generated programmatically. diff --git a/src/main/java/com/squidex/api/SquidexApiClient.java b/src/main/java/com/squidex/api/SquidexClient.java similarity index 97% rename from src/main/java/com/squidex/api/SquidexApiClient.java rename to src/main/java/com/squidex/api/SquidexClient.java index 45d20ba..ff0a458 100644 --- a/src/main/java/com/squidex/api/SquidexApiClient.java +++ b/src/main/java/com/squidex/api/SquidexClient.java @@ -26,7 +26,7 @@ import com.squidex.api.resources.users.UsersClient; import java.util.function.Supplier; -public class SquidexApiClient { +public class SquidexClient { protected final ClientOptions clientOptions; protected final Supplier userManagementClient; @@ -73,7 +73,7 @@ public class SquidexApiClient { protected final Supplier appsClient; - public SquidexApiClient(ClientOptions clientOptions) { + public SquidexClient(ClientOptions clientOptions) { this.clientOptions = clientOptions; this.userManagementClient = Suppliers.memoize(() -> new UserManagementClient(clientOptions)); this.usersClient = Suppliers.memoize(() -> new UsersClient(clientOptions)); @@ -187,7 +187,7 @@ public AppsClient apps() { return this.appsClient.get(); } - public static SquidexApiClientBuilder builder() { - return new SquidexApiClientBuilder(); + public static SquidexClientBuilder builder() { + return new SquidexClientBuilder(); } } diff --git a/src/main/java/com/squidex/api/SquidexApiClientBuilder.java b/src/main/java/com/squidex/api/SquidexClientBuilder.java similarity index 82% rename from src/main/java/com/squidex/api/SquidexApiClientBuilder.java rename to src/main/java/com/squidex/api/SquidexClientBuilder.java index 6d4bced..bff83c6 100644 --- a/src/main/java/com/squidex/api/SquidexApiClientBuilder.java +++ b/src/main/java/com/squidex/api/SquidexClientBuilder.java @@ -8,7 +8,7 @@ import java.security.KeyManagementException; import java.security.NoSuchAlgorithmException; -public final class SquidexApiClientBuilder { +public final class SquidexClientBuilder { private final ClientOptions.Builder clientOptionsBuilder = ClientOptions.builder(); private Environment environment = Environment.DEFAULT; @@ -18,17 +18,17 @@ public final class SquidexApiClientBuilder { private OkHttpClient httpClient; private boolean trustAllCerts; - public SquidexApiClientBuilder environment(Environment environment) { + public SquidexClientBuilder environment(Environment environment) { this.environment = environment; return this; } - public SquidexApiClientBuilder url(String url) { + public SquidexClientBuilder url(String url) { this.environment = Environment.custom(url); return this; } - public SquidexApiClientBuilder clientId(String clientId) { + public SquidexClientBuilder clientId(String clientId) { this.clientId = clientId; return this; } @@ -37,7 +37,7 @@ public String clientId() { return this.clientId; } - public SquidexApiClientBuilder clientSecret(String clientSecret) { + public SquidexClientBuilder clientSecret(String clientSecret) { this.clientSecret = clientSecret; return this; } @@ -46,27 +46,27 @@ public String clientSecret() { return this.clientSecret; } - public SquidexApiClientBuilder tokenStore(TokenStore tokenStore) { + public SquidexClientBuilder tokenStore(TokenStore tokenStore) { this.tokenStore = tokenStore; return this; } - public SquidexApiClientBuilder httpClient(OkHttpClient httpClient) { + public SquidexClientBuilder httpClient(OkHttpClient httpClient) { this.httpClient = httpClient; return this; } - public SquidexApiClientBuilder appName(String appName) { + public SquidexClientBuilder appName(String appName) { this.clientOptionsBuilder.appName(appName); return this; } - public SquidexApiClientBuilder trustAllCerts() { + public SquidexClientBuilder trustAllCerts() { this.trustAllCerts = true; return this; } - public SquidexApiClient build() { + public SquidexClient build() { clientOptionsBuilder.environment(this.environment); if (this.tokenStore == null) { @@ -118,6 +118,6 @@ public java.security.cert.X509Certificate[] getAcceptedIssuers() { clientOptionsBuilder.httpClient(this.httpClient); - return new SquidexApiClient(clientOptionsBuilder.build()); + return new SquidexClient(clientOptionsBuilder.build()); } } diff --git a/src/test/java/com/squidex/api/AssetsTests.java b/src/test/java/com/squidex/api/AssetsTests.java index 7f95c8d..0293d0d 100644 --- a/src/test/java/com/squidex/api/AssetsTests.java +++ b/src/test/java/com/squidex/api/AssetsTests.java @@ -15,7 +15,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; public class AssetsTests extends TestBase { - private static final SquidexApiClient client = Utils.getClient().client(); + private static final SquidexClient client = Utils.getClient().client(); @Test public void Should_upload_and_fetch_asset() { diff --git a/src/test/java/com/squidex/api/ClientProvider.java b/src/test/java/com/squidex/api/ClientProvider.java index 0836755..e2742f9 100644 --- a/src/test/java/com/squidex/api/ClientProvider.java +++ b/src/test/java/com/squidex/api/ClientProvider.java @@ -1,23 +1,23 @@ package com.squidex.api; public final class ClientProvider { - private final SquidexApiClientBuilder builder; - private final SquidexApiClient client; + private final SquidexClientBuilder builder; + private final SquidexClient client; - public ClientProvider(SquidexApiClientBuilder builder, SquidexApiClient client) { + public ClientProvider(SquidexClientBuilder builder, SquidexClient client) { this.builder = builder; this.client = client; } - public SquidexApiClient client(String appName) { + public SquidexClient client(String appName) { return this.builder.appName(appName).build(); } - public SquidexApiClient client() { + public SquidexClient client() { return client; } - public SquidexApiClientBuilder builder() { + public SquidexClientBuilder builder() { return builder; } } diff --git a/src/test/java/com/squidex/api/ContentsTests.java b/src/test/java/com/squidex/api/ContentsTests.java index 2df289e..e2b6d21 100644 --- a/src/test/java/com/squidex/api/ContentsTests.java +++ b/src/test/java/com/squidex/api/ContentsTests.java @@ -17,7 +17,7 @@ @SuppressWarnings("unchecked") public class ContentsTests extends TestBase { - private static final SquidexApiClient client = Utils.getClient().client(); + private static final SquidexClient client = Utils.getClient().client(); private static SchemaDto schema; @BeforeAll diff --git a/src/test/java/com/squidex/api/SchemasTests.java b/src/test/java/com/squidex/api/SchemasTests.java index 4ea5244..0003eb0 100644 --- a/src/test/java/com/squidex/api/SchemasTests.java +++ b/src/test/java/com/squidex/api/SchemasTests.java @@ -10,7 +10,7 @@ import static org.junit.jupiter.api.Assertions.*; public class SchemasTests extends TestBase { - private static final SquidexApiClient client = Utils.getClient().client(); + private static final SquidexClient client = Utils.getClient().client(); @Test public void should_create_and_fetch_schema() { diff --git a/src/test/java/com/squidex/api/UserManagementTests.java b/src/test/java/com/squidex/api/UserManagementTests.java index d7a1366..ba3b42b 100644 --- a/src/test/java/com/squidex/api/UserManagementTests.java +++ b/src/test/java/com/squidex/api/UserManagementTests.java @@ -9,7 +9,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; public class UserManagementTests extends TestBase { - private static final SquidexApiClient client = Utils.getClient().client(); + private static final SquidexClient client = Utils.getClient().client(); @Test() public void Should_create_and_fetch_user() { diff --git a/src/test/java/com/squidex/api/Utils.java b/src/test/java/com/squidex/api/Utils.java index 8443630..c0d4ad3 100644 --- a/src/test/java/com/squidex/api/Utils.java +++ b/src/test/java/com/squidex/api/Utils.java @@ -32,7 +32,7 @@ public static ClientProvider getClient() { environment = "https://localhost:5001"; } - SquidexApiClientBuilder builder = SquidexApiClient.builder() + SquidexClientBuilder builder = SquidexClient.builder() .trustAllCerts() .appName(appName) .clientId(clientId)