@cdktf/provider-google
Version:
Prebuilt google Provider for Terraform CDK (cdktf)
1,256 lines (1,255 loc) • 214 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CloudSchedulerJob = exports.CloudSchedulerJobTimeoutsOutputReference = exports.cloudSchedulerJobTimeoutsToHclTerraform = exports.cloudSchedulerJobTimeoutsToTerraform = exports.CloudSchedulerJobRetryConfigOutputReference = exports.cloudSchedulerJobRetryConfigToHclTerraform = exports.cloudSchedulerJobRetryConfigToTerraform = exports.CloudSchedulerJobPubsubTargetOutputReference = exports.cloudSchedulerJobPubsubTargetToHclTerraform = exports.cloudSchedulerJobPubsubTargetToTerraform = exports.CloudSchedulerJobHttpTargetOutputReference = exports.cloudSchedulerJobHttpTargetToHclTerraform = exports.cloudSchedulerJobHttpTargetToTerraform = exports.CloudSchedulerJobHttpTargetOidcTokenOutputReference = exports.cloudSchedulerJobHttpTargetOidcTokenToHclTerraform = exports.cloudSchedulerJobHttpTargetOidcTokenToTerraform = exports.CloudSchedulerJobHttpTargetOauthTokenOutputReference = exports.cloudSchedulerJobHttpTargetOauthTokenToHclTerraform = exports.cloudSchedulerJobHttpTargetOauthTokenToTerraform = exports.CloudSchedulerJobAppEngineHttpTargetOutputReference = exports.cloudSchedulerJobAppEngineHttpTargetToHclTerraform = exports.cloudSchedulerJobAppEngineHttpTargetToTerraform = exports.CloudSchedulerJobAppEngineHttpTargetAppEngineRoutingOutputReference = exports.cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToHclTerraform = exports.cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
instance: cdktf.stringToTerraform(struct.instance),
service: cdktf.stringToTerraform(struct.service),
version: cdktf.stringToTerraform(struct.version),
};
}
exports.cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToTerraform = cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToTerraform;
function cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
instance: {
value: cdktf.stringToHclTerraform(struct.instance),
isBlock: false,
type: "simple",
storageClassType: "string",
},
service: {
value: cdktf.stringToHclTerraform(struct.service),
isBlock: false,
type: "simple",
storageClassType: "string",
},
version: {
value: cdktf.stringToHclTerraform(struct.version),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToHclTerraform = cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToHclTerraform;
class CloudSchedulerJobAppEngineHttpTargetAppEngineRoutingOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._instance !== undefined) {
hasAnyValues = true;
internalValueResult.instance = this._instance;
}
if (this._service !== undefined) {
hasAnyValues = true;
internalValueResult.service = this._service;
}
if (this._version !== undefined) {
hasAnyValues = true;
internalValueResult.version = this._version;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._instance = undefined;
this._service = undefined;
this._version = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._instance = value.instance;
this._service = value.service;
this._version = value.version;
}
}
get instance() {
return this.getStringAttribute('instance');
}
set instance(value) {
this._instance = value;
}
resetInstance() {
this._instance = undefined;
}
// Temporarily expose input value. Use with caution.
get instanceInput() {
return this._instance;
}
get service() {
return this.getStringAttribute('service');
}
set service(value) {
this._service = value;
}
resetService() {
this._service = undefined;
}
// Temporarily expose input value. Use with caution.
get serviceInput() {
return this._service;
}
get version() {
return this.getStringAttribute('version');
}
set version(value) {
this._version = value;
}
resetVersion() {
this._version = undefined;
}
// Temporarily expose input value. Use with caution.
get versionInput() {
return this._version;
}
}
exports.CloudSchedulerJobAppEngineHttpTargetAppEngineRoutingOutputReference = CloudSchedulerJobAppEngineHttpTargetAppEngineRoutingOutputReference;
_a = JSII_RTTI_SYMBOL_1;
CloudSchedulerJobAppEngineHttpTargetAppEngineRoutingOutputReference[_a] = { fqn: "@cdktf/provider-google.cloudSchedulerJob.CloudSchedulerJobAppEngineHttpTargetAppEngineRoutingOutputReference", version: "14.12.0" };
function cloudSchedulerJobAppEngineHttpTargetToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
body: cdktf.stringToTerraform(struct.body),
headers: cdktf.hashMapper(cdktf.stringToTerraform)(struct.headers),
http_method: cdktf.stringToTerraform(struct.httpMethod),
relative_uri: cdktf.stringToTerraform(struct.relativeUri),
app_engine_routing: cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToTerraform(struct.appEngineRouting),
};
}
exports.cloudSchedulerJobAppEngineHttpTargetToTerraform = cloudSchedulerJobAppEngineHttpTargetToTerraform;
function cloudSchedulerJobAppEngineHttpTargetToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
body: {
value: cdktf.stringToHclTerraform(struct.body),
isBlock: false,
type: "simple",
storageClassType: "string",
},
headers: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.headers),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
http_method: {
value: cdktf.stringToHclTerraform(struct.httpMethod),
isBlock: false,
type: "simple",
storageClassType: "string",
},
relative_uri: {
value: cdktf.stringToHclTerraform(struct.relativeUri),
isBlock: false,
type: "simple",
storageClassType: "string",
},
app_engine_routing: {
value: cloudSchedulerJobAppEngineHttpTargetAppEngineRoutingToHclTerraform(struct.appEngineRouting),
isBlock: true,
type: "list",
storageClassType: "CloudSchedulerJobAppEngineHttpTargetAppEngineRoutingList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.cloudSchedulerJobAppEngineHttpTargetToHclTerraform = cloudSchedulerJobAppEngineHttpTargetToHclTerraform;
class CloudSchedulerJobAppEngineHttpTargetOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// app_engine_routing - computed: false, optional: true, required: false
this._appEngineRouting = new CloudSchedulerJobAppEngineHttpTargetAppEngineRoutingOutputReference(this, "app_engine_routing");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._body !== undefined) {
hasAnyValues = true;
internalValueResult.body = this._body;
}
if (this._headers !== undefined) {
hasAnyValues = true;
internalValueResult.headers = this._headers;
}
if (this._httpMethod !== undefined) {
hasAnyValues = true;
internalValueResult.httpMethod = this._httpMethod;
}
if (this._relativeUri !== undefined) {
hasAnyValues = true;
internalValueResult.relativeUri = this._relativeUri;
}
if (this._appEngineRouting?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.appEngineRouting = this._appEngineRouting?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._body = undefined;
this._headers = undefined;
this._httpMethod = undefined;
this._relativeUri = undefined;
this._appEngineRouting.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._body = value.body;
this._headers = value.headers;
this._httpMethod = value.httpMethod;
this._relativeUri = value.relativeUri;
this._appEngineRouting.internalValue = value.appEngineRouting;
}
}
get body() {
return this.getStringAttribute('body');
}
set body(value) {
this._body = value;
}
resetBody() {
this._body = undefined;
}
// Temporarily expose input value. Use with caution.
get bodyInput() {
return this._body;
}
get headers() {
return this.getStringMapAttribute('headers');
}
set headers(value) {
this._headers = value;
}
resetHeaders() {
this._headers = undefined;
}
// Temporarily expose input value. Use with caution.
get headersInput() {
return this._headers;
}
get httpMethod() {
return this.getStringAttribute('http_method');
}
set httpMethod(value) {
this._httpMethod = value;
}
resetHttpMethod() {
this._httpMethod = undefined;
}
// Temporarily expose input value. Use with caution.
get httpMethodInput() {
return this._httpMethod;
}
get relativeUri() {
return this.getStringAttribute('relative_uri');
}
set relativeUri(value) {
this._relativeUri = value;
}
// Temporarily expose input value. Use with caution.
get relativeUriInput() {
return this._relativeUri;
}
get appEngineRouting() {
return this._appEngineRouting;
}
putAppEngineRouting(value) {
this._appEngineRouting.internalValue = value;
}
resetAppEngineRouting() {
this._appEngineRouting.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get appEngineRoutingInput() {
return this._appEngineRouting.internalValue;
}
}
exports.CloudSchedulerJobAppEngineHttpTargetOutputReference = CloudSchedulerJobAppEngineHttpTargetOutputReference;
_b = JSII_RTTI_SYMBOL_1;
CloudSchedulerJobAppEngineHttpTargetOutputReference[_b] = { fqn: "@cdktf/provider-google.cloudSchedulerJob.CloudSchedulerJobAppEngineHttpTargetOutputReference", version: "14.12.0" };
function cloudSchedulerJobHttpTargetOauthTokenToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
scope: cdktf.stringToTerraform(struct.scope),
service_account_email: cdktf.stringToTerraform(struct.serviceAccountEmail),
};
}
exports.cloudSchedulerJobHttpTargetOauthTokenToTerraform = cloudSchedulerJobHttpTargetOauthTokenToTerraform;
function cloudSchedulerJobHttpTargetOauthTokenToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
scope: {
value: cdktf.stringToHclTerraform(struct.scope),
isBlock: false,
type: "simple",
storageClassType: "string",
},
service_account_email: {
value: cdktf.stringToHclTerraform(struct.serviceAccountEmail),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.cloudSchedulerJobHttpTargetOauthTokenToHclTerraform = cloudSchedulerJobHttpTargetOauthTokenToHclTerraform;
class CloudSchedulerJobHttpTargetOauthTokenOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._scope !== undefined) {
hasAnyValues = true;
internalValueResult.scope = this._scope;
}
if (this._serviceAccountEmail !== undefined) {
hasAnyValues = true;
internalValueResult.serviceAccountEmail = this._serviceAccountEmail;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._scope = undefined;
this._serviceAccountEmail = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._scope = value.scope;
this._serviceAccountEmail = value.serviceAccountEmail;
}
}
get scope() {
return this.getStringAttribute('scope');
}
set scope(value) {
this._scope = value;
}
resetScope() {
this._scope = undefined;
}
// Temporarily expose input value. Use with caution.
get scopeInput() {
return this._scope;
}
get serviceAccountEmail() {
return this.getStringAttribute('service_account_email');
}
set serviceAccountEmail(value) {
this._serviceAccountEmail = value;
}
// Temporarily expose input value. Use with caution.
get serviceAccountEmailInput() {
return this._serviceAccountEmail;
}
}
exports.CloudSchedulerJobHttpTargetOauthTokenOutputReference = CloudSchedulerJobHttpTargetOauthTokenOutputReference;
_c = JSII_RTTI_SYMBOL_1;
CloudSchedulerJobHttpTargetOauthTokenOutputReference[_c] = { fqn: "@cdktf/provider-google.cloudSchedulerJob.CloudSchedulerJobHttpTargetOauthTokenOutputReference", version: "14.12.0" };
function cloudSchedulerJobHttpTargetOidcTokenToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
audience: cdktf.stringToTerraform(struct.audience),
service_account_email: cdktf.stringToTerraform(struct.serviceAccountEmail),
};
}
exports.cloudSchedulerJobHttpTargetOidcTokenToTerraform = cloudSchedulerJobHttpTargetOidcTokenToTerraform;
function cloudSchedulerJobHttpTargetOidcTokenToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
audience: {
value: cdktf.stringToHclTerraform(struct.audience),
isBlock: false,
type: "simple",
storageClassType: "string",
},
service_account_email: {
value: cdktf.stringToHclTerraform(struct.serviceAccountEmail),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.cloudSchedulerJobHttpTargetOidcTokenToHclTerraform = cloudSchedulerJobHttpTargetOidcTokenToHclTerraform;
class CloudSchedulerJobHttpTargetOidcTokenOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._audience !== undefined) {
hasAnyValues = true;
internalValueResult.audience = this._audience;
}
if (this._serviceAccountEmail !== undefined) {
hasAnyValues = true;
internalValueResult.serviceAccountEmail = this._serviceAccountEmail;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._audience = undefined;
this._serviceAccountEmail = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._audience = value.audience;
this._serviceAccountEmail = value.serviceAccountEmail;
}
}
get audience() {
return this.getStringAttribute('audience');
}
set audience(value) {
this._audience = value;
}
resetAudience() {
this._audience = undefined;
}
// Temporarily expose input value. Use with caution.
get audienceInput() {
return this._audience;
}
get serviceAccountEmail() {
return this.getStringAttribute('service_account_email');
}
set serviceAccountEmail(value) {
this._serviceAccountEmail = value;
}
// Temporarily expose input value. Use with caution.
get serviceAccountEmailInput() {
return this._serviceAccountEmail;
}
}
exports.CloudSchedulerJobHttpTargetOidcTokenOutputReference = CloudSchedulerJobHttpTargetOidcTokenOutputReference;
_d = JSII_RTTI_SYMBOL_1;
CloudSchedulerJobHttpTargetOidcTokenOutputReference[_d] = { fqn: "@cdktf/provider-google.cloudSchedulerJob.CloudSchedulerJobHttpTargetOidcTokenOutputReference", version: "14.12.0" };
function cloudSchedulerJobHttpTargetToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
body: cdktf.stringToTerraform(struct.body),
headers: cdktf.hashMapper(cdktf.stringToTerraform)(struct.headers),
http_method: cdktf.stringToTerraform(struct.httpMethod),
uri: cdktf.stringToTerraform(struct.uri),
oauth_token: cloudSchedulerJobHttpTargetOauthTokenToTerraform(struct.oauthToken),
oidc_token: cloudSchedulerJobHttpTargetOidcTokenToTerraform(struct.oidcToken),
};
}
exports.cloudSchedulerJobHttpTargetToTerraform = cloudSchedulerJobHttpTargetToTerraform;
function cloudSchedulerJobHttpTargetToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
body: {
value: cdktf.stringToHclTerraform(struct.body),
isBlock: false,
type: "simple",
storageClassType: "string",
},
headers: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.headers),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
http_method: {
value: cdktf.stringToHclTerraform(struct.httpMethod),
isBlock: false,
type: "simple",
storageClassType: "string",
},
uri: {
value: cdktf.stringToHclTerraform(struct.uri),
isBlock: false,
type: "simple",
storageClassType: "string",
},
oauth_token: {
value: cloudSchedulerJobHttpTargetOauthTokenToHclTerraform(struct.oauthToken),
isBlock: true,
type: "list",
storageClassType: "CloudSchedulerJobHttpTargetOauthTokenList",
},
oidc_token: {
value: cloudSchedulerJobHttpTargetOidcTokenToHclTerraform(struct.oidcToken),
isBlock: true,
type: "list",
storageClassType: "CloudSchedulerJobHttpTargetOidcTokenList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.cloudSchedulerJobHttpTargetToHclTerraform = cloudSchedulerJobHttpTargetToHclTerraform;
class CloudSchedulerJobHttpTargetOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// oauth_token - computed: false, optional: true, required: false
this._oauthToken = new CloudSchedulerJobHttpTargetOauthTokenOutputReference(this, "oauth_token");
// oidc_token - computed: false, optional: true, required: false
this._oidcToken = new CloudSchedulerJobHttpTargetOidcTokenOutputReference(this, "oidc_token");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._body !== undefined) {
hasAnyValues = true;
internalValueResult.body = this._body;
}
if (this._headers !== undefined) {
hasAnyValues = true;
internalValueResult.headers = this._headers;
}
if (this._httpMethod !== undefined) {
hasAnyValues = true;
internalValueResult.httpMethod = this._httpMethod;
}
if (this._uri !== undefined) {
hasAnyValues = true;
internalValueResult.uri = this._uri;
}
if (this._oauthToken?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.oauthToken = this._oauthToken?.internalValue;
}
if (this._oidcToken?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.oidcToken = this._oidcToken?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._body = undefined;
this._headers = undefined;
this._httpMethod = undefined;
this._uri = undefined;
this._oauthToken.internalValue = undefined;
this._oidcToken.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._body = value.body;
this._headers = value.headers;
this._httpMethod = value.httpMethod;
this._uri = value.uri;
this._oauthToken.internalValue = value.oauthToken;
this._oidcToken.internalValue = value.oidcToken;
}
}
get body() {
return this.getStringAttribute('body');
}
set body(value) {
this._body = value;
}
resetBody() {
this._body = undefined;
}
// Temporarily expose input value. Use with caution.
get bodyInput() {
return this._body;
}
get headers() {
return this.getStringMapAttribute('headers');
}
set headers(value) {
this._headers = value;
}
resetHeaders() {
this._headers = undefined;
}
// Temporarily expose input value. Use with caution.
get headersInput() {
return this._headers;
}
get httpMethod() {
return this.getStringAttribute('http_method');
}
set httpMethod(value) {
this._httpMethod = value;
}
resetHttpMethod() {
this._httpMethod = undefined;
}
// Temporarily expose input value. Use with caution.
get httpMethodInput() {
return this._httpMethod;
}
get uri() {
return this.getStringAttribute('uri');
}
set uri(value) {
this._uri = value;
}
// Temporarily expose input value. Use with caution.
get uriInput() {
return this._uri;
}
get oauthToken() {
return this._oauthToken;
}
putOauthToken(value) {
this._oauthToken.internalValue = value;
}
resetOauthToken() {
this._oauthToken.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get oauthTokenInput() {
return this._oauthToken.internalValue;
}
get oidcToken() {
return this._oidcToken;
}
putOidcToken(value) {
this._oidcToken.internalValue = value;
}
resetOidcToken() {
this._oidcToken.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get oidcTokenInput() {
return this._oidcToken.internalValue;
}
}
exports.CloudSchedulerJobHttpTargetOutputReference = CloudSchedulerJobHttpTargetOutputReference;
_e = JSII_RTTI_SYMBOL_1;
CloudSchedulerJobHttpTargetOutputReference[_e] = { fqn: "@cdktf/provider-google.cloudSchedulerJob.CloudSchedulerJobHttpTargetOutputReference", version: "14.12.0" };
function cloudSchedulerJobPubsubTargetToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
attributes: cdktf.hashMapper(cdktf.stringToTerraform)(struct.attributes),
data: cdktf.stringToTerraform(struct.data),
topic_name: cdktf.stringToTerraform(struct.topicName),
};
}
exports.cloudSchedulerJobPubsubTargetToTerraform = cloudSchedulerJobPubsubTargetToTerraform;
function cloudSchedulerJobPubsubTargetToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
attributes: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.attributes),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
data: {
value: cdktf.stringToHclTerraform(struct.data),
isBlock: false,
type: "simple",
storageClassType: "string",
},
topic_name: {
value: cdktf.stringToHclTerraform(struct.topicName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.cloudSchedulerJobPubsubTargetToHclTerraform = cloudSchedulerJobPubsubTargetToHclTerraform;
class CloudSchedulerJobPubsubTargetOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._attributes !== undefined) {
hasAnyValues = true;
internalValueResult.attributes = this._attributes;
}
if (this._data !== undefined) {
hasAnyValues = true;
internalValueResult.data = this._data;
}
if (this._topicName !== undefined) {
hasAnyValues = true;
internalValueResult.topicName = this._topicName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._attributes = undefined;
this._data = undefined;
this._topicName = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._attributes = value.attributes;
this._data = value.data;
this._topicName = value.topicName;
}
}
get attributes() {
return this.getStringMapAttribute('attributes');
}
set attributes(value) {
this._attributes = value;
}
resetAttributes() {
this._attributes = undefined;
}
// Temporarily expose input value. Use with caution.
get attributesInput() {
return this._attributes;
}
get data() {
return this.getStringAttribute('data');
}
set data(value) {
this._data = value;
}
resetData() {
this._data = undefined;
}
// Temporarily expose input value. Use with caution.
get dataInput() {
return this._data;
}
get topicName() {
return this.getStringAttribute('topic_name');
}
set topicName(value) {
this._topicName = value;
}
// Temporarily expose input value. Use with caution.
get topicNameInput() {
return this._topicName;
}
}
exports.CloudSchedulerJobPubsubTargetOutputReference = CloudSchedulerJobPubsubTargetOutputReference;
_f = JSII_RTTI_SYMBOL_1;
CloudSchedulerJobPubsubTargetOutputReference[_f] = { fqn: "@cdktf/provider-google.cloudSchedulerJob.CloudSchedulerJobPubsubTargetOutputReference", version: "14.12.0" };
function cloudSchedulerJobRetryConfigToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
max_backoff_duration: cdktf.stringToTerraform(struct.maxBackoffDuration),
max_doublings: cdktf.numberToTerraform(struct.maxDoublings),
max_retry_duration: cdktf.stringToTerraform(struct.maxRetryDuration),
min_backoff_duration: cdktf.stringToTerraform(struct.minBackoffDuration),
retry_count: cdktf.numberToTerraform(struct.retryCount),
};
}
exports.cloudSchedulerJobRetryConfigToTerraform = cloudSchedulerJobRetryConfigToTerraform;
function cloudSchedulerJobRetryConfigToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
max_backoff_duration: {
value: cdktf.stringToHclTerraform(struct.maxBackoffDuration),
isBlock: false,
type: "simple",
storageClassType: "string",
},
max_doublings: {
value: cdktf.numberToHclTerraform(struct.maxDoublings),
isBlock: false,
type: "simple",
storageClassType: "number",
},
max_retry_duration: {
value: cdktf.stringToHclTerraform(struct.maxRetryDuration),
isBlock: false,
type: "simple",
storageClassType: "string",
},
min_backoff_duration: {
value: cdktf.stringToHclTerraform(struct.minBackoffDuration),
isBlock: false,
type: "simple",
storageClassType: "string",
},
retry_count: {
value: cdktf.numberToHclTerraform(struct.retryCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.cloudSchedulerJobRetryConfigToHclTerraform = cloudSchedulerJobRetryConfigToHclTerraform;
class CloudSchedulerJobRetryConfigOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._maxBackoffDuration !== undefined) {
hasAnyValues = true;
internalValueResult.maxBackoffDuration = this._maxBackoffDuration;
}
if (this._maxDoublings !== undefined) {
hasAnyValues = true;
internalValueResult.maxDoublings = this._maxDoublings;
}
if (this._maxRetryDuration !== undefined) {
hasAnyValues = true;
internalValueResult.maxRetryDuration = this._maxRetryDuration;
}
if (this._minBackoffDuration !== undefined) {
hasAnyValues = true;
internalValueResult.minBackoffDuration = this._minBackoffDuration;
}
if (this._retryCount !== undefined) {
hasAnyValues = true;
internalValueResult.retryCount = this._retryCount;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._maxBackoffDuration = undefined;
this._maxDoublings = undefined;
this._maxRetryDuration = undefined;
this._minBackoffDuration = undefined;
this._retryCount = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._maxBackoffDuration = value.maxBackoffDuration;
this._maxDoublings = value.maxDoublings;
this._maxRetryDuration = value.maxRetryDuration;
this._minBackoffDuration = value.minBackoffDuration;
this._retryCount = value.retryCount;
}
}
get maxBackoffDuration() {
return this.getStringAttribute('max_backoff_duration');
}
set maxBackoffDuration(value) {
this._maxBackoffDuration = value;
}
resetMaxBackoffDuration() {
this._maxBackoffDuration = undefined;
}
// Temporarily expose input value. Use with caution.
get maxBackoffDurationInput() {
return this._maxBackoffDuration;
}
get maxDoublings() {
return this.getNumberAttribute('max_doublings');
}
set maxDoublings(value) {
this._maxDoublings = value;
}
resetMaxDoublings() {
this._maxDoublings = undefined;
}
// Temporarily expose input value. Use with caution.
get maxDoublingsInput() {
return this._maxDoublings;
}
get maxRetryDuration() {
return this.getStringAttribute('max_retry_duration');
}
set maxRetryDuration(value) {
this._maxRetryDuration = value;
}
resetMaxRetryDuration() {
this._maxRetryDuration = undefined;
}
// Temporarily expose input value. Use with caution.
get maxRetryDurationInput() {
return this._maxRetryDuration;
}
get minBackoffDuration() {
return this.getStringAttribute('min_backoff_duration');
}
set minBackoffDuration(value) {
this._minBackoffDuration = value;
}
resetMinBackoffDuration() {
this._minBackoffDuration = undefined;
}
// Temporarily expose input value. Use with caution.
get minBackoffDurationInput() {
return this._minBackoffDuration;
}
get retryCount() {
return this.getNumberAttribute('retry_count');
}
set retryCount(value) {
this._retryCount = value;
}
resetRetryCount() {
this._retryCount = undefined;
}
// Temporarily expose input value. Use with caution.
get retryCountInput() {
return this._retryCount;
}
}
exports.CloudSchedulerJobRetryConfigOutputReference = CloudSchedulerJobRetryConfigOutputReference;
_g = JSII_RTTI_SYMBOL_1;
CloudSchedulerJobRetryConfigOutputReference[_g] = { fqn: "@cdktf/provider-google.cloudSchedulerJob.CloudSchedulerJobRetryConfigOutputReference", version: "14.12.0" };
function cloudSchedulerJobTimeoutsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
update: cdktf.stringToTerraform(struct.update),
};
}
exports.cloudSchedulerJobTimeoutsToTerraform = cloudSchedulerJobTimeoutsToTerraform;
function cloudSchedulerJobTimeoutsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.cloudSchedulerJobTimeoutsToHclTerraform = cloudSchedulerJobTimeoutsToHclTerraform;
class CloudSchedulerJobTimeoutsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._update = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._create = value.create;
this._delete = value.delete;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.CloudSchedulerJobTimeoutsOutputReference = CloudSchedulerJobTimeoutsOutputReference;
_h = JSII_RTTI_SYMBOL_1;
CloudSchedulerJobTimeoutsOutputReference[_h] = { fqn: "@cdktf/provider-google.cloudSchedulerJob.CloudSchedulerJobTimeoutsOutputReference", version: "14.12.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/cloud_scheduler_job google_cloud_scheduler_job}
*/
class CloudSchedulerJob extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a CloudSchedulerJob resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the CloudSchedulerJob to import
* @param importFromId The id of the existing CloudSchedulerJob that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/cloud_scheduler_job#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the CloudSchedulerJob to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "google_cloud_scheduler_job", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/cloud_scheduler_job google_cloud_scheduler_job} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options CloudSchedulerJobConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'google_cloud_scheduler_job',
terraformGeneratorMetadata: {
providerName: 'google',
providerVersion: '6.13.0',
providerVersionConstraint: '~> 6.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// app_engine_http_target - computed: false, optional: true, required: false
this._appEngineHttpTarget = new CloudSchedulerJobAppEngineHttpTargetOutputReference(this, "app_engine_http_target");
// http_target - computed: false, optional: true, required: false
this._httpTarget = new CloudSchedulerJobHttpTargetOutputReference(this, "http_target");
// pubsub_target - computed: false, optional: true, required: false
this._pubsubTarget = new CloudSchedulerJobPubsubTargetOutputReference(this, "pubsub_target");
// retry_config - computed: false, optional: true, required: false
this._retryConfig = new CloudSchedulerJobRetryConfigOutputReference(this, "retry_config");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new CloudSchedulerJobTimeoutsOutputReference(this, "timeouts");
this._attemptDeadline = config.attemptDeadline;
this._description = config.description;
this._id = config.id;
this._name = config.name;
this._paused = config.paused;
this._project = config.project;
this._region = config.region;
this._schedule = config.schedule;
this._timeZone = config.timeZone;
this._appEngineHttpTarget.internalValue = config.appEngineHttpTarget;
this._httpTarget.internalValue = config.httpTarget;
this._pubsubTarget.internalValue = config.pubsubTarget;
this._retryConfig.internalValue = config.retryConfig;
this._timeouts.internalValue = config.timeouts;
}
get attemptDeadline() {
return this.getStringAttribute('attempt_deadline');
}
set attemptDeadline(value) {
this._attemptDeadline = value;
}
resetAttemptDeadline() {
this._attemptDeadline = undefined;
}
// Temporarily expose input value. Use with caution.
get attemptDeadlineInput() {
return this._attemptDeadline;
}
get description() {
return this.getStringAttribute('description');
}
set description(value) {
this._description = value;
}
resetDescription() {
this._description = undefined;
}
// Temporarily expose input value. Use with caution.
get descriptionInput() {
return this._description;
}
get id() {