Skip to content
This repository was archived by the owner on Dec 25, 2024. It is now read-only.

Files

Latest commit

f4f07d9 · Apr 5, 2024

History

History
170 lines (141 loc) · 7.7 KB

File metadata and controls

170 lines (141 loc) · 7.7 KB

Post

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

Nested Class Summary

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

Post1

public static class Post1 extends ApiClient.ApiClient1 implements PostOperation

a class that allows one to call the endpoint using a method named post

Code Sample

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.commonparamsubdir.post.HeaderParameters;
import org.openapijsonschematools.client.RootServerInfo;
import org.openapijsonschematools.client.paths.commonparamsubdir.post.PathParameters;
import org.openapijsonschematools.client.servers.Server0;
import org.openapijsonschematools.client.servers.Server1;
import org.openapijsonschematools.client.servers.Server2;
import org.openapijsonschematools.client.paths.commonparamsubdir.post.responses.Code200Response;
import org.openapijsonschematools.client.paths.commonparamsubdir.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);


// Map validation
PathParameters.PathParametersMap pathParameters =
    PathParameters.PathParameters1.validate(
    new PathParameters.PathParametersMapBuilder()
        .subDir("a")

    .build(),
    schemaConfiguration
);

var request = new PostRequestBuilder()
    .pathParameters(pathParameters)
    .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;

Constructor Summary

Constructor and Description
Post1(ApiConfiguration apiConfiguration, SchemaConfiguration schemaConfiguration)
Creates an instance

Method Summary

Modifier and Type Method and Description
Responses.EndpointResponse post(PostRequest request)

PostRequest

public static class PostRequest

a class that stores the final request inputs

Field Summary

Modifier and Type Field and Description
PathParameters.PathParametersMap pathParameters
HeaderParameters.@Nullable HeaderParametersMap headerParameters
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

PostNullableRequest

public static class PostNullableRequest

a class that stores the initial request inputs

Field Summary

Modifier and Type Field and Description
PathParameters.@Nullable PathParametersMap pathParameters
HeaderParameters.@Nullable HeaderParametersMap headerParameters
RootServerInfo.@Nullable ServerIndex serverIndex
@Nullable Duration timeout

Post0RequestBuilder

public static class Post0RequestBuilder

a builder for request inputs

Constructor Summary

Constructor and Description
Post0RequestBuilder(Post0RequestBuilder instance)
Creates a builder that contains the passed instance

Method Summary

Modifier and Type Method and Description
PostRequest build()
Returns the request input used to call an endpoint method
Post0RequestBuilder headerParameters(HeaderParametersHeaderParametersMap headerParameters)
sets the optional property
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

PostRequestBuilder

public static class PostRequestBuilder

a builder for request inputs

Constructor Summary

Constructor and Description
PostRequestBuilder()
Creates a builder that contains null for all parameters

Method Summary

Modifier and Type Method and Description
Post0RequestBuilder pathParameters(PathParametersPathParametersMap pathParameters)
sets the property

[Back to top] [Back to README]