#[non_exhaustive]pub struct LifecycleRule {
pub expiration: Option<LifecycleExpiration>,
pub id: Option<String>,
pub prefix: Option<String>,
pub filter: Option<LifecycleRuleFilter>,
pub status: ExpirationStatus,
pub transitions: Option<Vec<Transition>>,
pub noncurrent_version_transitions: Option<Vec<NoncurrentVersionTransition>>,
pub noncurrent_version_expiration: Option<NoncurrentVersionExpiration>,
pub abort_incomplete_multipart_upload: Option<AbortIncompleteMultipartUpload>,
}
Expand description
A lifecycle rule for individual objects in an Amazon S3 bucket.
For more information see, Managing your storage lifecycle in the Amazon S3 User Guide.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.expiration: Option<LifecycleExpiration>
Specifies the expiration for the lifecycle of the object in the form of date, days and, whether the object has a delete marker.
id: Option<String>
Unique identifier for the rule. The value cannot be longer than 255 characters.
prefix: Option<String>
Prefix identifying one or more objects to which the rule applies. This is no longer used; use Filter
instead.
Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see XML related object key constraints.
filter: Option<LifecycleRuleFilter>
The Filter
is used to identify objects that a Lifecycle Rule applies to. A Filter
must have exactly one of Prefix
, Tag
, or And
specified. Filter
is required if the LifecycleRule
does not contain a Prefix
element.
Tag
filters are not supported for directory buckets.
status: ExpirationStatus
If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.
transitions: Option<Vec<Transition>>
Specifies when an Amazon S3 object transitions to a specified storage class.
This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.
noncurrent_version_transitions: Option<Vec<NoncurrentVersionTransition>>
Specifies the transition rule for the lifecycle rule that describes when noncurrent objects transition to a specific storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to a specific storage class at a set period in the object's lifetime.
This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.
noncurrent_version_expiration: Option<NoncurrentVersionExpiration>
Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.
This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.
abort_incomplete_multipart_upload: Option<AbortIncompleteMultipartUpload>
Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in the Amazon S3 User Guide.
Implementations§
Source§impl LifecycleRule
impl LifecycleRule
Sourcepub fn expiration(&self) -> Option<&LifecycleExpiration>
pub fn expiration(&self) -> Option<&LifecycleExpiration>
Specifies the expiration for the lifecycle of the object in the form of date, days and, whether the object has a delete marker.
Sourcepub fn id(&self) -> Option<&str>
pub fn id(&self) -> Option<&str>
Unique identifier for the rule. The value cannot be longer than 255 characters.
Sourcepub fn prefix(&self) -> Option<&str>
👎Deprecated
pub fn prefix(&self) -> Option<&str>
Prefix identifying one or more objects to which the rule applies. This is no longer used; use Filter
instead.
Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see XML related object key constraints.
Sourcepub fn filter(&self) -> Option<&LifecycleRuleFilter>
pub fn filter(&self) -> Option<&LifecycleRuleFilter>
The Filter
is used to identify objects that a Lifecycle Rule applies to. A Filter
must have exactly one of Prefix
, Tag
, or And
specified. Filter
is required if the LifecycleRule
does not contain a Prefix
element.
Tag
filters are not supported for directory buckets.
Sourcepub fn status(&self) -> &ExpirationStatus
pub fn status(&self) -> &ExpirationStatus
If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.
Sourcepub fn transitions(&self) -> &[Transition]
pub fn transitions(&self) -> &[Transition]
Specifies when an Amazon S3 object transitions to a specified storage class.
This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .transitions.is_none()
.
Sourcepub fn noncurrent_version_transitions(&self) -> &[NoncurrentVersionTransition]
pub fn noncurrent_version_transitions(&self) -> &[NoncurrentVersionTransition]
Specifies the transition rule for the lifecycle rule that describes when noncurrent objects transition to a specific storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to a specific storage class at a set period in the object's lifetime.
This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .noncurrent_version_transitions.is_none()
.
Sourcepub fn noncurrent_version_expiration(
&self,
) -> Option<&NoncurrentVersionExpiration>
pub fn noncurrent_version_expiration( &self, ) -> Option<&NoncurrentVersionExpiration>
Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.
This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.
Sourcepub fn abort_incomplete_multipart_upload(
&self,
) -> Option<&AbortIncompleteMultipartUpload>
pub fn abort_incomplete_multipart_upload( &self, ) -> Option<&AbortIncompleteMultipartUpload>
Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in the Amazon S3 User Guide.
Source§impl LifecycleRule
impl LifecycleRule
Sourcepub fn builder() -> LifecycleRuleBuilder
pub fn builder() -> LifecycleRuleBuilder
Creates a new builder-style object to manufacture LifecycleRule
.
Trait Implementations§
Source§impl Clone for LifecycleRule
impl Clone for LifecycleRule
Source§fn clone(&self) -> LifecycleRule
fn clone(&self) -> LifecycleRule
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for LifecycleRule
impl Debug for LifecycleRule
Source§impl PartialEq for LifecycleRule
impl PartialEq for LifecycleRule
impl StructuralPartialEq for LifecycleRule
Auto Trait Implementations§
impl Freeze for LifecycleRule
impl RefUnwindSafe for LifecycleRule
impl Send for LifecycleRule
impl Sync for LifecycleRule
impl Unpin for LifecycleRule
impl UnwindSafe for LifecycleRule
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightBlack
.
§Example
println!("{}", value.bright_black());
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightGreen
.
§Example
println!("{}", value.bright_green());
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightYellow
.
§Example
println!("{}", value.bright_yellow());
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightMagenta
.
§Example
println!("{}", value.bright_magenta());
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightWhite
.
§Example
println!("{}", value.bright_white());
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightBlack
.
§Example
println!("{}", value.on_bright_black());
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightGreen
.
§Example
println!("{}", value.on_bright_green());
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightYellow
.
§Example
println!("{}", value.on_bright_yellow());
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightBlue
.
§Example
println!("{}", value.on_bright_blue());
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightMagenta
.
§Example
println!("{}", value.on_bright_magenta());
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightCyan
.
§Example
println!("{}", value.on_bright_cyan());
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightWhite
.
§Example
println!("{}", value.on_bright_white());
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn underline(&self) -> Painted<&T>
fn underline(&self) -> Painted<&T>
Returns self
with the
attr()
set to
Attribute::Underline
.
§Example
println!("{}", value.underline());
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Returns self
with the
attr()
set to
Attribute::RapidBlink
.
§Example
println!("{}", value.rapid_blink());
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);