Skip to content

RosCacheRule

This class is a base encapsulation around the ROS resource type ALIYUN::ESA::CacheRule.

Initializers

import { RosCacheRule } from '@alicloud/ros-cdk-esa'
new RosCacheRule(scope: Construct, id: string, props: RosCacheRuleProps, enableResourcePropertyConstraint: boolean)
Name Type Description
scope @alicloud/ros-cdk-core.Construct - scope in which this resource is defined.
id string - scoped id of the resource.
props RosCacheRuleProps - resource properties.
enableResourcePropertyConstraint boolean No description.

scopeRequired

  • Type: @alicloud/ros-cdk-core.Construct

scope in which this resource is defined.


idRequired

  • Type: string

scoped id of the resource.


propsRequired

resource properties.


enableResourcePropertyConstraintRequired

  • Type: boolean

Methods

Name Description
toString Returns a string representation of this construct.
synthesize Allows this construct to emit artifacts into the cloud assembly during synthesis.
overrideLogicalId Overrides the auto-generated logical ID with a specific ID.
addCondition No description.
addCount No description.
addDeletionOverride Syntactic sugar for addOverride(path, undefined).
addDependsOn Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
addDesc No description.
addMetaData No description.
addOverride Adds an override to the synthesized ROS resource.
addPropertyDeletionOverride Adds an override that deletes the value of a property from the resource definition.
addPropertyOverride Adds an override to a resource property.
addRosDependency No description.
applyRemovalPolicy Sets the deletion policy of the resource based on the removal policy specified.
fetchCondition No description.
fetchDesc No description.
fetchRosDependency No description.
getAtt Returns a token for an runtime attribute of this resource.

toString

public toString(): string

Returns a string representation of this construct.

synthesize

public synthesize(session: ISynthesisSession): void

Allows this construct to emit artifacts into the cloud assembly during synthesis.

This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.

sessionRequired

  • Type: @alicloud/ros-cdk-core.ISynthesisSession

The synthesis session.


overrideLogicalId

public overrideLogicalId(newLogicalId: string): void

Overrides the auto-generated logical ID with a specific ID.

newLogicalIdRequired

  • Type: string

The new logical ID to use for this stack element.


addCondition

public addCondition(con: RosCondition): void

conRequired

  • Type: @alicloud/ros-cdk-core.RosCondition

addCount

public addCount(count: number | IResolvable): void

countRequired

  • Type: number | @alicloud/ros-cdk-core.IResolvable

addDeletionOverride

public addDeletionOverride(path: string): void

Syntactic sugar for addOverride(path, undefined).

pathRequired

  • Type: string

The path of the value to delete.


addDependsOn

public addDependsOn(target: RosResource): void

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.

targetRequired

  • Type: @alicloud/ros-cdk-core.RosResource

addDesc

public addDesc(desc: string): void

descRequired

  • Type: string

addMetaData

public addMetaData(key: string, value: any): void

keyRequired

  • Type: string

valueRequired

  • Type: any

addOverride

public addOverride(path: string, value: any): void

Adds an override to the synthesized ROS resource.

To add a property override, either use addPropertyOverride or prefix path with "Properties." (i.e. Properties.TopicName).

If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.

For example,

addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute'])
addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE')

would add the overrides

"Properties": {
   "GlobalSecondaryIndexes": [
     {
       "Projection": {
         "NonKeyAttributes": [ "myattribute" ]
         ...
       }
       ...
     },
     {
       "ProjectionType": "INCLUDE"
       ...
     },
   ]
   ...
}

pathRequired

  • Type: string

The path of the property, you can use dot notation to override values in complex types.

Any intermdediate keys will be created as needed.


valueRequired

  • Type: any

The value.

Could be primitive or complex.


addPropertyDeletionOverride

public addPropertyDeletionOverride(propertyPath: string): void

Adds an override that deletes the value of a property from the resource definition.

propertyPathRequired

  • Type: string

The path to the property.


addPropertyOverride

public addPropertyOverride(propertyPath: string, value: any): void

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

propertyPathRequired

  • Type: string

The path of the property.


valueRequired

  • Type: any

The value.


addRosDependency

public addRosDependency(target: string): void

