public class Post
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 | Post1 The class that has a post method to call the endpoint |
static class | PostRequest The request inputs class |
static class | PostRequestBuilder A builder for the request input class |
public static class Post1 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.paths.fakerefsobjectmodelwithrefprops.post.RequestBody;
import org.openapijsonschematools.client.components.schemas.ObjectModelWithRefProps;
import org.openapijsonschematools.client.RootServerInfo;
import org.openapijsonschematools.client.servers.Server0;
import org.openapijsonschematools.client.servers.Server1;
import org.openapijsonschematools.client.servers.Server2;
import org.openapijsonschematools.client.paths.fakerefsobjectmodelwithrefprops.post.responses.Code200Response;
import org.openapijsonschematools.client.paths.fakerefsobjectmodelwithrefprops.Post;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import java.util.AbstractMap;
// if you want to use a sever that is not SERVER_0 pass it in here and change the ServerIndex input below
ApiConfiguration.ServerInfo serverInfo = new ApiConfiguration.ServerInfo(
new Server0(),
null,
null
);
ApiConfiguration.ServerIndexInfo serverIndexInfo = new ApiConfiguration.ServerIndexInfo()
.rootServerInfoServerIndex(RootServerInfo.ServerIndex.SERVER_0);
Duration timeout = Duration.ofSeconds(1L);
ApiConfiguration apiConfiguration = new ApiConfiguration(
serverInfo
serverIndexInfo,
timeout
);
SchemaConfiguration schemaConfiguration = new SchemaConfiguration(JsonSchemaKeywordFlags.ofNone());
Post.Post1 apiClient = new Post.Post1(apiConfiguration, schemaConfiguration);
var request = new PostRequestBuilder().build();
Responses.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;
}
Responses.EndpointCode200Response castResponse = (Responses.EndpointCode200Response) response;
Code200Response.ApplicationjsonResponseBody deserializedBody = (Code200Response.ApplicationjsonResponseBody) castResponse.body;
// handle deserialized body here
Constructor and Description |
---|
Post1(ApiConfiguration apiConfiguration, SchemaConfiguration schemaConfiguration) Creates an instance |
Modifier and Type | Method and Description |
---|---|
Responses.EndpointResponse | post(PostRequest request) |
public static class PostRequest
a class that stores the final request inputs
Modifier and Type | Field and Description |
---|---|
RequestBody.@Nullable SealedRequestBody | requestBody optional |
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 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 |
---|---|
PostRequest | build() Returns the request input used to call an endpoint method |
PostRequestBuilder | requestBody(RequestBody.SealedRequestBody requestBody) sets the optional property |
PostRequestBuilder | serverIndex(RootServerInfo.ServerIndex serverIndex) sets the optional property. Note: this will override the value in apiConfiguration |
PostRequestBuilder | timeout(Duration timeout) sets the optional property. Note: this will override the value in apiConfiguration |