software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProject Maven / Gradle / Ivy
Show all versions of open-api-gateway Show documentation
package software.aws.awsprototypingsdk.openapigateway;
/**
* (deprecated) Synthesizes a Python Project with a Smithy model, generated clients, a CDK construct for deploying the API with API Gateway, and generated lambda handler wrappers for type-safe handling of requests.
*
* @deprecated Please use TypeSafeApiProject instead. This will be removed in the PDK GA 1.0 release.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.82.0 (build 2d2ddd7)", date = "2023-08-15T05:38:04.738Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
@software.amazon.jsii.Jsii(module = software.aws.awsprototypingsdk.openapigateway.$Module.class, fqn = "@aws-prototyping-sdk/open-api-gateway.SmithyApiGatewayPythonProject")
public class SmithyApiGatewayPythonProject extends software.aws.awsprototypingsdk.openapigateway.OpenApiGatewayPythonProject {
protected SmithyApiGatewayPythonProject(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected SmithyApiGatewayPythonProject(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
/**
* @param options This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public SmithyApiGatewayPythonProject(final @org.jetbrains.annotations.NotNull software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProjectOptions options) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(options, "options is required") });
}
/**
* (deprecated) This method provides inheritors a chance to synthesize extra resources prior to those created by this project.
*
* Return any options you wish to change, other than python project options.
*
* @param options This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
@Override
protected @org.jetbrains.annotations.NotNull software.aws.awsprototypingsdk.openapigateway.OpenApiGatewayPythonProjectOptions preConstruct(final @org.jetbrains.annotations.NotNull software.aws.awsprototypingsdk.openapigateway.OpenApiGatewayPythonProjectOptions options) {
return software.amazon.jsii.Kernel.call(this, "preConstruct", software.amazon.jsii.NativeType.forClass(software.aws.awsprototypingsdk.openapigateway.OpenApiGatewayPythonProjectOptions.class), new Object[] { java.util.Objects.requireNonNull(options, "options is required") });
}
/**
* (deprecated) A fluent builder for {@link software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProject}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public static final class Builder implements software.amazon.jsii.Builder {
/**
* @return a new instance of {@link Builder}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public static Builder create() {
return new Builder();
}
private final software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProjectOptions.Builder options;
private Builder() {
this.options = new software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProjectOptions.Builder();
}
/**
* (experimental) This is the name of your project.
*
* Default: $BASEDIR
*
* @return {@code this}
* @param name This is the name of your project. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder name(final java.lang.String name) {
this.options.name(name);
return this;
}
/**
* (experimental) Whether to commit the managed files by default.
*
* Default: true
*
* @return {@code this}
* @param commitGenerated Whether to commit the managed files by default. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder commitGenerated(final java.lang.Boolean commitGenerated) {
this.options.commitGenerated(commitGenerated);
return this;
}
/**
* (experimental) Configuration options for .gitignore file.
*
* @return {@code this}
* @param gitIgnoreOptions Configuration options for .gitignore file. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder gitIgnoreOptions(final io.github.cdklabs.projen.IgnoreFileOptions gitIgnoreOptions) {
this.options.gitIgnoreOptions(gitIgnoreOptions);
return this;
}
/**
* (experimental) Configuration options for git.
*
* @return {@code this}
* @param gitOptions Configuration options for git. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder gitOptions(final io.github.cdklabs.projen.GitOptions gitOptions) {
this.options.gitOptions(gitOptions);
return this;
}
/**
* (experimental) Configure logging options such as verbosity.
*
* Default: {}
*
* @return {@code this}
* @param logging Configure logging options such as verbosity. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder logging(final io.github.cdklabs.projen.LoggerOptions logging) {
this.options.logging(logging);
return this;
}
/**
* (experimental) The root directory of the project.
*
* Relative to this directory, all files are synthesized.
*
* If this project has a parent, this directory is relative to the parent
* directory and it cannot be the same as the parent or any of it's other
* sub-projects.
*
* Default: "."
*
* @return {@code this}
* @param outdir The root directory of the project. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder outdir(final java.lang.String outdir) {
this.options.outdir(outdir);
return this;
}
/**
* (experimental) The parent project, if this project is part of a bigger project.
*
* @return {@code this}
* @param parent The parent project, if this project is part of a bigger project. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder parent(final io.github.cdklabs.projen.Project parent) {
this.options.parent(parent);
return this;
}
/**
* (experimental) The shell command to use in order to run the projen CLI.
*
* Can be used to customize in special environments.
*
* Default: "npx projen"
*
* @return {@code this}
* @param projenCommand The shell command to use in order to run the projen CLI. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenCommand(final java.lang.String projenCommand) {
this.options.projenCommand(projenCommand);
return this;
}
/**
* (experimental) Generate (once) .projenrc.json (in JSON). Set to false
in order to disable .projenrc.json generation.
*
* Default: false
*
* @return {@code this}
* @param projenrcJson Generate (once) .projenrc.json (in JSON). Set to false
in order to disable .projenrc.json generation. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcJson(final java.lang.Boolean projenrcJson) {
this.options.projenrcJson(projenrcJson);
return this;
}
/**
* (experimental) Options for .projenrc.json.
*
* Default: - default options
*
* @return {@code this}
* @param projenrcJsonOptions Options for .projenrc.json. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcJsonOptions(final io.github.cdklabs.projen.ProjenrcJsonOptions projenrcJsonOptions) {
this.options.projenrcJsonOptions(projenrcJsonOptions);
return this;
}
/**
* (experimental) Use renovatebot to handle dependency upgrades.
*
* Default: false
*
* @return {@code this}
* @param renovatebot Use renovatebot to handle dependency upgrades. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder renovatebot(final java.lang.Boolean renovatebot) {
this.options.renovatebot(renovatebot);
return this;
}
/**
* (experimental) Options for renovatebot.
*
* Default: - default options
*
* @return {@code this}
* @param renovatebotOptions Options for renovatebot. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder renovatebotOptions(final io.github.cdklabs.projen.RenovatebotOptions renovatebotOptions) {
this.options.renovatebotOptions(renovatebotOptions);
return this;
}
/**
* (experimental) Enable and configure the 'auto approve' workflow.
*
* Default: - auto approve is disabled
*
* @return {@code this}
* @param autoApproveOptions Enable and configure the 'auto approve' workflow. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder autoApproveOptions(final io.github.cdklabs.projen.github.AutoApproveOptions autoApproveOptions) {
this.options.autoApproveOptions(autoApproveOptions);
return this;
}
/**
* (experimental) Enable automatic merging on GitHub.
*
* Has no effect if github.mergify
* is set to false.
*
* Default: true
*
* @return {@code this}
* @param autoMerge Enable automatic merging on GitHub. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder autoMerge(final java.lang.Boolean autoMerge) {
this.options.autoMerge(autoMerge);
return this;
}
/**
* (experimental) Configure options for automatic merging on GitHub.
*
* Has no effect if
* github.mergify
or autoMerge
is set to false.
*
* Default: - see defaults in `AutoMergeOptions`
*
* @return {@code this}
* @param autoMergeOptions Configure options for automatic merging on GitHub. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder autoMergeOptions(final io.github.cdklabs.projen.github.AutoMergeOptions autoMergeOptions) {
this.options.autoMergeOptions(autoMergeOptions);
return this;
}
/**
* (experimental) Add a clobber
task which resets the repo to origin.
*
* Default: - true, but false for subprojects
*
* @return {@code this}
* @param clobber Add a clobber
task which resets the repo to origin. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder clobber(final java.lang.Boolean clobber) {
this.options.clobber(clobber);
return this;
}
/**
* (experimental) Add a VSCode development environment (used for GitHub Codespaces).
*
* Default: false
*
* @return {@code this}
* @param devContainer Add a VSCode development environment (used for GitHub Codespaces). This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder devContainer(final java.lang.Boolean devContainer) {
this.options.devContainer(devContainer);
return this;
}
/**
* (experimental) Enable GitHub integration.
*
* Enabled by default for root projects. Disabled for non-root projects.
*
* Default: true
*
* @return {@code this}
* @param github Enable GitHub integration. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder github(final java.lang.Boolean github) {
this.options.github(github);
return this;
}
/**
* (experimental) Options for GitHub integration.
*
* Default: - see GitHubOptions
*
* @return {@code this}
* @param githubOptions Options for GitHub integration. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder githubOptions(final io.github.cdklabs.projen.github.GitHubOptions githubOptions) {
this.options.githubOptions(githubOptions);
return this;
}
/**
* (experimental) Add a Gitpod development environment.
*
* Default: false
*
* @return {@code this}
* @param gitpod Add a Gitpod development environment. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder gitpod(final java.lang.Boolean gitpod) {
this.options.gitpod(gitpod);
return this;
}
/**
* (deprecated) Whether mergify should be enabled on this repository or not.
*
* Default: true
*
* @return {@code this}
* @deprecated use githubOptions.mergify
instead
* @param mergify Whether mergify should be enabled on this repository or not. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder mergify(final java.lang.Boolean mergify) {
this.options.mergify(mergify);
return this;
}
/**
* (deprecated) Options for mergify.
*
* Default: - default options
*
* @return {@code this}
* @deprecated use githubOptions.mergifyOptions
instead
* @param mergifyOptions Options for mergify. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder mergifyOptions(final io.github.cdklabs.projen.github.MergifyOptions mergifyOptions) {
this.options.mergifyOptions(mergifyOptions);
return this;
}
/**
* (deprecated) Which type of project this is (library/app).
*
* Default: ProjectType.UNKNOWN
*
* @return {@code this}
* @deprecated no longer supported at the base project level
* @param projectType Which type of project this is (library/app). This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder projectType(final io.github.cdklabs.projen.ProjectType projectType) {
this.options.projectType(projectType);
return this;
}
/**
* (experimental) Choose a method of providing GitHub API access for projen workflows.
*
* Default: - use a personal access token named PROJEN_GITHUB_TOKEN
*
* @return {@code this}
* @param projenCredentials Choose a method of providing GitHub API access for projen workflows. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenCredentials(final io.github.cdklabs.projen.github.GithubCredentials projenCredentials) {
this.options.projenCredentials(projenCredentials);
return this;
}
/**
* (deprecated) The name of a secret which includes a GitHub Personal Access Token to be used by projen workflows.
*
* This token needs to have the repo
, workflows
* and packages
scope.
*
* Default: "PROJEN_GITHUB_TOKEN"
*
* @return {@code this}
* @deprecated use projenCredentials
* @param projenTokenSecret The name of a secret which includes a GitHub Personal Access Token to be used by projen workflows. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder projenTokenSecret(final java.lang.String projenTokenSecret) {
this.options.projenTokenSecret(projenTokenSecret);
return this;
}
/**
* (experimental) The README setup.
*
* Default: - { filename: 'README.md', contents: '# replace this' }
*
* Example:
*
*
* "{ filename: 'readme.md', contents: '# title' }"
*
*
* @return {@code this}
* @param readme The README setup. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder readme(final io.github.cdklabs.projen.SampleReadmeProps readme) {
this.options.readme(readme);
return this;
}
/**
* (experimental) Auto-close of stale issues and pull request.
*
* See staleOptions
for options.
*
* Default: false
*
* @return {@code this}
* @param stale Auto-close of stale issues and pull request. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder stale(final java.lang.Boolean stale) {
this.options.stale(stale);
return this;
}
/**
* (experimental) Auto-close stale issues and pull requests.
*
* To disable set stale
to false
.
*
* Default: - see defaults in `StaleOptions`
*
* @return {@code this}
* @param staleOptions Auto-close stale issues and pull requests. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder staleOptions(final io.github.cdklabs.projen.github.StaleOptions staleOptions) {
this.options.staleOptions(staleOptions);
return this;
}
/**
* (experimental) Enable VSCode integration.
*
* Enabled by default for root projects. Disabled for non-root projects.
*
* Default: true
*
* @return {@code this}
* @param vscode Enable VSCode integration. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder vscode(final java.lang.Boolean vscode) {
this.options.vscode(vscode);
return this;
}
/**
* (experimental) Author's e-mail.
*
* Default: $GIT_USER_EMAIL
*
* @return {@code this}
* @param authorEmail Author's e-mail. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder authorEmail(final java.lang.String authorEmail) {
this.options.authorEmail(authorEmail);
return this;
}
/**
* (experimental) Author's name.
*
* Default: $GIT_USER_NAME
*
* @return {@code this}
* @param authorName Author's name. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder authorName(final java.lang.String authorName) {
this.options.authorName(authorName);
return this;
}
/**
* (experimental) Version of the package.
*
* Default: "0.1.0"
*
* @return {@code this}
* @param version Version of the package. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder version(final java.lang.String version) {
this.options.version(version);
return this;
}
/**
* (experimental) A list of PyPI trove classifiers that describe the project.
*
* @return {@code this}
* @see https://pypi.org/classifiers/
* @param classifiers A list of PyPI trove classifiers that describe the project. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder classifiers(final java.util.List classifiers) {
this.options.classifiers(classifiers);
return this;
}
/**
* (experimental) A short description of the package.
*
* @return {@code this}
* @param description A short description of the package. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder description(final java.lang.String description) {
this.options.description(description);
return this;
}
/**
* (experimental) A URL to the website of the project.
*
* @return {@code this}
* @param homepage A URL to the website of the project. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder homepage(final java.lang.String homepage) {
this.options.homepage(homepage);
return this;
}
/**
* (experimental) License of this package as an SPDX identifier.
*
* @return {@code this}
* @param license License of this package as an SPDX identifier. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder license(final java.lang.String license) {
this.options.license(license);
return this;
}
/**
* (experimental) Package name.
*
* @return {@code this}
* @param packageName Package name. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder packageName(final java.lang.String packageName) {
this.options.packageName(packageName);
return this;
}
/**
* (experimental) Additional options to set for poetry if using poetry.
*
* @return {@code this}
* @param poetryOptions Additional options to set for poetry if using poetry. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder poetryOptions(final io.github.cdklabs.projen.python.PoetryPyprojectOptionsWithoutDeps poetryOptions) {
this.options.poetryOptions(poetryOptions);
return this;
}
/**
* (experimental) Additional fields to pass in the setup() function if using setuptools.
*
* @return {@code this}
* @param setupConfig Additional fields to pass in the setup() function if using setuptools. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder setupConfig(final java.util.Map setupConfig) {
this.options.setupConfig(setupConfig);
return this;
}
/**
* (experimental) Name of the python package as used in imports and filenames.
*
* Must only consist of alphanumeric characters and underscores.
*
* Default: $PYTHON_MODULE_NAME
*
* @return {@code this}
* @param moduleName Name of the python package as used in imports and filenames. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder moduleName(final java.lang.String moduleName) {
this.options.moduleName(moduleName);
return this;
}
/**
* (experimental) List of runtime dependencies for this project.
*
* Dependencies use the format: <module>@<semver>
*
* Additional dependencies can be added via project.addDependency()
.
*
* Default: []
*
* @return {@code this}
* @param deps List of runtime dependencies for this project. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder deps(final java.util.List deps) {
this.options.deps(deps);
return this;
}
/**
* (experimental) List of dev dependencies for this project.
*
* Dependencies use the format: <module>@<semver>
*
* Additional dependencies can be added via project.addDevDependency()
.
*
* Default: []
*
* @return {@code this}
* @param devDeps List of dev dependencies for this project. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder devDeps(final java.util.List devDeps) {
this.options.devDeps(devDeps);
return this;
}
/**
* (experimental) Use pip with a requirements.txt file to track project dependencies.
*
* Default: - true, unless poetry is true, then false
*
* @return {@code this}
* @param pip Use pip with a requirements.txt file to track project dependencies. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pip(final java.lang.Boolean pip) {
this.options.pip(pip);
return this;
}
/**
* (experimental) Use poetry to manage your project dependencies, virtual environment, and (optional) packaging/publishing.
*
* This feature is incompatible with pip, setuptools, or venv.
* If you set this option to true
, then pip, setuptools, and venv must be set to false
.
*
* Default: false
*
* @return {@code this}
* @param poetry Use poetry to manage your project dependencies, virtual environment, and (optional) packaging/publishing. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder poetry(final java.lang.Boolean poetry) {
this.options.poetry(poetry);
return this;
}
/**
* (experimental) Use projenrc in javascript.
*
* This will install projen
as a JavaScript dependency and add a synth
* task which will run .projenrc.js
.
*
* Default: false
*
* @return {@code this}
* @param projenrcJs Use projenrc in javascript. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcJs(final java.lang.Boolean projenrcJs) {
this.options.projenrcJs(projenrcJs);
return this;
}
/**
* (experimental) Options related to projenrc in JavaScript.
*
* Default: - default options
*
* @return {@code this}
* @param projenrcJsOptions Options related to projenrc in JavaScript. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcJsOptions(final io.github.cdklabs.projen.javascript.ProjenrcOptions projenrcJsOptions) {
this.options.projenrcJsOptions(projenrcJsOptions);
return this;
}
/**
* (experimental) Use projenrc in Python.
*
* This will install projen
as a Python dependency and add a synth
* task which will run .projenrc.py
.
*
* Default: true
*
* @return {@code this}
* @param projenrcPython Use projenrc in Python. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcPython(final java.lang.Boolean projenrcPython) {
this.options.projenrcPython(projenrcPython);
return this;
}
/**
* (experimental) Options related to projenrc in python.
*
* Default: - default options
*
* @return {@code this}
* @param projenrcPythonOptions Options related to projenrc in python. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcPythonOptions(final io.github.cdklabs.projen.python.ProjenrcOptions projenrcPythonOptions) {
this.options.projenrcPythonOptions(projenrcPythonOptions);
return this;
}
/**
* (experimental) Use projenrc in TypeScript.
*
* This will create a tsconfig file (default: tsconfig.projen.json
)
* and use ts-node
in the default task to parse the project source files.
*
* Default: false
*
* @return {@code this}
* @param projenrcTs Use projenrc in TypeScript. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcTs(final java.lang.Boolean projenrcTs) {
this.options.projenrcTs(projenrcTs);
return this;
}
/**
* (experimental) Options related to projenrc in TypeScript.
*
* Default: - default options
*
* @return {@code this}
* @param projenrcTsOptions Options related to projenrc in TypeScript. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcTsOptions(final io.github.cdklabs.projen.typescript.ProjenrcTsOptions projenrcTsOptions) {
this.options.projenrcTsOptions(projenrcTsOptions);
return this;
}
/**
* (experimental) Include pytest tests.
*
* Default: true
*
* @return {@code this}
* @param pytest Include pytest tests. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pytest(final java.lang.Boolean pytest) {
this.options.pytest(pytest);
return this;
}
/**
* (experimental) pytest options.
*
* Default: - defaults
*
* @return {@code this}
* @param pytestOptions pytest options. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pytestOptions(final io.github.cdklabs.projen.python.PytestOptions pytestOptions) {
this.options.pytestOptions(pytestOptions);
return this;
}
/**
* (experimental) Path to the python executable to use.
*
* Default: "python"
*
* @return {@code this}
* @param pythonExec Path to the python executable to use. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pythonExec(final java.lang.String pythonExec) {
this.options.pythonExec(pythonExec);
return this;
}
/**
* (experimental) Include sample code and test if the relevant directories don't exist.
*
* Default: true
*
* @return {@code this}
* @param sample Include sample code and test if the relevant directories don't exist. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder sample(final java.lang.Boolean sample) {
this.options.sample(sample);
return this;
}
/**
* (experimental) Use setuptools with a setup.py script for packaging and publishing.
*
* Default: - true, unless poetry is true, then false
*
* @return {@code this}
* @param setuptools Use setuptools with a setup.py script for packaging and publishing. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder setuptools(final java.lang.Boolean setuptools) {
this.options.setuptools(setuptools);
return this;
}
/**
* (experimental) Use venv to manage a virtual environment for installing dependencies inside.
*
* Default: - true, unless poetry is true, then false
*
* @return {@code this}
* @param venv Use venv to manage a virtual environment for installing dependencies inside. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder venv(final java.lang.Boolean venv) {
this.options.venv(venv);
return this;
}
/**
* (experimental) Venv options.
*
* Default: - defaults
*
* @return {@code this}
* @param venvOptions Venv options. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder venvOptions(final io.github.cdklabs.projen.python.VenvOptions venvOptions) {
this.options.venvOptions(venvOptions);
return this;
}
/**
* (experimental) The list of languages for which clients will be generated.
*
* A typescript client will always be generated.
*
* @return {@code this}
* @param clientLanguages The list of languages for which clients will be generated. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder clientLanguages(final java.util.List extends software.aws.awsprototypingsdk.openapigateway.ClientLanguage> clientLanguages) {
this.options.clientLanguages(clientLanguages);
return this;
}
/**
* (experimental) The directory in which the api generated code will reside, relative to the project srcdir.
*
* @return {@code this}
* @param apiSrcDir The directory in which the api generated code will reside, relative to the project srcdir. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder apiSrcDir(final java.lang.String apiSrcDir) {
this.options.apiSrcDir(apiSrcDir);
return this;
}
/**
* (experimental) Formats to generate documentation in.
*
* @return {@code this}
* @param documentationFormats Formats to generate documentation in. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder documentationFormats(final java.util.List extends software.aws.awsprototypingsdk.openapigateway.DocumentationFormat> documentationFormats) {
this.options.documentationFormats(documentationFormats);
return this;
}
/**
* (experimental) Force to generate code and docs even if there were no changes in spec.
*
* Default: "false"
*
* @return {@code this}
* @param forceGenerateCodeAndDocs Force to generate code and docs even if there were no changes in spec. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder forceGenerateCodeAndDocs(final java.lang.Boolean forceGenerateCodeAndDocs) {
this.options.forceGenerateCodeAndDocs(forceGenerateCodeAndDocs);
return this;
}
/**
* (experimental) The directory in which generated client code will be generated, relative to the outdir of this project.
*
* Default: "generated"
*
* @return {@code this}
* @param generatedCodeDir The directory in which generated client code will be generated, relative to the outdir of this project. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder generatedCodeDir(final java.lang.String generatedCodeDir) {
this.options.generatedCodeDir(generatedCodeDir);
return this;
}
/**
* (experimental) Options for the generated java client (if specified in clientLanguages).
*
* These override the default inferred options.
*
* @return {@code this}
* @param javaClientOptions Options for the generated java client (if specified in clientLanguages). This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder javaClientOptions(final io.github.cdklabs.projen.java.JavaProjectOptions javaClientOptions) {
this.options.javaClientOptions(javaClientOptions);
return this;
}
/**
* (experimental) The name of the output parsed OpenAPI specification file.
*
* Must end with .json.
*
* Default: ".parsed-spec.json"
*
* @return {@code this}
* @param parsedSpecFileName The name of the output parsed OpenAPI specification file. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder parsedSpecFileName(final java.lang.String parsedSpecFileName) {
this.options.parsedSpecFileName(parsedSpecFileName);
return this;
}
/**
* (experimental) Options for the generated python client (if specified in clientLanguages).
*
* These override the default inferred options.
*
* @return {@code this}
* @param pythonClientOptions Options for the generated python client (if specified in clientLanguages). This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pythonClientOptions(final io.github.cdklabs.projen.python.PythonProjectOptions pythonClientOptions) {
this.options.pythonClientOptions(pythonClientOptions);
return this;
}
/**
* (experimental) Options for the generated typescript client.
*
* These override the default inferred options.
*
* @return {@code this}
* @param typescriptClientOptions Options for the generated typescript client. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder typescriptClientOptions(final io.github.cdklabs.projen.typescript.TypeScriptProjectOptions typescriptClientOptions) {
this.options.typescriptClientOptions(typescriptClientOptions);
return this;
}
/**
* (experimental) The name of the Smithy service from your model which will be targeted for deployment and client generation.
*
* On initial project synthesis this service name will be written to the sample "hello world" model. If you change
* this value after initial synthesis you will need to manually update your Smithy models to match, unless you delete
* the "model" directory. Likewise, if you change the namespace or service name in your Smithy models you will need to
* update this value to ensure your service can be found.
*
* Default: "example.hello#Hello"
*
* @return {@code this}
* @param serviceName The name of the Smithy service from your model which will be targeted for deployment and client generation. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder serviceName(final software.aws.awsprototypingsdk.openapigateway.SmithyServiceName serviceName) {
this.options.serviceName(serviceName);
return this;
}
/**
* (experimental) Set to false if you would like to check in your gradle wrapper.
*
* Do so if you would like to use a different version
* of gradle to the one provided by default
*
* Default: true
*
* @return {@code this}
* @param ignoreGradleWrapper Set to false if you would like to check in your gradle wrapper. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder ignoreGradleWrapper(final java.lang.Boolean ignoreGradleWrapper) {
this.options.ignoreGradleWrapper(ignoreGradleWrapper);
return this;
}
/**
* (experimental) Set to false if you would like to check in your smithy build output or have more fine-grained control over what is checked in, eg if you add other projections to the smithy-build.json file.
*
* Default: true
*
* @return {@code this}
* @param ignoreSmithyBuildOutput Set to false if you would like to check in your smithy build output or have more fine-grained control over what is checked in, eg if you add other projections to the smithy-build.json file. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder ignoreSmithyBuildOutput(final java.lang.Boolean ignoreSmithyBuildOutput) {
this.options.ignoreSmithyBuildOutput(ignoreSmithyBuildOutput);
return this;
}
/**
* (experimental) The path to the Smithy model directory, relative to the project source directory (srcdir).
*
* Default: "model"
*
* @return {@code this}
* @param modelDir The path to the Smithy model directory, relative to the project source directory (srcdir). This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder modelDir(final java.lang.String modelDir) {
this.options.modelDir(modelDir);
return this;
}
/**
* (experimental) Any additional properties you'd like to add your smithy-build.json. The smithy-build.json will automatically include the "openapi" plugin, but you can add extra configuration for that via this option if you like.
*
* @return {@code this}
* @see https://awslabs.github.io/smithy/2.0/guides/converting-to-openapi.html#openapi-configuration-settings
* @param smithyBuildOptions Any additional properties you'd like to add your smithy-build.json. The smithy-build.json will automatically include the "openapi" plugin, but you can add extra configuration for that via this option if you like. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder smithyBuildOptions(final software.aws.awsprototypingsdk.openapigateway.SmithyBuildOptions smithyBuildOptions) {
this.options.smithyBuildOptions(smithyBuildOptions);
return this;
}
/**
* @return a newly built instance of {@link software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProject}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
@Override
public software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProject build() {
return new software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProject(
this.options.build()
);
}
}
}