targetRequired

  • Type: string

applyRemovalPolicy

public applyRemovalPolicy(policy?: RemovalPolicy, options?: RemovalPolicyOptions): void

Sets the deletion policy of the resource based on the removal policy specified.

policyOptional

  • Type: @alicloud/ros-cdk-core.RemovalPolicy

optionsOptional

  • Type: @alicloud/ros-cdk-core.RemovalPolicyOptions

fetchCondition

public fetchCondition(): RosCondition

fetchDesc

public fetchDesc(): string

fetchRosDependency

public fetchRosDependency(): string[]

getAtt

public getAtt(attributeName: string): Reference

Returns a token for an runtime attribute of this resource.

Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility in case there is no generated attribute.

attributeNameRequired

  • Type: string

The name of the attribute.


Static Functions

Name Description
isConstruct Return whether the given object is a Construct.
isRosElement Returns true if a construct is a stack element (i.e. part of the synthesized template).
isRosResource Check whether the given construct is a RosResource.

isConstruct

import { RosCacheRule } from '@alicloud/ros-cdk-esa'
RosCacheRule.isConstruct(x: any)

Return whether the given object is a Construct.

xRequired

  • Type: any

isRosElement

import { RosCacheRule } from '@alicloud/ros-cdk-esa'
RosCacheRule.isRosElement(x: any)

Returns true if a construct is a stack element (i.e. part of the synthesized template).

Uses duck-typing instead of instanceof to allow stack elements from different versions of this library to be included in the same stack.

xRequired

  • Type: any

isRosResource

import { RosCacheRule } from '@alicloud/ros-cdk-esa'
RosCacheRule.isRosResource(construct: IConstruct)

Check whether the given construct is a RosResource.

constructRequired

  • Type: @alicloud/ros-cdk-core.IConstruct

Properties

