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 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 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.RootServerInfo;
import org.openapijsonschematools.client.paths.pet.post.PetPostSecurityInfo;
import org.openapijsonschematools.client.paths.pet.post.RequestBody;
import org.openapijsonschematools.client.components.schemas.Pet;
import org.openapijsonschematools.client.servers.Server0;
import org.openapijsonschematools.client.servers.Server1;
import org.openapijsonschematools.client.servers.Server2;
import org.openapijsonschematools.client.securityschemes.SecurityScheme;
import org.openapijsonschematools.client.components.securityschemes.ApiKey;
import org.openapijsonschematools.client.components.securityschemes.HttpSignatureTest;
import org.openapijsonschematools.client.components.securityschemes.PetstoreAuth;
import org.openapijsonschematools.client.paths.pet.post.responses.Code200Response;
import org.openapijsonschematools.client.paths.pet.post.responses.Code405Response;
import org.openapijsonschematools.client.paths.pet.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);
List<SecurityScheme> securitySchemes = new ArrayList();
securitySchemes.add(
new ApiKey("someApiKey");
);
ApiConfiguration.SecurityIndexInfo securityIndexInfo = new ApiConfiguration.SecurityIndexInfo();
.petPostSecurityInfoSecurityIndex(PetPostSecurityInfo.SecurityIndex.SECURITY_0);
Duration timeout = Duration.ofSeconds(1L);
ApiConfiguration apiConfiguration = new ApiConfiguration(
serverInfo
serverIndexInfo,
securitySchemes,
securityIndexInfo,
timeout
);
SchemaConfiguration schemaConfiguration = new SchemaConfiguration(JsonSchemaKeywordFlags.ofNone());
Post.Post1 apiClient = new Post.Post1(apiConfiguration, schemaConfiguration);
Pet1BoxedMap requestBodyPayload =
Pet.Pet1.validateAndBox(
new Pet.PetMapBuilder()
.name("a")
.photoUrls(
Arrays.asList(
"a"
)
)
.id(1L)
.category(
MapUtils.makeMap(
new AbstractMap.SimpleEntry<String, Object>(
"name",
"a"
),
new AbstractMap.SimpleEntry<String, Object>(
"id",
1L
)
)
)
.tags(
Arrays.asList(
MapUtils.makeMap(
new AbstractMap.SimpleEntry<String, String>(
"name",
"a"
)
)
)
)
.status("available")
.build(),
schemaConfiguration
);
RequestBody.SealedRequestBody requestBody = new RequestBody.ApplicationjsonRequestBody(requestBodyPayload);
var request = new PostRequestBuilder()
.requestBody(requestBody)
.build();
Responses.EndpointResponse response;
try {
response = apiClient.post(request);
} catch (Code405Response.ResponseApiException e) {
// server returned an error response defined in the openapi document
throw e;
} 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;
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.SealedRequestBody | requestBody |
RootServerInfo.@Nullable ServerIndex | serverIndex optional. Note: this will override the value in apiConfiguration |
PetPostSecurityInfo.@Nullable SecurityIndex | securityIndex 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 |
---|---|
RequestBody.@Nullable SealedRequestBody | requestBody |
RootServerInfo.@Nullable ServerIndex | serverIndex |
PetPostSecurityInfo.@Nullable SecurityIndex | securityIndex |
@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 | securityIndex(PetPostSecurityInfo.SecurityIndex securityIndex) 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(RequestBody.SealedRequestBody requestBody) sets the property |