public class UserPost
A class that contains necessary endpoint classes
- a class that calls the endpoint method using the http verb
- a class that calls the endpoint method using the operationId name
- class(es) to store the request inputs
- builder(s) to set the request input data
Modifier and Type | Class and Description |
---|---|
static class | Post The class that has a post method to call the endpoint |
interface | CreateUserOperation The interface that has a createUser method to call the endpoint |
static class | PostRequest The final request inputs class |
static class | PostNullableRequest The initial request inputs class |
static class | Post0RequestBuilder A builder for the request input class |
static class | PostRequestBuilder A builder for the request input class |
public static class Post extends ApiClient.ApiClient1 implements PostOperation
a class that allows one to call the endpoint using a method named post
import org.openapijsonschematools.client.configurations.ApiConfiguration;
import org.openapijsonschematools.client.configurations.SchemaConfiguration;
import org.openapijsonschematools.client.configurations.JsonSchemaKeywordFlags;
import org.openapijsonschematools.client.exceptions.ValidationException;
import org.openapijsonschematools.client.exceptions.NotImplementedException;
import org.openapijsonschematools.client.exceptions.ApiException;
import org.openapijsonschematools.client.schemas.validation.MapUtils;
import org.openapijsonschematools.client.schemas.validation.FrozenList;
import org.openapijsonschematools.client.schemas.validation.FrozenMap;
import org.openapijsonschematools.client.RootServerInfo;
import org.openapijsonschematools.client.paths.user.post.UserPostRequestBody;
import org.openapijsonschematools.client.components.schemas.User;
import org.openapijsonschematools.client.servers.RootServer0;
import org.openapijsonschematools.client.servers.RootServer1;
import org.openapijsonschematools.client.servers.RootServer2;
import org.openapijsonschematools.client.paths.user.post.responses.UserPostCodedefaultResponse;
import org.openapijsonschematools.client.servers.RootServerInfo;
import org.openapijsonschematools.client.paths.user.UserPost;
import org.openapijsonschematools.client.paths.user.post.UserPostResponses;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.AbstractMap;
// if you want to use a server that is not SERVER_0 pass it in here and change the ServerIndex input below
ApiConfiguration.ServerInfo serverInfo = new ApiConfiguration.ServerInfoBuilder()
.rootServerInfo(
new RootServerInfo.RootServerInfoBuilder()
.rootServer0(new RootServer0())
.build()
)
.build();
ApiConfiguration.ServerIndexInfo serverIndexInfo = new ApiConfiguration.ServerIndexInfoBuilder()
.rootServerInfoServerIndex(RootServerInfo.ServerIndex.SERVER_0)
.build();
Duration timeout = Duration.ofSeconds(1L);
Map<String, List<String>> defaultHeaders = Map.of("User-Agent", List.of("OpenAPI-JSON-Schema-Generator/1.0.0/java"));
ApiConfiguration apiConfiguration = new ApiConfiguration(
serverInfo
serverIndexInfo,
timeout,
defaultHeaders
);
SchemaConfiguration schemaConfiguration = new SchemaConfiguration(new JsonSchemaKeywordFlags.Builder().build());
UserPost.Post apiClient = new UserPost.Post(apiConfiguration, schemaConfiguration);
User1BoxedMap requestBodyPayload =
User.User1.validateAndBox(
new User.UserMapBuilder()
.id(1L)
.username("a")
.firstName("a")
.lastName("a")
.email("a")
.password("a")
.phone("a")
.userStatus(1)
.objectWithNoDeclaredPropsNullable(null)
.build(),
schemaConfiguration
);
UserPost.SealedRequestBody requestBody = new UserPost.ApplicationjsonRequestBody(requestBodyPayload);
var request = new UserPost.PostRequestBuilder()
.requestBody(requestBody)
.build();
UserPostResponses.EndpointResponse response;
try {
response = apiClient.post(request);
} catch (ApiException e) {
// server returned a response/contentType not defined in the openapi document
throw e;
} catch (ValidationException e) {
// the returned response body or header values do not conform the the schema validation requirements
throw e;
} catch (IOException | InterruptedException e) {
// an exception happened when making the request
throw e;
} catch (NotImplementedException e) {
// the request body serialization or deserialization has not yet been implemented
// or the header content type deserialization has not yet been implemented for this contentType
throw e;
}
UserPostResponses.EndpointUserPostCodedefaultResponse castResponse = (UserPostResponses.EndpointUserPostCodedefaultResponse) response;
Constructor and Description |
---|
Post(ApiConfiguration apiConfiguration, SchemaConfiguration schemaConfiguration) Creates an instance |
Modifier and Type | Method and Description |
---|---|
UserPostResponses.EndpointResponse | post(PostRequest request) |
public interface CreateUserOperation
an interface that allows one to call the endpoint using a method named createUser by the operationId
Modifier and Type | Method and Description |
---|---|
UserPostResponses.EndpointResponse | createUser(PostRequest request) |
public static class PostRequest
a class that stores the final request inputs
Modifier and Type | Field and Description |
---|---|
UserPostRequestBody.SealedRequestBody | requestBody |
RootServerInfo.@Nullable ServerIndex | serverIndex optional. Note: this will override the value in apiConfiguration |
@Nullable Duration | timeout optional. Note: this will override the value in apiConfiguration |
public static class PostNullableRequest
a class that stores the initial request inputs
Modifier and Type | Field and Description |
---|---|
UserPostRequestBody.@Nullable SealedRequestBody | requestBody |
RootServerInfo.@Nullable ServerIndex | serverIndex |
@Nullable Duration | timeout |
public static class Post0RequestBuilder
a builder for request inputs
Constructor and Description |
---|
Post0RequestBuilder(Post0RequestBuilder instance) Creates a builder that contains the passed instance |
Modifier and Type | Method and Description |
---|---|
PostRequest | build() Returns the request input used to call an endpoint method |
Post0RequestBuilder | serverIndex(RootServerInfo.ServerIndex serverIndex) sets the optional property. Note: this will override the value in apiConfiguration |
Post0RequestBuilder | timeout(Duration timeout) sets the optional property. Note: this will override the value in apiConfiguration |
public static class PostRequestBuilder
a builder for request inputs
Constructor and Description |
---|
PostRequestBuilder() Creates a builder that contains null for all parameters |
Modifier and Type | Method and Description |
---|---|
Post0RequestBuilder | requestBody(UserPostRequestBody.SealedRequestBody requestBody) sets the property |