Name Type Description
node @alicloud/ros-cdk-core.ConstructNode The construct tree node associated with this construct.
creationStack string[] No description.
logicalId string The logical ID for this stack element.
stack @alicloud/ros-cdk-core.Stack The stack in which this element is defined.
ref string Return a string that will be resolved to a RosTemplate { Ref } for this element.
rosOptions @alicloud/ros-cdk-core.IRosResourceOptions Options for this resource, such as condition, update policy etc.
rosResourceType string ROS resource type.
attrAdditionalCacheablePorts @alicloud/ros-cdk-core.IResolvable No description.
attrBrowserCacheMode @alicloud/ros-cdk-core.IResolvable No description.
attrBrowserCacheTtl @alicloud/ros-cdk-core.IResolvable No description.
attrBypassCache @alicloud/ros-cdk-core.IResolvable No description.
attrCacheDeceptionArmor @alicloud/ros-cdk-core.IResolvable No description.
attrCacheReserveEligibility @alicloud/ros-cdk-core.IResolvable No description.
attrCacheRuleId @alicloud/ros-cdk-core.IResolvable No description.
attrCheckPresenceCookie @alicloud/ros-cdk-core.IResolvable No description.
attrCheckPresenceHeader @alicloud/ros-cdk-core.IResolvable No description.
attrConfigType @alicloud/ros-cdk-core.IResolvable No description.
attrEdgeCacheMode @alicloud/ros-cdk-core.IResolvable No description.
attrEdgeCacheTtl @alicloud/ros-cdk-core.IResolvable No description.
attrEdgeStatusCodeCacheTtl @alicloud/ros-cdk-core.IResolvable No description.
attrIncludeCookie @alicloud/ros-cdk-core.IResolvable No description.
attrIncludeHeader @alicloud/ros-cdk-core.IResolvable No description.
attrQueryString @alicloud/ros-cdk-core.IResolvable No description.
attrQueryStringMode @alicloud/ros-cdk-core.IResolvable No description.
attrRule @alicloud/ros-cdk-core.IResolvable No description.
attrRuleEnable @alicloud/ros-cdk-core.IResolvable No description.
attrRuleName @alicloud/ros-cdk-core.IResolvable No description.
attrSequence @alicloud/ros-cdk-core.IResolvable No description.
attrServeStale @alicloud/ros-cdk-core.IResolvable No description.
attrSiteVersion @alicloud/ros-cdk-core.IResolvable No description.
attrSortQueryStringForCache @alicloud/ros-cdk-core.IResolvable No description.
attrUserDeviceType @alicloud/ros-cdk-core.IResolvable No description.
attrUserGeo @alicloud/ros-cdk-core.IResolvable No description.
attrUserLanguage @alicloud/ros-cdk-core.IResolvable No description.
enableResourcePropertyConstraint boolean No description.
siteId number | @alicloud/ros-cdk-core.IResolvable No description.
additionalCacheablePorts number | @alicloud/ros-cdk-core.IResolvable No description.
browserCacheMode string | @alicloud/ros-cdk-core.IResolvable No description.
browserCacheTtl number | @alicloud/ros-cdk-core.IResolvable No description.
bypassCache string | @alicloud/ros-cdk-core.IResolvable No description.
cacheDeceptionArmor string | @alicloud/ros-cdk-core.IResolvable No description.
cacheReserveEligibility string | @alicloud/ros-cdk-core.IResolvable No description.
checkPresenceCookie string | @alicloud/ros-cdk-core.IResolvable No description.
checkPresenceHeader string | @alicloud/ros-cdk-core.IResolvable No description.
edgeCacheMode string | @alicloud/ros-cdk-core.IResolvable No description.
edgeCacheTtl number | @alicloud/ros-cdk-core.IResolvable No description.
edgeStatusCodeCacheTtl string | @alicloud/ros-cdk-core.IResolvable No description.
includeCookie string | @alicloud/ros-cdk-core.IResolvable No description.
includeHeader string | @alicloud/ros-cdk-core.IResolvable No description.
queryString string | @alicloud/ros-cdk-core.IResolvable No description.
queryStringMode string | @alicloud/ros-cdk-core.IResolvable No description.
rule string | @alicloud/ros-cdk-core.IResolvable No description.
ruleEnable string | @alicloud/ros-cdk-core.IResolvable No description.
ruleName string | @alicloud/ros-cdk-core.IResolvable No description.
sequence number | @alicloud/ros-cdk-core.IResolvable No description.
serveStale string | @alicloud/ros-cdk-core.IResolvable No description.
siteVersion number | @alicloud/ros-cdk-core.IResolvable No description.
sortQueryStringForCache string | @alicloud/ros-cdk-core.IResolvable No description.
userDeviceType string | @alicloud/ros-cdk-core.IResolvable No description.
userGeo string | @alicloud/ros-cdk-core.IResolvable No description.
userLanguage string | @alicloud/ros-cdk-core.IResolvable No description.

nodeRequired

public readonly node: ConstructNode;
  • Type: @alicloud/ros-cdk-core.ConstructNode

The construct tree node associated with this construct.


creationStackRequired

public readonly creationStack: string[];
  • Type: string[]

logicalIdRequired

public readonly logicalId: string;
  • Type: string

The logical ID for this stack element.

The logical ID of the element is calculated from the path of the resource node in the construct tree.

To override this value, use overrideLogicalId(newLogicalId).


stackRequired

public readonly stack: Stack;
  • Type: @alicloud/ros-cdk-core.Stack

The stack in which this element is defined.

RosElements must be defined within a stack scope (directly or indirectly).


refRequired

public readonly ref: string;
  • Type: string

Return a string that will be resolved to a RosTemplate { Ref } for this element.

If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).


rosOptionsRequired

public readonly rosOptions: IRosResourceOptions;
  • Type: @alicloud/ros-cdk-core.IRosResourceOptions

Options for this resource, such as condition, update policy etc.


rosResourceTypeRequired

public readonly rosResourceType: string;
  • Type: string

ROS resource type.


attrAdditionalCacheablePortsRequired

public readonly attrAdditionalCacheablePorts: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrBrowserCacheModeRequired

public readonly attrBrowserCacheMode: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrBrowserCacheTtlRequired

public readonly attrBrowserCacheTtl: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrBypassCacheRequired

public readonly attrBypassCache: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrCacheDeceptionArmorRequired

public readonly attrCacheDeceptionArmor: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrCacheReserveEligibilityRequired

public readonly attrCacheReserveEligibility: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrCacheRuleIdRequired

