Skip to content

Commit

Permalink
Update docs and client.
Browse files Browse the repository at this point in the history
  • Loading branch information
SebastianStehle committed Oct 10, 2023
1 parent 1aea71d commit cb7fab2
Show file tree
Hide file tree
Showing 10 changed files with 36 additions and 41 deletions.
4 changes: 2 additions & 2 deletions .fernignore
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
21 changes: 8 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand All @@ -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'
}
```

Expand All @@ -29,17 +29,18 @@ Add the dependency in your `pom.xml`:
<dependency>
<groupId>io.squidex</groupId>
<artifactId>squidex</artifactId>
<version>0.x.x</version>
<version>1.0.0</version>
</dependency>
```

## 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();
Expand All @@ -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.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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> userManagementClient;
Expand Down Expand Up @@ -73,7 +73,7 @@ public class SquidexApiClient {

protected final Supplier<AppsClient> 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));
Expand Down Expand Up @@ -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();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand All @@ -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;
}
Expand All @@ -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;
}
Expand All @@ -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) {
Expand Down Expand Up @@ -118,6 +118,6 @@ public java.security.cert.X509Certificate[] getAcceptedIssuers() {

clientOptionsBuilder.httpClient(this.httpClient);

return new SquidexApiClient(clientOptionsBuilder.build());
return new SquidexClient(clientOptionsBuilder.build());
}
}
2 changes: 1 addition & 1 deletion src/test/java/com/squidex/api/AssetsTests.java
Original file line number Diff line number Diff line change
Expand Up @@ -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() {
Expand Down
12 changes: 6 additions & 6 deletions src/test/java/com/squidex/api/ClientProvider.java
Original file line number Diff line number Diff line change
@@ -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;
}
}
2 changes: 1 addition & 1 deletion src/test/java/com/squidex/api/ContentsTests.java
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion src/test/java/com/squidex/api/SchemasTests.java
Original file line number Diff line number Diff line change
Expand Up @@ -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() {
Expand Down
2 changes: 1 addition & 1 deletion src/test/java/com/squidex/api/UserManagementTests.java
Original file line number Diff line number Diff line change
Expand Up @@ -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() {
Expand Down
2 changes: 1 addition & 1 deletion src/test/java/com/squidex/api/Utils.java
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down

0 comments on commit cb7fab2

Please sign in to comment.