Class: AWSCDK::S3::NoncurrentVersionTransition

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
s3/noncurrent_version_transition.rb

Overview

Describes when noncurrent versions transition to a specified storage class.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(storage_class:, transition_after:, noncurrent_versions_to_retain: nil) ⇒ NoncurrentVersionTransition

Returns a new instance of NoncurrentVersionTransition.

Parameters:

  • storage_class (AWSCDK::S3::StorageClass)

    The storage class to which you want the object to transition.

  • transition_after (AWSCDK::Duration)

    Indicates the number of days after creation when objects are transitioned to the specified storage class.

  • noncurrent_versions_to_retain (Numeric, nil) (defaults to: nil)

    Indicates the number of noncurrent version objects to be retained.



10
11
12
13
14
15
16
17
# File 's3/noncurrent_version_transition.rb', line 10

def initialize(storage_class:, transition_after:, noncurrent_versions_to_retain: nil)
  @storage_class = storage_class
  Jsii::Type.check_type(@storage_class, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfczMuU3RvcmFnZUNsYXNzIn0=")), "storageClass")
  @transition_after = transition_after
  Jsii::Type.check_type(@transition_after, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "transitionAfter")
  @noncurrent_versions_to_retain = noncurrent_versions_to_retain
  Jsii::Type.check_type(@noncurrent_versions_to_retain, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "noncurrentVersionsToRetain") unless @noncurrent_versions_to_retain.nil?
end

Instance Attribute Details

#noncurrent_versions_to_retainNumeric? (readonly)

Note:

Default: - No noncurrent version retained.

Indicates the number of noncurrent version objects to be retained.

Can be up to 100 noncurrent versions retained.

Returns:

  • (Numeric, nil)


34
35
36
# File 's3/noncurrent_version_transition.rb', line 34

def noncurrent_versions_to_retain
  @noncurrent_versions_to_retain
end

#storage_classAWSCDK::S3::StorageClass (readonly)

The storage class to which you want the object to transition.



22
23
24
# File 's3/noncurrent_version_transition.rb', line 22

def storage_class
  @storage_class
end

#transition_afterAWSCDK::Duration (readonly)

Note:

Default: - No transition count.

Indicates the number of days after creation when objects are transitioned to the specified storage class.

Returns:



27
28
29
# File 's3/noncurrent_version_transition.rb', line 27

def transition_after
  @transition_after
end

Class Method Details

.jsii_propertiesObject



36
37
38
39
40
41
42
# File 's3/noncurrent_version_transition.rb', line 36

def self.jsii_properties
  {
    :storage_class => "storageClass",
    :transition_after => "transitionAfter",
    :noncurrent_versions_to_retain => "noncurrentVersionsToRetain",
  }
end

Instance Method Details

#to_jsiiObject



44
45
46
47
48
49
50
51
52
# File 's3/noncurrent_version_transition.rb', line 44

def to_jsii
  result = {}
  result.merge!({
    "storageClass" => @storage_class,
    "transitionAfter" => @transition_after,
    "noncurrentVersionsToRetain" => @noncurrent_versions_to_retain,
  })
  result.compact
end