public readonly attrCacheRuleId: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrCheckPresenceCookieRequired

public readonly attrCheckPresenceCookie: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrCheckPresenceHeaderRequired

public readonly attrCheckPresenceHeader: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrConfigTypeRequired

public readonly attrConfigType: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrEdgeCacheModeRequired

public readonly attrEdgeCacheMode: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrEdgeCacheTtlRequired

public readonly attrEdgeCacheTtl: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrEdgeStatusCodeCacheTtlRequired

public readonly attrEdgeStatusCodeCacheTtl: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrIncludeCookieRequired

public readonly attrIncludeCookie: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrIncludeHeaderRequired

public readonly attrIncludeHeader: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrQueryStringRequired

public readonly attrQueryString: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrQueryStringModeRequired

public readonly attrQueryStringMode: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrRuleRequired

public readonly attrRule: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrRuleEnableRequired

public readonly attrRuleEnable: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrRuleNameRequired

public readonly attrRuleName: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrSequenceRequired

public readonly attrSequence: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrServeStaleRequired

public readonly attrServeStale: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrSiteVersionRequired

public readonly attrSiteVersion: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrSortQueryStringForCacheRequired

public readonly attrSortQueryStringForCache: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrUserDeviceTypeRequired

public readonly attrUserDeviceType: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrUserGeoRequired

public readonly attrUserGeo: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

attrUserLanguageRequired

public readonly attrUserLanguage: IResolvable;
  • Type: @alicloud/ros-cdk-core.IResolvable

enableResourcePropertyConstraintRequired

public readonly enableResourcePropertyConstraint: boolean;
  • Type: boolean

siteIdRequired

public readonly siteId: number | IResolvable;
  • Type: number | @alicloud/ros-cdk-core.IResolvable

additionalCacheablePortsOptional

public readonly additionalCacheablePorts: number | IResolvable;
  • Type: number | @alicloud/ros-cdk-core.IResolvable

browserCacheModeOptional

public readonly browserCacheMode: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

browserCacheTtlOptional

public readonly browserCacheTtl: number | IResolvable;
  • Type: number | @alicloud/ros-cdk-core.IResolvable

bypassCacheOptional

public readonly bypassCache: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

cacheDeceptionArmorOptional

public readonly cacheDeceptionArmor: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

cacheReserveEligibilityOptional

public readonly cacheReserveEligibility: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

checkPresenceCookieOptional

public readonly checkPresenceCookie: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

checkPresenceHeaderOptional

public readonly checkPresenceHeader: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

edgeCacheModeOptional

public readonly edgeCacheMode: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

edgeCacheTtlOptional

public readonly edgeCacheTtl: number | IResolvable;
  • Type: number | @alicloud/ros-cdk-core.IResolvable

edgeStatusCodeCacheTtlOptional

public readonly edgeStatusCodeCacheTtl: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

includeCookieOptional

public readonly includeCookie: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

includeHeaderOptional

public readonly includeHeader: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

queryStringOptional

public readonly queryString: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

queryStringModeOptional

public readonly queryStringMode: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

ruleOptional

public readonly rule: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

ruleEnableOptional

public readonly ruleEnable: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

ruleNameOptional

public readonly ruleName: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

sequenceOptional

public readonly sequence: number | IResolvable;
  • Type: number | @alicloud/ros-cdk-core.IResolvable

serveStaleOptional

public readonly serveStale: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

siteVersionOptional

public readonly siteVersion: number | IResolvable;
  • Type: number | @alicloud/ros-cdk-core.IResolvable

sortQueryStringForCacheOptional

public readonly sortQueryStringForCache: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

userDeviceTypeOptional

public readonly userDeviceType: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

userGeoOptional

public readonly userGeo: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

userLanguageOptional

public readonly userLanguage: string | IResolvable;
  • Type: string | @alicloud/ros-cdk-core.IResolvable

Constants

Name Type Description
ROS_RESOURCE_TYPE_NAME string The resource type name for this resource class.

ROS_RESOURCE_TYPE_NAMERequired

public readonly ROS_RESOURCE_TYPE_NAME: string;
  • Type: string

The resource type name for this resource class.