software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayPythonProjectOptions Maven / Gradle / Ivy
Show all versions of open-api-gateway Show documentation
package software.aws.awsprototypingsdk.openapigateway;
/**
* (experimental) Configuration for the SmithyApiGatewayPythonProject.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.82.0 (build 2d2ddd7)", date = "2023-08-15T05:38:04.749Z")
@software.amazon.jsii.Jsii(module = software.aws.awsprototypingsdk.openapigateway.$Module.class, fqn = "@aws-prototyping-sdk/open-api-gateway.SmithyApiGatewayPythonProjectOptions")
@software.amazon.jsii.Jsii.Proxy(SmithyApiGatewayPythonProjectOptions.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public interface SmithyApiGatewayPythonProjectOptions extends software.amazon.jsii.JsiiSerializable, io.github.cdklabs.projen.python.PythonProjectOptions, software.aws.awsprototypingsdk.openapigateway.SmithyApiGatewayProjectOptions {
/**
* @return a {@link Builder} of {@link SmithyApiGatewayPythonProjectOptions}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link SmithyApiGatewayPythonProjectOptions}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.String moduleName;
java.util.List deps;
java.util.List devDeps;
java.lang.Boolean pip;
java.lang.Boolean poetry;
java.lang.Boolean projenrcJs;
io.github.cdklabs.projen.javascript.ProjenrcOptions projenrcJsOptions;
java.lang.Boolean projenrcPython;
io.github.cdklabs.projen.python.ProjenrcOptions projenrcPythonOptions;
java.lang.Boolean projenrcTs;
io.github.cdklabs.projen.typescript.ProjenrcTsOptions projenrcTsOptions;
java.lang.Boolean pytest;
io.github.cdklabs.projen.python.PytestOptions pytestOptions;
java.lang.String pythonExec;
java.lang.Boolean sample;
java.lang.Boolean setuptools;
java.lang.Boolean venv;
io.github.cdklabs.projen.python.VenvOptions venvOptions;
io.github.cdklabs.projen.github.AutoApproveOptions autoApproveOptions;
java.lang.Boolean autoMerge;
io.github.cdklabs.projen.github.AutoMergeOptions autoMergeOptions;
java.lang.Boolean clobber;
java.lang.Boolean devContainer;
java.lang.Boolean github;
io.github.cdklabs.projen.github.GitHubOptions githubOptions;
java.lang.Boolean gitpod;
java.lang.Boolean mergify;
io.github.cdklabs.projen.github.MergifyOptions mergifyOptions;
io.github.cdklabs.projen.ProjectType projectType;
io.github.cdklabs.projen.github.GithubCredentials projenCredentials;
java.lang.String projenTokenSecret;
io.github.cdklabs.projen.SampleReadmeProps readme;
java.lang.Boolean stale;
io.github.cdklabs.projen.github.StaleOptions staleOptions;
java.lang.Boolean vscode;
java.lang.String name;
java.lang.Boolean commitGenerated;
io.github.cdklabs.projen.IgnoreFileOptions gitIgnoreOptions;
io.github.cdklabs.projen.GitOptions gitOptions;
io.github.cdklabs.projen.LoggerOptions logging;
java.lang.String outdir;
io.github.cdklabs.projen.Project parent;
java.lang.String projenCommand;
java.lang.Boolean projenrcJson;
io.github.cdklabs.projen.ProjenrcJsonOptions projenrcJsonOptions;
java.lang.Boolean renovatebot;
io.github.cdklabs.projen.RenovatebotOptions renovatebotOptions;
java.lang.String authorEmail;
java.lang.String authorName;
java.lang.String version;
java.util.List classifiers;
java.lang.String description;
java.lang.String homepage;
java.lang.String license;
java.lang.String packageName;
io.github.cdklabs.projen.python.PoetryPyprojectOptionsWithoutDeps poetryOptions;
java.util.Map setupConfig;
software.aws.awsprototypingsdk.openapigateway.SmithyServiceName serviceName;
java.lang.Boolean ignoreGradleWrapper;
java.lang.Boolean ignoreSmithyBuildOutput;
java.lang.String modelDir;
software.aws.awsprototypingsdk.openapigateway.SmithyBuildOptions smithyBuildOptions;
java.util.List clientLanguages;
java.lang.String apiSrcDir;
java.util.List documentationFormats;
java.lang.Boolean forceGenerateCodeAndDocs;
java.lang.String generatedCodeDir;
io.github.cdklabs.projen.java.JavaProjectOptions javaClientOptions;
java.lang.String parsedSpecFileName;
io.github.cdklabs.projen.python.PythonProjectOptions pythonClientOptions;
io.github.cdklabs.projen.typescript.TypeScriptProjectOptions typescriptClientOptions;
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getModuleName}
* @param moduleName Name of the python package as used in imports and filenames. This parameter is required.
* Must only consist of alphanumeric characters and underscores.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder moduleName(java.lang.String moduleName) {
this.moduleName = moduleName;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getDeps}
* @param deps List of runtime dependencies for this project.
* Dependencies use the format: <module>@<semver>
*
* Additional dependencies can be added via project.addDependency()
.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder deps(java.util.List deps) {
this.deps = deps;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getDevDeps}
* @param devDeps List of dev dependencies for this project.
* Dependencies use the format: <module>@<semver>
*
* Additional dependencies can be added via project.addDevDependency()
.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder devDeps(java.util.List devDeps) {
this.devDeps = devDeps;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getPip}
* @param pip Use pip with a requirements.txt file to track project dependencies.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pip(java.lang.Boolean pip) {
this.pip = pip;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getPoetry}
* @param poetry 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
.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder poetry(java.lang.Boolean poetry) {
this.poetry = poetry;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenrcJs}
* @param projenrcJs Use projenrc in javascript.
* This will install projen
as a JavaScript dependency and add a synth
* task which will run .projenrc.js
.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcJs(java.lang.Boolean projenrcJs) {
this.projenrcJs = projenrcJs;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenrcJsOptions}
* @param projenrcJsOptions Options related to projenrc in JavaScript.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcJsOptions(io.github.cdklabs.projen.javascript.ProjenrcOptions projenrcJsOptions) {
this.projenrcJsOptions = projenrcJsOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenrcPython}
* @param projenrcPython Use projenrc in Python.
* This will install projen
as a Python dependency and add a synth
* task which will run .projenrc.py
.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcPython(java.lang.Boolean projenrcPython) {
this.projenrcPython = projenrcPython;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenrcPythonOptions}
* @param projenrcPythonOptions Options related to projenrc in python.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcPythonOptions(io.github.cdklabs.projen.python.ProjenrcOptions projenrcPythonOptions) {
this.projenrcPythonOptions = projenrcPythonOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenrcTs}
* @param projenrcTs 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.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcTs(java.lang.Boolean projenrcTs) {
this.projenrcTs = projenrcTs;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenrcTsOptions}
* @param projenrcTsOptions Options related to projenrc in TypeScript.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcTsOptions(io.github.cdklabs.projen.typescript.ProjenrcTsOptions projenrcTsOptions) {
this.projenrcTsOptions = projenrcTsOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getPytest}
* @param pytest Include pytest tests.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pytest(java.lang.Boolean pytest) {
this.pytest = pytest;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getPytestOptions}
* @param pytestOptions pytest options.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pytestOptions(io.github.cdklabs.projen.python.PytestOptions pytestOptions) {
this.pytestOptions = pytestOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getPythonExec}
* @param pythonExec Path to the python executable to use.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pythonExec(java.lang.String pythonExec) {
this.pythonExec = pythonExec;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getSample}
* @param sample Include sample code and test if the relevant directories don't exist.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder sample(java.lang.Boolean sample) {
this.sample = sample;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getSetuptools}
* @param setuptools Use setuptools with a setup.py script for packaging and publishing.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder setuptools(java.lang.Boolean setuptools) {
this.setuptools = setuptools;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getVenv}
* @param venv Use venv to manage a virtual environment for installing dependencies inside.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder venv(java.lang.Boolean venv) {
this.venv = venv;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getVenvOptions}
* @param venvOptions Venv options.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder venvOptions(io.github.cdklabs.projen.python.VenvOptions venvOptions) {
this.venvOptions = venvOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getAutoApproveOptions}
* @param autoApproveOptions Enable and configure the 'auto approve' workflow.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder autoApproveOptions(io.github.cdklabs.projen.github.AutoApproveOptions autoApproveOptions) {
this.autoApproveOptions = autoApproveOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getAutoMerge}
* @param autoMerge Enable automatic merging on GitHub.
* Has no effect if github.mergify
* is set to false.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder autoMerge(java.lang.Boolean autoMerge) {
this.autoMerge = autoMerge;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getAutoMergeOptions}
* @param autoMergeOptions Configure options for automatic merging on GitHub.
* Has no effect if
* github.mergify
or autoMerge
is set to false.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder autoMergeOptions(io.github.cdklabs.projen.github.AutoMergeOptions autoMergeOptions) {
this.autoMergeOptions = autoMergeOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getClobber}
* @param clobber Add a clobber
task which resets the repo to origin.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder clobber(java.lang.Boolean clobber) {
this.clobber = clobber;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getDevContainer}
* @param devContainer Add a VSCode development environment (used for GitHub Codespaces).
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder devContainer(java.lang.Boolean devContainer) {
this.devContainer = devContainer;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getGithub}
* @param github Enable GitHub integration.
* Enabled by default for root projects. Disabled for non-root projects.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder github(java.lang.Boolean github) {
this.github = github;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getGithubOptions}
* @param githubOptions Options for GitHub integration.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder githubOptions(io.github.cdklabs.projen.github.GitHubOptions githubOptions) {
this.githubOptions = githubOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getGitpod}
* @param gitpod Add a Gitpod development environment.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder gitpod(java.lang.Boolean gitpod) {
this.gitpod = gitpod;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getMergify}
* @param mergify Whether mergify should be enabled on this repository or not.
* @return {@code this}
* @deprecated use `githubOptions.mergify` instead
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder mergify(java.lang.Boolean mergify) {
this.mergify = mergify;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getMergifyOptions}
* @param mergifyOptions Options for mergify.
* @return {@code this}
* @deprecated use `githubOptions.mergifyOptions` instead
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder mergifyOptions(io.github.cdklabs.projen.github.MergifyOptions mergifyOptions) {
this.mergifyOptions = mergifyOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjectType}
* @param projectType Which type of project this is (library/app).
* @return {@code this}
* @deprecated no longer supported at the base project level
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder projectType(io.github.cdklabs.projen.ProjectType projectType) {
this.projectType = projectType;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenCredentials}
* @param projenCredentials Choose a method of providing GitHub API access for projen workflows.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenCredentials(io.github.cdklabs.projen.github.GithubCredentials projenCredentials) {
this.projenCredentials = projenCredentials;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenTokenSecret}
* @param projenTokenSecret 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.
* @return {@code this}
* @deprecated use `projenCredentials`
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder projenTokenSecret(java.lang.String projenTokenSecret) {
this.projenTokenSecret = projenTokenSecret;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getReadme}
* @param readme The README setup.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder readme(io.github.cdklabs.projen.SampleReadmeProps readme) {
this.readme = readme;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getStale}
* @param stale Auto-close of stale issues and pull request.
* See staleOptions
for options.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder stale(java.lang.Boolean stale) {
this.stale = stale;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getStaleOptions}
* @param staleOptions Auto-close stale issues and pull requests.
* To disable set stale
to false
.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder staleOptions(io.github.cdklabs.projen.github.StaleOptions staleOptions) {
this.staleOptions = staleOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getVscode}
* @param vscode Enable VSCode integration.
* Enabled by default for root projects. Disabled for non-root projects.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder vscode(java.lang.Boolean vscode) {
this.vscode = vscode;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getName}
* @param name This is the name of your project. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder name(java.lang.String name) {
this.name = name;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getCommitGenerated}
* @param commitGenerated Whether to commit the managed files by default.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder commitGenerated(java.lang.Boolean commitGenerated) {
this.commitGenerated = commitGenerated;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getGitIgnoreOptions}
* @param gitIgnoreOptions Configuration options for .gitignore file.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder gitIgnoreOptions(io.github.cdklabs.projen.IgnoreFileOptions gitIgnoreOptions) {
this.gitIgnoreOptions = gitIgnoreOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getGitOptions}
* @param gitOptions Configuration options for git.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder gitOptions(io.github.cdklabs.projen.GitOptions gitOptions) {
this.gitOptions = gitOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getLogging}
* @param logging Configure logging options such as verbosity.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder logging(io.github.cdklabs.projen.LoggerOptions logging) {
this.logging = logging;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getOutdir}
* @param outdir 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.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder outdir(java.lang.String outdir) {
this.outdir = outdir;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getParent}
* @param parent The parent project, if this project is part of a bigger project.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder parent(io.github.cdklabs.projen.Project parent) {
this.parent = parent;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenCommand}
* @param projenCommand The shell command to use in order to run the projen CLI.
* Can be used to customize in special environments.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenCommand(java.lang.String projenCommand) {
this.projenCommand = projenCommand;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenrcJson}
* @param projenrcJson Generate (once) .projenrc.json (in JSON). Set to false
in order to disable .projenrc.json generation.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcJson(java.lang.Boolean projenrcJson) {
this.projenrcJson = projenrcJson;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getProjenrcJsonOptions}
* @param projenrcJsonOptions Options for .projenrc.json.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder projenrcJsonOptions(io.github.cdklabs.projen.ProjenrcJsonOptions projenrcJsonOptions) {
this.projenrcJsonOptions = projenrcJsonOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getRenovatebot}
* @param renovatebot Use renovatebot to handle dependency upgrades.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder renovatebot(java.lang.Boolean renovatebot) {
this.renovatebot = renovatebot;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getRenovatebotOptions}
* @param renovatebotOptions Options for renovatebot.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder renovatebotOptions(io.github.cdklabs.projen.RenovatebotOptions renovatebotOptions) {
this.renovatebotOptions = renovatebotOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getAuthorEmail}
* @param authorEmail Author's e-mail. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder authorEmail(java.lang.String authorEmail) {
this.authorEmail = authorEmail;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getAuthorName}
* @param authorName Author's name. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder authorName(java.lang.String authorName) {
this.authorName = authorName;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getVersion}
* @param version Version of the package. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder version(java.lang.String version) {
this.version = version;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getClassifiers}
* @param classifiers A list of PyPI trove classifiers that describe the project.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder classifiers(java.util.List classifiers) {
this.classifiers = classifiers;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getDescription}
* @param description A short description of the package.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder description(java.lang.String description) {
this.description = description;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getHomepage}
* @param homepage A URL to the website of the project.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder homepage(java.lang.String homepage) {
this.homepage = homepage;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getLicense}
* @param license License of this package as an SPDX identifier.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder license(java.lang.String license) {
this.license = license;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getPackageName}
* @param packageName Package name.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder packageName(java.lang.String packageName) {
this.packageName = packageName;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getPoetryOptions}
* @param poetryOptions Additional options to set for poetry if using poetry.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder poetryOptions(io.github.cdklabs.projen.python.PoetryPyprojectOptionsWithoutDeps poetryOptions) {
this.poetryOptions = poetryOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getSetupConfig}
* @param setupConfig Additional fields to pass in the setup() function if using setuptools.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@SuppressWarnings("unchecked")
public Builder setupConfig(java.util.Map setupConfig) {
this.setupConfig = (java.util.Map)setupConfig;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getServiceName}
* @param serviceName The name of the Smithy service from your model which will be targeted for deployment and client generation. This parameter is required.
* 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.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder serviceName(software.aws.awsprototypingsdk.openapigateway.SmithyServiceName serviceName) {
this.serviceName = serviceName;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getIgnoreGradleWrapper}
* @param ignoreGradleWrapper 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
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder ignoreGradleWrapper(java.lang.Boolean ignoreGradleWrapper) {
this.ignoreGradleWrapper = ignoreGradleWrapper;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getIgnoreSmithyBuildOutput}
* @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.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder ignoreSmithyBuildOutput(java.lang.Boolean ignoreSmithyBuildOutput) {
this.ignoreSmithyBuildOutput = ignoreSmithyBuildOutput;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getModelDir}
* @param modelDir The path to the Smithy model directory, relative to the project source directory (srcdir).
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder modelDir(java.lang.String modelDir) {
this.modelDir = modelDir;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getSmithyBuildOptions}
* @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.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder smithyBuildOptions(software.aws.awsprototypingsdk.openapigateway.SmithyBuildOptions smithyBuildOptions) {
this.smithyBuildOptions = smithyBuildOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getClientLanguages}
* @param clientLanguages The list of languages for which clients will be generated. This parameter is required.
* A typescript client will always be generated.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@SuppressWarnings("unchecked")
public Builder clientLanguages(java.util.List extends software.aws.awsprototypingsdk.openapigateway.ClientLanguage> clientLanguages) {
this.clientLanguages = (java.util.List)clientLanguages;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getApiSrcDir}
* @param apiSrcDir The directory in which the api generated code will reside, relative to the project srcdir.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder apiSrcDir(java.lang.String apiSrcDir) {
this.apiSrcDir = apiSrcDir;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getDocumentationFormats}
* @param documentationFormats Formats to generate documentation in.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@SuppressWarnings("unchecked")
public Builder documentationFormats(java.util.List extends software.aws.awsprototypingsdk.openapigateway.DocumentationFormat> documentationFormats) {
this.documentationFormats = (java.util.List)documentationFormats;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getForceGenerateCodeAndDocs}
* @param forceGenerateCodeAndDocs Force to generate code and docs even if there were no changes in spec.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder forceGenerateCodeAndDocs(java.lang.Boolean forceGenerateCodeAndDocs) {
this.forceGenerateCodeAndDocs = forceGenerateCodeAndDocs;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getGeneratedCodeDir}
* @param generatedCodeDir The directory in which generated client code will be generated, relative to the outdir of this project.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder generatedCodeDir(java.lang.String generatedCodeDir) {
this.generatedCodeDir = generatedCodeDir;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getJavaClientOptions}
* @param javaClientOptions Options for the generated java client (if specified in clientLanguages).
* These override the default inferred options.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder javaClientOptions(io.github.cdklabs.projen.java.JavaProjectOptions javaClientOptions) {
this.javaClientOptions = javaClientOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getParsedSpecFileName}
* @param parsedSpecFileName The name of the output parsed OpenAPI specification file.
* Must end with .json.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder parsedSpecFileName(java.lang.String parsedSpecFileName) {
this.parsedSpecFileName = parsedSpecFileName;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getPythonClientOptions}
* @param pythonClientOptions Options for the generated python client (if specified in clientLanguages).
* These override the default inferred options.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder pythonClientOptions(io.github.cdklabs.projen.python.PythonProjectOptions pythonClientOptions) {
this.pythonClientOptions = pythonClientOptions;
return this;
}
/**
* Sets the value of {@link SmithyApiGatewayPythonProjectOptions#getTypescriptClientOptions}
* @param typescriptClientOptions Options for the generated typescript client.
* These override the default inferred options.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder typescriptClientOptions(io.github.cdklabs.projen.typescript.TypeScriptProjectOptions typescriptClientOptions) {
this.typescriptClientOptions = typescriptClientOptions;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link SmithyApiGatewayPythonProjectOptions}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public SmithyApiGatewayPythonProjectOptions build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link SmithyApiGatewayPythonProjectOptions}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements SmithyApiGatewayPythonProjectOptions {
private final java.lang.String moduleName;
private final java.util.List deps;
private final java.util.List devDeps;
private final java.lang.Boolean pip;
private final java.lang.Boolean poetry;
private final java.lang.Boolean projenrcJs;
private final io.github.cdklabs.projen.javascript.ProjenrcOptions projenrcJsOptions;
private final java.lang.Boolean projenrcPython;
private final io.github.cdklabs.projen.python.ProjenrcOptions projenrcPythonOptions;
private final java.lang.Boolean projenrcTs;
private final io.github.cdklabs.projen.typescript.ProjenrcTsOptions projenrcTsOptions;
private final java.lang.Boolean pytest;
private final io.github.cdklabs.projen.python.PytestOptions pytestOptions;
private final java.lang.String pythonExec;
private final java.lang.Boolean sample;
private final java.lang.Boolean setuptools;
private final java.lang.Boolean venv;
private final io.github.cdklabs.projen.python.VenvOptions venvOptions;
private final io.github.cdklabs.projen.github.AutoApproveOptions autoApproveOptions;
private final java.lang.Boolean autoMerge;
private final io.github.cdklabs.projen.github.AutoMergeOptions autoMergeOptions;
private final java.lang.Boolean clobber;
private final java.lang.Boolean devContainer;
private final java.lang.Boolean github;
private final io.github.cdklabs.projen.github.GitHubOptions githubOptions;
private final java.lang.Boolean gitpod;
private final java.lang.Boolean mergify;
private final io.github.cdklabs.projen.github.MergifyOptions mergifyOptions;
private final io.github.cdklabs.projen.ProjectType projectType;
private final io.github.cdklabs.projen.github.GithubCredentials projenCredentials;
private final java.lang.String projenTokenSecret;
private final io.github.cdklabs.projen.SampleReadmeProps readme;
private final java.lang.Boolean stale;
private final io.github.cdklabs.projen.github.StaleOptions staleOptions;
private final java.lang.Boolean vscode;
private final java.lang.String name;
private final java.lang.Boolean commitGenerated;
private final io.github.cdklabs.projen.IgnoreFileOptions gitIgnoreOptions;
private final io.github.cdklabs.projen.GitOptions gitOptions;
private final io.github.cdklabs.projen.LoggerOptions logging;
private final java.lang.String outdir;
private final io.github.cdklabs.projen.Project parent;
private final java.lang.String projenCommand;
private final java.lang.Boolean projenrcJson;
private final io.github.cdklabs.projen.ProjenrcJsonOptions projenrcJsonOptions;
private final java.lang.Boolean renovatebot;
private final io.github.cdklabs.projen.RenovatebotOptions renovatebotOptions;
private final java.lang.String authorEmail;
private final java.lang.String authorName;
private final java.lang.String version;
private final java.util.List classifiers;
private final java.lang.String description;
private final java.lang.String homepage;
private final java.lang.String license;
private final java.lang.String packageName;
private final io.github.cdklabs.projen.python.PoetryPyprojectOptionsWithoutDeps poetryOptions;
private final java.util.Map setupConfig;
private final software.aws.awsprototypingsdk.openapigateway.SmithyServiceName serviceName;
private final java.lang.Boolean ignoreGradleWrapper;
private final java.lang.Boolean ignoreSmithyBuildOutput;
private final java.lang.String modelDir;
private final software.aws.awsprototypingsdk.openapigateway.SmithyBuildOptions smithyBuildOptions;
private final java.util.List clientLanguages;
private final java.lang.String apiSrcDir;
private final java.util.List documentationFormats;
private final java.lang.Boolean forceGenerateCodeAndDocs;
private final java.lang.String generatedCodeDir;
private final io.github.cdklabs.projen.java.JavaProjectOptions javaClientOptions;
private final java.lang.String parsedSpecFileName;
private final io.github.cdklabs.projen.python.PythonProjectOptions pythonClientOptions;
private final io.github.cdklabs.projen.typescript.TypeScriptProjectOptions typescriptClientOptions;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.moduleName = software.amazon.jsii.Kernel.get(this, "moduleName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.deps = software.amazon.jsii.Kernel.get(this, "deps", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.devDeps = software.amazon.jsii.Kernel.get(this, "devDeps", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.pip = software.amazon.jsii.Kernel.get(this, "pip", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.poetry = software.amazon.jsii.Kernel.get(this, "poetry", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.projenrcJs = software.amazon.jsii.Kernel.get(this, "projenrcJs", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.projenrcJsOptions = software.amazon.jsii.Kernel.get(this, "projenrcJsOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.javascript.ProjenrcOptions.class));
this.projenrcPython = software.amazon.jsii.Kernel.get(this, "projenrcPython", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.projenrcPythonOptions = software.amazon.jsii.Kernel.get(this, "projenrcPythonOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.python.ProjenrcOptions.class));
this.projenrcTs = software.amazon.jsii.Kernel.get(this, "projenrcTs", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.projenrcTsOptions = software.amazon.jsii.Kernel.get(this, "projenrcTsOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.typescript.ProjenrcTsOptions.class));
this.pytest = software.amazon.jsii.Kernel.get(this, "pytest", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.pytestOptions = software.amazon.jsii.Kernel.get(this, "pytestOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.python.PytestOptions.class));
this.pythonExec = software.amazon.jsii.Kernel.get(this, "pythonExec", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.sample = software.amazon.jsii.Kernel.get(this, "sample", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.setuptools = software.amazon.jsii.Kernel.get(this, "setuptools", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.venv = software.amazon.jsii.Kernel.get(this, "venv", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.venvOptions = software.amazon.jsii.Kernel.get(this, "venvOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.python.VenvOptions.class));
this.autoApproveOptions = software.amazon.jsii.Kernel.get(this, "autoApproveOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.github.AutoApproveOptions.class));
this.autoMerge = software.amazon.jsii.Kernel.get(this, "autoMerge", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.autoMergeOptions = software.amazon.jsii.Kernel.get(this, "autoMergeOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.github.AutoMergeOptions.class));
this.clobber = software.amazon.jsii.Kernel.get(this, "clobber", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.devContainer = software.amazon.jsii.Kernel.get(this, "devContainer", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.github = software.amazon.jsii.Kernel.get(this, "github", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.githubOptions = software.amazon.jsii.Kernel.get(this, "githubOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.github.GitHubOptions.class));
this.gitpod = software.amazon.jsii.Kernel.get(this, "gitpod", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.mergify = software.amazon.jsii.Kernel.get(this, "mergify", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.mergifyOptions = software.amazon.jsii.Kernel.get(this, "mergifyOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.github.MergifyOptions.class));
this.projectType = software.amazon.jsii.Kernel.get(this, "projectType", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.ProjectType.class));
this.projenCredentials = software.amazon.jsii.Kernel.get(this, "projenCredentials", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.github.GithubCredentials.class));
this.projenTokenSecret = software.amazon.jsii.Kernel.get(this, "projenTokenSecret", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.readme = software.amazon.jsii.Kernel.get(this, "readme", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.SampleReadmeProps.class));
this.stale = software.amazon.jsii.Kernel.get(this, "stale", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.staleOptions = software.amazon.jsii.Kernel.get(this, "staleOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.github.StaleOptions.class));
this.vscode = software.amazon.jsii.Kernel.get(this, "vscode", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.commitGenerated = software.amazon.jsii.Kernel.get(this, "commitGenerated", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.gitIgnoreOptions = software.amazon.jsii.Kernel.get(this, "gitIgnoreOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.IgnoreFileOptions.class));
this.gitOptions = software.amazon.jsii.Kernel.get(this, "gitOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.GitOptions.class));
this.logging = software.amazon.jsii.Kernel.get(this, "logging", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.LoggerOptions.class));
this.outdir = software.amazon.jsii.Kernel.get(this, "outdir", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.parent = software.amazon.jsii.Kernel.get(this, "parent", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.Project.class));
this.projenCommand = software.amazon.jsii.Kernel.get(this, "projenCommand", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.projenrcJson = software.amazon.jsii.Kernel.get(this, "projenrcJson", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.projenrcJsonOptions = software.amazon.jsii.Kernel.get(this, "projenrcJsonOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.ProjenrcJsonOptions.class));
this.renovatebot = software.amazon.jsii.Kernel.get(this, "renovatebot", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.renovatebotOptions = software.amazon.jsii.Kernel.get(this, "renovatebotOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.RenovatebotOptions.class));
this.authorEmail = software.amazon.jsii.Kernel.get(this, "authorEmail", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.authorName = software.amazon.jsii.Kernel.get(this, "authorName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.version = software.amazon.jsii.Kernel.get(this, "version", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.classifiers = software.amazon.jsii.Kernel.get(this, "classifiers", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.description = software.amazon.jsii.Kernel.get(this, "description", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.homepage = software.amazon.jsii.Kernel.get(this, "homepage", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.license = software.amazon.jsii.Kernel.get(this, "license", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.packageName = software.amazon.jsii.Kernel.get(this, "packageName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.poetryOptions = software.amazon.jsii.Kernel.get(this, "poetryOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.python.PoetryPyprojectOptionsWithoutDeps.class));
this.setupConfig = software.amazon.jsii.Kernel.get(this, "setupConfig", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)));
this.serviceName = software.amazon.jsii.Kernel.get(this, "serviceName", software.amazon.jsii.NativeType.forClass(software.aws.awsprototypingsdk.openapigateway.SmithyServiceName.class));
this.ignoreGradleWrapper = software.amazon.jsii.Kernel.get(this, "ignoreGradleWrapper", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.ignoreSmithyBuildOutput = software.amazon.jsii.Kernel.get(this, "ignoreSmithyBuildOutput", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.modelDir = software.amazon.jsii.Kernel.get(this, "modelDir", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.smithyBuildOptions = software.amazon.jsii.Kernel.get(this, "smithyBuildOptions", software.amazon.jsii.NativeType.forClass(software.aws.awsprototypingsdk.openapigateway.SmithyBuildOptions.class));
this.clientLanguages = software.amazon.jsii.Kernel.get(this, "clientLanguages", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(software.aws.awsprototypingsdk.openapigateway.ClientLanguage.class)));
this.apiSrcDir = software.amazon.jsii.Kernel.get(this, "apiSrcDir", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.documentationFormats = software.amazon.jsii.Kernel.get(this, "documentationFormats", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(software.aws.awsprototypingsdk.openapigateway.DocumentationFormat.class)));
this.forceGenerateCodeAndDocs = software.amazon.jsii.Kernel.get(this, "forceGenerateCodeAndDocs", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.generatedCodeDir = software.amazon.jsii.Kernel.get(this, "generatedCodeDir", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.javaClientOptions = software.amazon.jsii.Kernel.get(this, "javaClientOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.java.JavaProjectOptions.class));
this.parsedSpecFileName = software.amazon.jsii.Kernel.get(this, "parsedSpecFileName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.pythonClientOptions = software.amazon.jsii.Kernel.get(this, "pythonClientOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.python.PythonProjectOptions.class));
this.typescriptClientOptions = software.amazon.jsii.Kernel.get(this, "typescriptClientOptions", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.typescript.TypeScriptProjectOptions.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
@SuppressWarnings("unchecked")
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.moduleName = java.util.Objects.requireNonNull(builder.moduleName, "moduleName is required");
this.deps = builder.deps;
this.devDeps = builder.devDeps;
this.pip = builder.pip;
this.poetry = builder.poetry;
this.projenrcJs = builder.projenrcJs;
this.projenrcJsOptions = builder.projenrcJsOptions;
this.projenrcPython = builder.projenrcPython;
this.projenrcPythonOptions = builder.projenrcPythonOptions;
this.projenrcTs = builder.projenrcTs;
this.projenrcTsOptions = builder.projenrcTsOptions;
this.pytest = builder.pytest;
this.pytestOptions = builder.pytestOptions;
this.pythonExec = builder.pythonExec;
this.sample = builder.sample;
this.setuptools = builder.setuptools;
this.venv = builder.venv;
this.venvOptions = builder.venvOptions;
this.autoApproveOptions = builder.autoApproveOptions;
this.autoMerge = builder.autoMerge;
this.autoMergeOptions = builder.autoMergeOptions;
this.clobber = builder.clobber;
this.devContainer = builder.devContainer;
this.github = builder.github;
this.githubOptions = builder.githubOptions;
this.gitpod = builder.gitpod;
this.mergify = builder.mergify;
this.mergifyOptions = builder.mergifyOptions;
this.projectType = builder.projectType;
this.projenCredentials = builder.projenCredentials;
this.projenTokenSecret = builder.projenTokenSecret;
this.readme = builder.readme;
this.stale = builder.stale;
this.staleOptions = builder.staleOptions;
this.vscode = builder.vscode;
this.name = java.util.Objects.requireNonNull(builder.name, "name is required");
this.commitGenerated = builder.commitGenerated;
this.gitIgnoreOptions = builder.gitIgnoreOptions;
this.gitOptions = builder.gitOptions;
this.logging = builder.logging;
this.outdir = builder.outdir;
this.parent = builder.parent;
this.projenCommand = builder.projenCommand;
this.projenrcJson = builder.projenrcJson;
this.projenrcJsonOptions = builder.projenrcJsonOptions;
this.renovatebot = builder.renovatebot;
this.renovatebotOptions = builder.renovatebotOptions;
this.authorEmail = java.util.Objects.requireNonNull(builder.authorEmail, "authorEmail is required");
this.authorName = java.util.Objects.requireNonNull(builder.authorName, "authorName is required");
this.version = java.util.Objects.requireNonNull(builder.version, "version is required");
this.classifiers = builder.classifiers;
this.description = builder.description;
this.homepage = builder.homepage;
this.license = builder.license;
this.packageName = builder.packageName;
this.poetryOptions = builder.poetryOptions;
this.setupConfig = (java.util.Map)builder.setupConfig;
this.serviceName = java.util.Objects.requireNonNull(builder.serviceName, "serviceName is required");
this.ignoreGradleWrapper = builder.ignoreGradleWrapper;
this.ignoreSmithyBuildOutput = builder.ignoreSmithyBuildOutput;
this.modelDir = builder.modelDir;
this.smithyBuildOptions = builder.smithyBuildOptions;
this.clientLanguages = (java.util.List)java.util.Objects.requireNonNull(builder.clientLanguages, "clientLanguages is required");
this.apiSrcDir = builder.apiSrcDir;
this.documentationFormats = (java.util.List)builder.documentationFormats;
this.forceGenerateCodeAndDocs = builder.forceGenerateCodeAndDocs;
this.generatedCodeDir = builder.generatedCodeDir;
this.javaClientOptions = builder.javaClientOptions;
this.parsedSpecFileName = builder.parsedSpecFileName;
this.pythonClientOptions = builder.pythonClientOptions;
this.typescriptClientOptions = builder.typescriptClientOptions;
}
@Override
public final java.lang.String getModuleName() {
return this.moduleName;
}
@Override
public final java.util.List getDeps() {
return this.deps;
}
@Override
public final java.util.List getDevDeps() {
return this.devDeps;
}
@Override
public final java.lang.Boolean getPip() {
return this.pip;
}
@Override
public final java.lang.Boolean getPoetry() {
return this.poetry;
}
@Override
public final java.lang.Boolean getProjenrcJs() {
return this.projenrcJs;
}
@Override
public final io.github.cdklabs.projen.javascript.ProjenrcOptions getProjenrcJsOptions() {
return this.projenrcJsOptions;
}
@Override
public final java.lang.Boolean getProjenrcPython() {
return this.projenrcPython;
}
@Override
public final io.github.cdklabs.projen.python.ProjenrcOptions getProjenrcPythonOptions() {
return this.projenrcPythonOptions;
}
@Override
public final java.lang.Boolean getProjenrcTs() {
return this.projenrcTs;
}
@Override
public final io.github.cdklabs.projen.typescript.ProjenrcTsOptions getProjenrcTsOptions() {
return this.projenrcTsOptions;
}
@Override
public final java.lang.Boolean getPytest() {
return this.pytest;
}
@Override
public final io.github.cdklabs.projen.python.PytestOptions getPytestOptions() {
return this.pytestOptions;
}
@Override
public final java.lang.String getPythonExec() {
return this.pythonExec;
}
@Override
public final java.lang.Boolean getSample() {
return this.sample;
}
@Override
public final java.lang.Boolean getSetuptools() {
return this.setuptools;
}
@Override
public final java.lang.Boolean getVenv() {
return this.venv;
}
@Override
public final io.github.cdklabs.projen.python.VenvOptions getVenvOptions() {
return this.venvOptions;
}
@Override
public final io.github.cdklabs.projen.github.AutoApproveOptions getAutoApproveOptions() {
return this.autoApproveOptions;
}
@Override
public final java.lang.Boolean getAutoMerge() {
return this.autoMerge;
}
@Override
public final io.github.cdklabs.projen.github.AutoMergeOptions getAutoMergeOptions() {
return this.autoMergeOptions;
}
@Override
public final java.lang.Boolean getClobber() {
return this.clobber;
}
@Override
public final java.lang.Boolean getDevContainer() {
return this.devContainer;
}
@Override
public final java.lang.Boolean getGithub() {
return this.github;
}
@Override
public final io.github.cdklabs.projen.github.GitHubOptions getGithubOptions() {
return this.githubOptions;
}
@Override
public final java.lang.Boolean getGitpod() {
return this.gitpod;
}
@Override
public final java.lang.Boolean getMergify() {
return this.mergify;
}
@Override
public final io.github.cdklabs.projen.github.MergifyOptions getMergifyOptions() {
return this.mergifyOptions;
}
@Override
public final io.github.cdklabs.projen.ProjectType getProjectType() {
return this.projectType;
}
@Override
public final io.github.cdklabs.projen.github.GithubCredentials getProjenCredentials() {
return this.projenCredentials;
}
@Override
public final java.lang.String getProjenTokenSecret() {
return this.projenTokenSecret;
}
@Override
public final io.github.cdklabs.projen.SampleReadmeProps getReadme() {
return this.readme;
}
@Override
public final java.lang.Boolean getStale() {
return this.stale;
}
@Override
public final io.github.cdklabs.projen.github.StaleOptions getStaleOptions() {
return this.staleOptions;
}
@Override
public final java.lang.Boolean getVscode() {
return this.vscode;
}
@Override
public final java.lang.String getName() {
return this.name;
}
@Override
public final java.lang.Boolean getCommitGenerated() {
return this.commitGenerated;
}
@Override
public final io.github.cdklabs.projen.IgnoreFileOptions getGitIgnoreOptions() {
return this.gitIgnoreOptions;
}
@Override
public final io.github.cdklabs.projen.GitOptions getGitOptions() {
return this.gitOptions;
}
@Override
public final io.github.cdklabs.projen.LoggerOptions getLogging() {
return this.logging;
}
@Override
public final java.lang.String getOutdir() {
return this.outdir;
}
@Override
public final io.github.cdklabs.projen.Project getParent() {
return this.parent;
}
@Override
public final java.lang.String getProjenCommand() {
return this.projenCommand;
}
@Override
public final java.lang.Boolean getProjenrcJson() {
return this.projenrcJson;
}
@Override
public final io.github.cdklabs.projen.ProjenrcJsonOptions getProjenrcJsonOptions() {
return this.projenrcJsonOptions;
}
@Override
public final java.lang.Boolean getRenovatebot() {
return this.renovatebot;
}
@Override
public final io.github.cdklabs.projen.RenovatebotOptions getRenovatebotOptions() {
return this.renovatebotOptions;
}
@Override
public final java.lang.String getAuthorEmail() {
return this.authorEmail;
}
@Override
public final java.lang.String getAuthorName() {
return this.authorName;
}
@Override
public final java.lang.String getVersion() {
return this.version;
}
@Override
public final java.util.List getClassifiers() {
return this.classifiers;
}
@Override
public final java.lang.String getDescription() {
return this.description;
}
@Override
public final java.lang.String getHomepage() {
return this.homepage;
}
@Override
public final java.lang.String getLicense() {
return this.license;
}
@Override
public final java.lang.String getPackageName() {
return this.packageName;
}
@Override
public final io.github.cdklabs.projen.python.PoetryPyprojectOptionsWithoutDeps getPoetryOptions() {
return this.poetryOptions;
}
@Override
public final java.util.Map getSetupConfig() {
return this.setupConfig;
}
@Override
public final software.aws.awsprototypingsdk.openapigateway.SmithyServiceName getServiceName() {
return this.serviceName;
}
@Override
public final java.lang.Boolean getIgnoreGradleWrapper() {
return this.ignoreGradleWrapper;
}
@Override
public final java.lang.Boolean getIgnoreSmithyBuildOutput() {
return this.ignoreSmithyBuildOutput;
}
@Override
public final java.lang.String getModelDir() {
return this.modelDir;
}
@Override
public final software.aws.awsprototypingsdk.openapigateway.SmithyBuildOptions getSmithyBuildOptions() {
return this.smithyBuildOptions;
}
@Override
public final java.util.List getClientLanguages() {
return this.clientLanguages;
}
@Override
public final java.lang.String getApiSrcDir() {
return this.apiSrcDir;
}
@Override
public final java.util.List getDocumentationFormats() {
return this.documentationFormats;
}
@Override
public final java.lang.Boolean getForceGenerateCodeAndDocs() {
return this.forceGenerateCodeAndDocs;
}
@Override
public final java.lang.String getGeneratedCodeDir() {
return this.generatedCodeDir;
}
@Override
public final io.github.cdklabs.projen.java.JavaProjectOptions getJavaClientOptions() {
return this.javaClientOptions;
}
@Override
public final java.lang.String getParsedSpecFileName() {
return this.parsedSpecFileName;
}
@Override
public final io.github.cdklabs.projen.python.PythonProjectOptions getPythonClientOptions() {
return this.pythonClientOptions;
}
@Override
public final io.github.cdklabs.projen.typescript.TypeScriptProjectOptions getTypescriptClientOptions() {
return this.typescriptClientOptions;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("moduleName", om.valueToTree(this.getModuleName()));
if (this.getDeps() != null) {
data.set("deps", om.valueToTree(this.getDeps()));
}
if (this.getDevDeps() != null) {
data.set("devDeps", om.valueToTree(this.getDevDeps()));
}
if (this.getPip() != null) {
data.set("pip", om.valueToTree(this.getPip()));
}
if (this.getPoetry() != null) {
data.set("poetry", om.valueToTree(this.getPoetry()));
}
if (this.getProjenrcJs() != null) {
data.set("projenrcJs", om.valueToTree(this.getProjenrcJs()));
}
if (this.getProjenrcJsOptions() != null) {
data.set("projenrcJsOptions", om.valueToTree(this.getProjenrcJsOptions()));
}
if (this.getProjenrcPython() != null) {
data.set("projenrcPython", om.valueToTree(this.getProjenrcPython()));
}
if (this.getProjenrcPythonOptions() != null) {
data.set("projenrcPythonOptions", om.valueToTree(this.getProjenrcPythonOptions()));
}
if (this.getProjenrcTs() != null) {
data.set("projenrcTs", om.valueToTree(this.getProjenrcTs()));
}
if (this.getProjenrcTsOptions() != null) {
data.set("projenrcTsOptions", om.valueToTree(this.getProjenrcTsOptions()));
}
if (this.getPytest() != null) {
data.set("pytest", om.valueToTree(this.getPytest()));
}
if (this.getPytestOptions() != null) {
data.set("pytestOptions", om.valueToTree(this.getPytestOptions()));
}
if (this.getPythonExec() != null) {
data.set("pythonExec", om.valueToTree(this.getPythonExec()));
}
if (this.getSample() != null) {
data.set("sample", om.valueToTree(this.getSample()));
}
if (this.getSetuptools() != null) {
data.set("setuptools", om.valueToTree(this.getSetuptools()));
}
if (this.getVenv() != null) {
data.set("venv", om.valueToTree(this.getVenv()));
}
if (this.getVenvOptions() != null) {
data.set("venvOptions", om.valueToTree(this.getVenvOptions()));
}
if (this.getAutoApproveOptions() != null) {
data.set("autoApproveOptions", om.valueToTree(this.getAutoApproveOptions()));
}
if (this.getAutoMerge() != null) {
data.set("autoMerge", om.valueToTree(this.getAutoMerge()));
}
if (this.getAutoMergeOptions() != null) {
data.set("autoMergeOptions", om.valueToTree(this.getAutoMergeOptions()));
}
if (this.getClobber() != null) {
data.set("clobber", om.valueToTree(this.getClobber()));
}
if (this.getDevContainer() != null) {
data.set("devContainer", om.valueToTree(this.getDevContainer()));
}
if (this.getGithub() != null) {
data.set("github", om.valueToTree(this.getGithub()));
}
if (this.getGithubOptions() != null) {
data.set("githubOptions", om.valueToTree(this.getGithubOptions()));
}
if (this.getGitpod() != null) {
data.set("gitpod", om.valueToTree(this.getGitpod()));
}
if (this.getMergify() != null) {
data.set("mergify", om.valueToTree(this.getMergify()));
}
if (this.getMergifyOptions() != null) {
data.set("mergifyOptions", om.valueToTree(this.getMergifyOptions()));
}
if (this.getProjectType() != null) {
data.set("projectType", om.valueToTree(this.getProjectType()));
}
if (this.getProjenCredentials() != null) {
data.set("projenCredentials", om.valueToTree(this.getProjenCredentials()));
}
if (this.getProjenTokenSecret() != null) {
data.set("projenTokenSecret", om.valueToTree(this.getProjenTokenSecret()));
}
if (this.getReadme() != null) {
data.set("readme", om.valueToTree(this.getReadme()));
}
if (this.getStale() != null) {
data.set("stale", om.valueToTree(this.getStale()));
}
if (this.getStaleOptions() != null) {
data.set("staleOptions", om.valueToTree(this.getStaleOptions()));
}
if (this.getVscode() != null) {
data.set("vscode", om.valueToTree(this.getVscode()));
}
data.set("name", om.valueToTree(this.getName()));
if (this.getCommitGenerated() != null) {
data.set("commitGenerated", om.valueToTree(this.getCommitGenerated()));
}
if (this.getGitIgnoreOptions() != null) {
data.set("gitIgnoreOptions", om.valueToTree(this.getGitIgnoreOptions()));
}
if (this.getGitOptions() != null) {
data.set("gitOptions", om.valueToTree(this.getGitOptions()));
}
if (this.getLogging() != null) {
data.set("logging", om.valueToTree(this.getLogging()));
}
if (this.getOutdir() != null) {
data.set("outdir", om.valueToTree(this.getOutdir()));
}
if (this.getParent() != null) {
data.set("parent", om.valueToTree(this.getParent()));
}
if (this.getProjenCommand() != null) {
data.set("projenCommand", om.valueToTree(this.getProjenCommand()));
}
if (this.getProjenrcJson() != null) {
data.set("projenrcJson", om.valueToTree(this.getProjenrcJson()));
}
if (this.getProjenrcJsonOptions() != null) {
data.set("projenrcJsonOptions", om.valueToTree(this.getProjenrcJsonOptions()));
}
if (this.getRenovatebot() != null) {
data.set("renovatebot", om.valueToTree(this.getRenovatebot()));
}
if (this.getRenovatebotOptions() != null) {
data.set("renovatebotOptions", om.valueToTree(this.getRenovatebotOptions()));
}
data.set("authorEmail", om.valueToTree(this.getAuthorEmail()));
data.set("authorName", om.valueToTree(this.getAuthorName()));
data.set("version", om.valueToTree(this.getVersion()));
if (this.getClassifiers() != null) {
data.set("classifiers", om.valueToTree(this.getClassifiers()));
}
if (this.getDescription() != null) {
data.set("description", om.valueToTree(this.getDescription()));
}
if (this.getHomepage() != null) {
data.set("homepage", om.valueToTree(this.getHomepage()));
}
if (this.getLicense() != null) {
data.set("license", om.valueToTree(this.getLicense()));
}
if (this.getPackageName() != null) {
data.set("packageName", om.valueToTree(this.getPackageName()));
}
if (this.getPoetryOptions() != null) {
data.set("poetryOptions", om.valueToTree(this.getPoetryOptions()));
}
if (this.getSetupConfig() != null) {
data.set("setupConfig", om.valueToTree(this.getSetupConfig()));
}
data.set("serviceName", om.valueToTree(this.getServiceName()));
if (this.getIgnoreGradleWrapper() != null) {
data.set("ignoreGradleWrapper", om.valueToTree(this.getIgnoreGradleWrapper()));
}
if (this.getIgnoreSmithyBuildOutput() != null) {
data.set("ignoreSmithyBuildOutput", om.valueToTree(this.getIgnoreSmithyBuildOutput()));
}
if (this.getModelDir() != null) {
data.set("modelDir", om.valueToTree(this.getModelDir()));
}
if (this.getSmithyBuildOptions() != null) {
data.set("smithyBuildOptions", om.valueToTree(this.getSmithyBuildOptions()));
}
data.set("clientLanguages", om.valueToTree(this.getClientLanguages()));
if (this.getApiSrcDir() != null) {
data.set("apiSrcDir", om.valueToTree(this.getApiSrcDir()));
}
if (this.getDocumentationFormats() != null) {
data.set("documentationFormats", om.valueToTree(this.getDocumentationFormats()));
}
if (this.getForceGenerateCodeAndDocs() != null) {
data.set("forceGenerateCodeAndDocs", om.valueToTree(this.getForceGenerateCodeAndDocs()));
}
if (this.getGeneratedCodeDir() != null) {
data.set("generatedCodeDir", om.valueToTree(this.getGeneratedCodeDir()));
}
if (this.getJavaClientOptions() != null) {
data.set("javaClientOptions", om.valueToTree(this.getJavaClientOptions()));
}
if (this.getParsedSpecFileName() != null) {
data.set("parsedSpecFileName", om.valueToTree(this.getParsedSpecFileName()));
}
if (this.getPythonClientOptions() != null) {
data.set("pythonClientOptions", om.valueToTree(this.getPythonClientOptions()));
}
if (this.getTypescriptClientOptions() != null) {
data.set("typescriptClientOptions", om.valueToTree(this.getTypescriptClientOptions()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@aws-prototyping-sdk/open-api-gateway.SmithyApiGatewayPythonProjectOptions"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
SmithyApiGatewayPythonProjectOptions.Jsii$Proxy that = (SmithyApiGatewayPythonProjectOptions.Jsii$Proxy) o;
if (!moduleName.equals(that.moduleName)) return false;
if (this.deps != null ? !this.deps.equals(that.deps) : that.deps != null) return false;
if (this.devDeps != null ? !this.devDeps.equals(that.devDeps) : that.devDeps != null) return false;
if (this.pip != null ? !this.pip.equals(that.pip) : that.pip != null) return false;
if (this.poetry != null ? !this.poetry.equals(that.poetry) : that.poetry != null) return false;
if (this.projenrcJs != null ? !this.projenrcJs.equals(that.projenrcJs) : that.projenrcJs != null) return false;
if (this.projenrcJsOptions != null ? !this.projenrcJsOptions.equals(that.projenrcJsOptions) : that.projenrcJsOptions != null) return false;
if (this.projenrcPython != null ? !this.projenrcPython.equals(that.projenrcPython) : that.projenrcPython != null) return false;
if (this.projenrcPythonOptions != null ? !this.projenrcPythonOptions.equals(that.projenrcPythonOptions) : that.projenrcPythonOptions != null) return false;
if (this.projenrcTs != null ? !this.projenrcTs.equals(that.projenrcTs) : that.projenrcTs != null) return false;
if (this.projenrcTsOptions != null ? !this.projenrcTsOptions.equals(that.projenrcTsOptions) : that.projenrcTsOptions != null) return false;
if (this.pytest != null ? !this.pytest.equals(that.pytest) : that.pytest != null) return false;
if (this.pytestOptions != null ? !this.pytestOptions.equals(that.pytestOptions) : that.pytestOptions != null) return false;
if (this.pythonExec != null ? !this.pythonExec.equals(that.pythonExec) : that.pythonExec != null) return false;
if (this.sample != null ? !this.sample.equals(that.sample) : that.sample != null) return false;
if (this.setuptools != null ? !this.setuptools.equals(that.setuptools) : that.setuptools != null) return false;
if (this.venv != null ? !this.venv.equals(that.venv) : that.venv != null) return false;
if (this.venvOptions != null ? !this.venvOptions.equals(that.venvOptions) : that.venvOptions != null) return false;
if (this.autoApproveOptions != null ? !this.autoApproveOptions.equals(that.autoApproveOptions) : that.autoApproveOptions != null) return false;
if (this.autoMerge != null ? !this.autoMerge.equals(that.autoMerge) : that.autoMerge != null) return false;
if (this.autoMergeOptions != null ? !this.autoMergeOptions.equals(that.autoMergeOptions) : that.autoMergeOptions != null) return false;
if (this.clobber != null ? !this.clobber.equals(that.clobber) : that.clobber != null) return false;
if (this.devContainer != null ? !this.devContainer.equals(that.devContainer) : that.devContainer != null) return false;
if (this.github != null ? !this.github.equals(that.github) : that.github != null) return false;
if (this.githubOptions != null ? !this.githubOptions.equals(that.githubOptions) : that.githubOptions != null) return false;
if (this.gitpod != null ? !this.gitpod.equals(that.gitpod) : that.gitpod != null) return false;
if (this.mergify != null ? !this.mergify.equals(that.mergify) : that.mergify != null) return false;
if (this.mergifyOptions != null ? !this.mergifyOptions.equals(that.mergifyOptions) : that.mergifyOptions != null) return false;
if (this.projectType != null ? !this.projectType.equals(that.projectType) : that.projectType != null) return false;
if (this.projenCredentials != null ? !this.projenCredentials.equals(that.projenCredentials) : that.projenCredentials != null) return false;
if (this.projenTokenSecret != null ? !this.projenTokenSecret.equals(that.projenTokenSecret) : that.projenTokenSecret != null) return false;
if (this.readme != null ? !this.readme.equals(that.readme) : that.readme != null) return false;
if (this.stale != null ? !this.stale.equals(that.stale) : that.stale != null) return false;
if (this.staleOptions != null ? !this.staleOptions.equals(that.staleOptions) : that.staleOptions != null) return false;
if (this.vscode != null ? !this.vscode.equals(that.vscode) : that.vscode != null) return false;
if (!name.equals(that.name)) return false;
if (this.commitGenerated != null ? !this.commitGenerated.equals(that.commitGenerated) : that.commitGenerated != null) return false;
if (this.gitIgnoreOptions != null ? !this.gitIgnoreOptions.equals(that.gitIgnoreOptions) : that.gitIgnoreOptions != null) return false;
if (this.gitOptions != null ? !this.gitOptions.equals(that.gitOptions) : that.gitOptions != null) return false;
if (this.logging != null ? !this.logging.equals(that.logging) : that.logging != null) return false;
if (this.outdir != null ? !this.outdir.equals(that.outdir) : that.outdir != null) return false;
if (this.parent != null ? !this.parent.equals(that.parent) : that.parent != null) return false;
if (this.projenCommand != null ? !this.projenCommand.equals(that.projenCommand) : that.projenCommand != null) return false;
if (this.projenrcJson != null ? !this.projenrcJson.equals(that.projenrcJson) : that.projenrcJson != null) return false;
if (this.projenrcJsonOptions != null ? !this.projenrcJsonOptions.equals(that.projenrcJsonOptions) : that.projenrcJsonOptions != null) return false;
if (this.renovatebot != null ? !this.renovatebot.equals(that.renovatebot) : that.renovatebot != null) return false;
if (this.renovatebotOptions != null ? !this.renovatebotOptions.equals(that.renovatebotOptions) : that.renovatebotOptions != null) return false;
if (!authorEmail.equals(that.authorEmail)) return false;
if (!authorName.equals(that.authorName)) return false;
if (!version.equals(that.version)) return false;
if (this.classifiers != null ? !this.classifiers.equals(that.classifiers) : that.classifiers != null) return false;
if (this.description != null ? !this.description.equals(that.description) : that.description != null) return false;
if (this.homepage != null ? !this.homepage.equals(that.homepage) : that.homepage != null) return false;
if (this.license != null ? !this.license.equals(that.license) : that.license != null) return false;
if (this.packageName != null ? !this.packageName.equals(that.packageName) : that.packageName != null) return false;
if (this.poetryOptions != null ? !this.poetryOptions.equals(that.poetryOptions) : that.poetryOptions != null) return false;
if (this.setupConfig != null ? !this.setupConfig.equals(that.setupConfig) : that.setupConfig != null) return false;
if (!serviceName.equals(that.serviceName)) return false;
if (this.ignoreGradleWrapper != null ? !this.ignoreGradleWrapper.equals(that.ignoreGradleWrapper) : that.ignoreGradleWrapper != null) return false;
if (this.ignoreSmithyBuildOutput != null ? !this.ignoreSmithyBuildOutput.equals(that.ignoreSmithyBuildOutput) : that.ignoreSmithyBuildOutput != null) return false;
if (this.modelDir != null ? !this.modelDir.equals(that.modelDir) : that.modelDir != null) return false;
if (this.smithyBuildOptions != null ? !this.smithyBuildOptions.equals(that.smithyBuildOptions) : that.smithyBuildOptions != null) return false;
if (!clientLanguages.equals(that.clientLanguages)) return false;
if (this.apiSrcDir != null ? !this.apiSrcDir.equals(that.apiSrcDir) : that.apiSrcDir != null) return false;
if (this.documentationFormats != null ? !this.documentationFormats.equals(that.documentationFormats) : that.documentationFormats != null) return false;
if (this.forceGenerateCodeAndDocs != null ? !this.forceGenerateCodeAndDocs.equals(that.forceGenerateCodeAndDocs) : that.forceGenerateCodeAndDocs != null) return false;
if (this.generatedCodeDir != null ? !this.generatedCodeDir.equals(that.generatedCodeDir) : that.generatedCodeDir != null) return false;
if (this.javaClientOptions != null ? !this.javaClientOptions.equals(that.javaClientOptions) : that.javaClientOptions != null) return false;
if (this.parsedSpecFileName != null ? !this.parsedSpecFileName.equals(that.parsedSpecFileName) : that.parsedSpecFileName != null) return false;
if (this.pythonClientOptions != null ? !this.pythonClientOptions.equals(that.pythonClientOptions) : that.pythonClientOptions != null) return false;
return this.typescriptClientOptions != null ? this.typescriptClientOptions.equals(that.typescriptClientOptions) : that.typescriptClientOptions == null;
}
@Override
public final int hashCode() {
int result = this.moduleName.hashCode();
result = 31 * result + (this.deps != null ? this.deps.hashCode() : 0);
result = 31 * result + (this.devDeps != null ? this.devDeps.hashCode() : 0);
result = 31 * result + (this.pip != null ? this.pip.hashCode() : 0);
result = 31 * result + (this.poetry != null ? this.poetry.hashCode() : 0);
result = 31 * result + (this.projenrcJs != null ? this.projenrcJs.hashCode() : 0);
result = 31 * result + (this.projenrcJsOptions != null ? this.projenrcJsOptions.hashCode() : 0);
result = 31 * result + (this.projenrcPython != null ? this.projenrcPython.hashCode() : 0);
result = 31 * result + (this.projenrcPythonOptions != null ? this.projenrcPythonOptions.hashCode() : 0);
result = 31 * result + (this.projenrcTs != null ? this.projenrcTs.hashCode() : 0);
result = 31 * result + (this.projenrcTsOptions != null ? this.projenrcTsOptions.hashCode() : 0);
result = 31 * result + (this.pytest != null ? this.pytest.hashCode() : 0);
result = 31 * result + (this.pytestOptions != null ? this.pytestOptions.hashCode() : 0);
result = 31 * result + (this.pythonExec != null ? this.pythonExec.hashCode() : 0);
result = 31 * result + (this.sample != null ? this.sample.hashCode() : 0);
result = 31 * result + (this.setuptools != null ? this.setuptools.hashCode() : 0);
result = 31 * result + (this.venv != null ? this.venv.hashCode() : 0);
result = 31 * result + (this.venvOptions != null ? this.venvOptions.hashCode() : 0);
result = 31 * result + (this.autoApproveOptions != null ? this.autoApproveOptions.hashCode() : 0);
result = 31 * result + (this.autoMerge != null ? this.autoMerge.hashCode() : 0);
result = 31 * result + (this.autoMergeOptions != null ? this.autoMergeOptions.hashCode() : 0);
result = 31 * result + (this.clobber != null ? this.clobber.hashCode() : 0);
result = 31 * result + (this.devContainer != null ? this.devContainer.hashCode() : 0);
result = 31 * result + (this.github != null ? this.github.hashCode() : 0);
result = 31 * result + (this.githubOptions != null ? this.githubOptions.hashCode() : 0);
result = 31 * result + (this.gitpod != null ? this.gitpod.hashCode() : 0);
result = 31 * result + (this.mergify != null ? this.mergify.hashCode() : 0);
result = 31 * result + (this.mergifyOptions != null ? this.mergifyOptions.hashCode() : 0);
result = 31 * result + (this.projectType != null ? this.projectType.hashCode() : 0);
result = 31 * result + (this.projenCredentials != null ? this.projenCredentials.hashCode() : 0);
result = 31 * result + (this.projenTokenSecret != null ? this.projenTokenSecret.hashCode() : 0);
result = 31 * result + (this.readme != null ? this.readme.hashCode() : 0);
result = 31 * result + (this.stale != null ? this.stale.hashCode() : 0);
result = 31 * result + (this.staleOptions != null ? this.staleOptions.hashCode() : 0);
result = 31 * result + (this.vscode != null ? this.vscode.hashCode() : 0);
result = 31 * result + (this.name.hashCode());
result = 31 * result + (this.commitGenerated != null ? this.commitGenerated.hashCode() : 0);
result = 31 * result + (this.gitIgnoreOptions != null ? this.gitIgnoreOptions.hashCode() : 0);
result = 31 * result + (this.gitOptions != null ? this.gitOptions.hashCode() : 0);
result = 31 * result + (this.logging != null ? this.logging.hashCode() : 0);
result = 31 * result + (this.outdir != null ? this.outdir.hashCode() : 0);
result = 31 * result + (this.parent != null ? this.parent.hashCode() : 0);
result = 31 * result + (this.projenCommand != null ? this.projenCommand.hashCode() : 0);
result = 31 * result + (this.projenrcJson != null ? this.projenrcJson.hashCode() : 0);
result = 31 * result + (this.projenrcJsonOptions != null ? this.projenrcJsonOptions.hashCode() : 0);
result = 31 * result + (this.renovatebot != null ? this.renovatebot.hashCode() : 0);
result = 31 * result + (this.renovatebotOptions != null ? this.renovatebotOptions.hashCode() : 0);
result = 31 * result + (this.authorEmail.hashCode());
result = 31 * result + (this.authorName.hashCode());
result = 31 * result + (this.version.hashCode());
result = 31 * result + (this.classifiers != null ? this.classifiers.hashCode() : 0);
result = 31 * result + (this.description != null ? this.description.hashCode() : 0);
result = 31 * result + (this.homepage != null ? this.homepage.hashCode() : 0);
result = 31 * result + (this.license != null ? this.license.hashCode() : 0);
result = 31 * result + (this.packageName != null ? this.packageName.hashCode() : 0);
result = 31 * result + (this.poetryOptions != null ? this.poetryOptions.hashCode() : 0);
result = 31 * result + (this.setupConfig != null ? this.setupConfig.hashCode() : 0);
result = 31 * result + (this.serviceName.hashCode());
result = 31 * result + (this.ignoreGradleWrapper != null ? this.ignoreGradleWrapper.hashCode() : 0);
result = 31 * result + (this.ignoreSmithyBuildOutput != null ? this.ignoreSmithyBuildOutput.hashCode() : 0);
result = 31 * result + (this.modelDir != null ? this.modelDir.hashCode() : 0);
result = 31 * result + (this.smithyBuildOptions != null ? this.smithyBuildOptions.hashCode() : 0);
result = 31 * result + (this.clientLanguages.hashCode());
result = 31 * result + (this.apiSrcDir != null ? this.apiSrcDir.hashCode() : 0);
result = 31 * result + (this.documentationFormats != null ? this.documentationFormats.hashCode() : 0);
result = 31 * result + (this.forceGenerateCodeAndDocs != null ? this.forceGenerateCodeAndDocs.hashCode() : 0);
result = 31 * result + (this.generatedCodeDir != null ? this.generatedCodeDir.hashCode() : 0);
result = 31 * result + (this.javaClientOptions != null ? this.javaClientOptions.hashCode() : 0);
result = 31 * result + (this.parsedSpecFileName != null ? this.parsedSpecFileName.hashCode() : 0);
result = 31 * result + (this.pythonClientOptions != null ? this.pythonClientOptions.hashCode() : 0);
result = 31 * result + (this.typescriptClientOptions != null ? this.typescriptClientOptions.hashCode() : 0);
return result;
}
}
}