464 lines
18 KiB
Java
464 lines
18 KiB
Java
/**
|
|
* Auto-generated from apibuilder.io service spec.
|
|
* apidoc-version : 0.15.4
|
|
* organisation : nclazz
|
|
* service-version : 0.0.0-dev-30-gbd50cdf-bd9390b2-staging
|
|
*
|
|
* Documentation at:
|
|
* <a href="https://app.apibuilder.io/nclazz/users/0.0.0-dev-30-gbd50cdf-bd9390b2-staging">https://app.apibuilder.io/nclazz/users/0.0.0-dev-30-gbd50cdf-bd9390b2-staging</a>
|
|
*
|
|
**/
|
|
package de.nclazz.users.v0.client;
|
|
|
|
import de.nclazz.users.v0.client.UsersApiClientConfig;
|
|
import de.nclazz.users.v0.models.*;
|
|
|
|
import de.nclazz.users.v0.models.UserForm;
|
|
import de.nclazz.users.v0.models.UserStatusForm;
|
|
import de.nclazz.users.v0.models.User;
|
|
import java.util.List;
|
|
import de.nclazz.errors.v0.models.GenericError;
|
|
import de.nclazz.users.v0.models.UserStatus;
|
|
|
|
import lombok.*;
|
|
|
|
import javax.ws.rs.client.Entity;
|
|
import javax.ws.rs.client.WebTarget;
|
|
import javax.ws.rs.core.*;
|
|
import java.net.URI;
|
|
|
|
|
|
/**
|
|
* Client for API resource de.nclazz.users.v0.UsersResource
|
|
* version 0.0.0-dev-30-gbd50cdf-bd9390b2-staging
|
|
*
|
|
* Access to the user management.
|
|
**/
|
|
@RequiredArgsConstructor
|
|
public class UsersResource {
|
|
|
|
private final UsersApiClientConfig config;
|
|
|
|
/** Get all users. **/
|
|
public Get get () {
|
|
return new Get(this.config);
|
|
}
|
|
/** Get a user for given id. **/
|
|
public GetById getById () {
|
|
return new GetById(this.config);
|
|
}
|
|
/** Create a new user. **/
|
|
public PostUserForm postUserForm () {
|
|
return new PostUserForm(this.config);
|
|
}
|
|
/** Update user data. **/
|
|
public PutUserFormById putUserFormById () {
|
|
return new PutUserFormById(this.config);
|
|
}
|
|
/** Update the status of the user. **/
|
|
public PutUserStatusFormById putUserStatusFormById () {
|
|
return new PutUserStatusFormById(this.config);
|
|
}
|
|
/** Mark a user as deleted. The user cannot be accessed by the api, but will stay in the db for a while, before completely removed. **/
|
|
public DeleteById deleteById () {
|
|
return new DeleteById(this.config);
|
|
}
|
|
|
|
/**
|
|
* Get all users.
|
|
**/
|
|
public static class Get {
|
|
|
|
private final UsersApiClientConfig config;
|
|
@NonNull private String xAuthorization_header ;
|
|
private String xAgent_header ;
|
|
@Builder.Default private Integer limit_query = 200;
|
|
|
|
public Get(@NonNull final UsersApiClientConfig config) {
|
|
this.config = config;
|
|
}
|
|
|
|
public GetResponse request() {
|
|
// /users/
|
|
final URI uri = UriBuilder.fromUri(this.config.getBaseUrl())
|
|
.path("users")
|
|
.queryParam("limit", this.limit_query)
|
|
.build();
|
|
|
|
WebTarget target = config.getClient().target(uri);
|
|
Response response = target.request(MediaType.APPLICATION_JSON)
|
|
.header("x-authorization", this.xAuthorization_header)
|
|
.header("x-agent", this.xAgent_header)
|
|
.method("GET");
|
|
int status = response.getStatus();
|
|
switch(status) {
|
|
case 200:
|
|
List<User> user200Resp = response.readEntity(new GenericType<List<User>>() {});
|
|
|
|
return GetResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.user200(user200Resp)
|
|
.build();
|
|
case 401:
|
|
return GetResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
default:
|
|
return GetResponse.builder()
|
|
.status(status)
|
|
.unexpected(response.readEntity(String.class))
|
|
.build();
|
|
}
|
|
}
|
|
|
|
public Get xAuthorization(String xAuthorization) {
|
|
this.xAuthorization_header = xAuthorization;
|
|
return this;
|
|
}
|
|
public Get xAgent(String xAgent) {
|
|
this.xAgent_header = xAgent;
|
|
return this;
|
|
}
|
|
public Get limit(Integer limit) {
|
|
this.limit_query = limit;
|
|
return this;
|
|
}
|
|
|
|
@Builder
|
|
@Data
|
|
public static class GetResponse {
|
|
private List<User> user200;
|
|
|
|
private final int status;
|
|
private final MultivaluedMap<String, Object> headers;
|
|
private final String unexpected;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Get a user for given id.
|
|
**/
|
|
public static class GetById {
|
|
|
|
private final UsersApiClientConfig config;
|
|
|
|
public GetById(@NonNull final UsersApiClientConfig config) {
|
|
this.config = config;
|
|
}
|
|
|
|
public GetByIdResponse request(@NonNull String id) {
|
|
// /users/:id
|
|
final URI uri = UriBuilder.fromUri(this.config.getBaseUrl())
|
|
.path("users")
|
|
.path(id.toString())
|
|
.build();
|
|
|
|
WebTarget target = config.getClient().target(uri);
|
|
Response response = target.request(MediaType.APPLICATION_JSON)
|
|
.method("GET");
|
|
int status = response.getStatus();
|
|
switch(status) {
|
|
case 200:
|
|
|
|
User user200Resp = response.readEntity(User.class);
|
|
return GetByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.user200(user200Resp)
|
|
.build();
|
|
case 404:
|
|
return GetByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
case 401:
|
|
return GetByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
default:
|
|
return GetByIdResponse.builder()
|
|
.status(status)
|
|
.unexpected(response.readEntity(String.class))
|
|
.build();
|
|
}
|
|
}
|
|
|
|
|
|
@Builder
|
|
@Data
|
|
public static class GetByIdResponse {
|
|
private User user200;
|
|
|
|
private final int status;
|
|
private final MultivaluedMap<String, Object> headers;
|
|
private final String unexpected;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Create a new user.
|
|
**/
|
|
public static class PostUserForm {
|
|
|
|
private final UsersApiClientConfig config;
|
|
|
|
public PostUserForm(@NonNull final UsersApiClientConfig config) {
|
|
this.config = config;
|
|
}
|
|
|
|
public PostUserFormResponse request(@NonNull UserForm userForm) {
|
|
// /users/
|
|
final URI uri = UriBuilder.fromUri(this.config.getBaseUrl())
|
|
.path("users")
|
|
.build();
|
|
|
|
WebTarget target = config.getClient().target(uri);
|
|
Response response = target.request(MediaType.APPLICATION_JSON)
|
|
.method("POST", Entity.json(userForm));
|
|
int status = response.getStatus();
|
|
switch(status) {
|
|
case 201:
|
|
|
|
User user201Resp = response.readEntity(User.class);
|
|
return PostUserFormResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.user201(user201Resp)
|
|
.build();
|
|
case 400:
|
|
List<GenericError> genericError400Resp = response.readEntity(new GenericType<List<GenericError>>() {});
|
|
|
|
return PostUserFormResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.genericError400(genericError400Resp)
|
|
.build();
|
|
case 401:
|
|
return PostUserFormResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
default:
|
|
return PostUserFormResponse.builder()
|
|
.status(status)
|
|
.unexpected(response.readEntity(String.class))
|
|
.build();
|
|
}
|
|
}
|
|
|
|
|
|
@Builder
|
|
@Data
|
|
public static class PostUserFormResponse {
|
|
private User user201;
|
|
private List<GenericError> genericError400;
|
|
|
|
private final int status;
|
|
private final MultivaluedMap<String, Object> headers;
|
|
private final String unexpected;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Update user data.
|
|
**/
|
|
public static class PutUserFormById {
|
|
|
|
private final UsersApiClientConfig config;
|
|
|
|
public PutUserFormById(@NonNull final UsersApiClientConfig config) {
|
|
this.config = config;
|
|
}
|
|
|
|
public PutUserFormByIdResponse request(@NonNull String id, @NonNull UserForm userForm) {
|
|
// /users/:id
|
|
final URI uri = UriBuilder.fromUri(this.config.getBaseUrl())
|
|
.path("users")
|
|
.path(id.toString())
|
|
.build();
|
|
|
|
WebTarget target = config.getClient().target(uri);
|
|
Response response = target.request(MediaType.APPLICATION_JSON)
|
|
.method("PUT", Entity.json(userForm));
|
|
int status = response.getStatus();
|
|
switch(status) {
|
|
case 200:
|
|
|
|
User user200Resp = response.readEntity(User.class);
|
|
return PutUserFormByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.user200(user200Resp)
|
|
.build();
|
|
case 400:
|
|
List<GenericError> genericError400Resp = response.readEntity(new GenericType<List<GenericError>>() {});
|
|
|
|
return PutUserFormByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.genericError400(genericError400Resp)
|
|
.build();
|
|
case 401:
|
|
return PutUserFormByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
case 404:
|
|
return PutUserFormByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
default:
|
|
return PutUserFormByIdResponse.builder()
|
|
.status(status)
|
|
.unexpected(response.readEntity(String.class))
|
|
.build();
|
|
}
|
|
}
|
|
|
|
|
|
@Builder
|
|
@Data
|
|
public static class PutUserFormByIdResponse {
|
|
private User user200;
|
|
private List<GenericError> genericError400;
|
|
|
|
private final int status;
|
|
private final MultivaluedMap<String, Object> headers;
|
|
private final String unexpected;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Update the status of the user.
|
|
**/
|
|
public static class PutUserStatusFormById {
|
|
|
|
private final UsersApiClientConfig config;
|
|
|
|
public PutUserStatusFormById(@NonNull final UsersApiClientConfig config) {
|
|
this.config = config;
|
|
}
|
|
|
|
public PutUserStatusFormByIdResponse request(@NonNull String id, @NonNull UserStatusForm userStatusForm) {
|
|
// /users/:id/status
|
|
final URI uri = UriBuilder.fromUri(this.config.getBaseUrl())
|
|
.path("users")
|
|
.path(id.toString())
|
|
.path("status")
|
|
.build();
|
|
|
|
WebTarget target = config.getClient().target(uri);
|
|
Response response = target.request(MediaType.APPLICATION_JSON)
|
|
.method("PUT", Entity.json(userStatusForm));
|
|
int status = response.getStatus();
|
|
switch(status) {
|
|
case 200:
|
|
|
|
UserStatus userStatus200Resp = response.readEntity(UserStatus.class);
|
|
return PutUserStatusFormByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.userStatus200(userStatus200Resp)
|
|
.build();
|
|
case 400:
|
|
List<GenericError> genericError400Resp = response.readEntity(new GenericType<List<GenericError>>() {});
|
|
|
|
return PutUserStatusFormByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.genericError400(genericError400Resp)
|
|
.build();
|
|
case 401:
|
|
return PutUserStatusFormByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
case 404:
|
|
return PutUserStatusFormByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
default:
|
|
return PutUserStatusFormByIdResponse.builder()
|
|
.status(status)
|
|
.unexpected(response.readEntity(String.class))
|
|
.build();
|
|
}
|
|
}
|
|
|
|
|
|
@Builder
|
|
@Data
|
|
public static class PutUserStatusFormByIdResponse {
|
|
private UserStatus userStatus200;
|
|
private List<GenericError> genericError400;
|
|
|
|
private final int status;
|
|
private final MultivaluedMap<String, Object> headers;
|
|
private final String unexpected;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Mark a user as deleted. The user cannot be accessed by the api, but will stay in the db for a while, before completely removed.
|
|
**/
|
|
public static class DeleteById {
|
|
|
|
private final UsersApiClientConfig config;
|
|
|
|
public DeleteById(@NonNull final UsersApiClientConfig config) {
|
|
this.config = config;
|
|
}
|
|
|
|
public DeleteByIdResponse request(@NonNull String id) {
|
|
// /users/:id
|
|
final URI uri = UriBuilder.fromUri(this.config.getBaseUrl())
|
|
.path("users")
|
|
.path(id.toString())
|
|
.build();
|
|
|
|
WebTarget target = config.getClient().target(uri);
|
|
Response response = target.request(MediaType.APPLICATION_JSON)
|
|
.method("DELETE");
|
|
int status = response.getStatus();
|
|
switch(status) {
|
|
case 200:
|
|
return DeleteByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
case 401:
|
|
return DeleteByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
case 404:
|
|
return DeleteByIdResponse.builder()
|
|
.status(status)
|
|
.headers(response.getHeaders())
|
|
.build();
|
|
default:
|
|
return DeleteByIdResponse.builder()
|
|
.status(status)
|
|
.unexpected(response.readEntity(String.class))
|
|
.build();
|
|
}
|
|
}
|
|
|
|
|
|
@Builder
|
|
@Data
|
|
public static class DeleteByIdResponse {
|
|
|
|
private final int status;
|
|
private final MultivaluedMap<String, Object> headers;
|
|
private final String unexpected;
|
|
}
|
|
}
|
|
|
|
|
|
} |