#[non_exhaustive]pub struct Object<PointerSel: PointerFamily = ArcPointer> { /* private fields */ }
Expand description
存放单个对象的结构体
Implementations§
Source§impl<T: PointerFamily> Object<T>
impl<T: PointerFamily> Object<T>
Sourcepub fn new(
bucket: T::Bucket,
path: ObjectPath,
last_modified: DateTime<Utc>,
etag: String,
_type: String,
size: u64,
storage_class: StorageClass,
) -> Self
pub fn new( bucket: T::Bucket, path: ObjectPath, last_modified: DateTime<Utc>, etag: String, _type: String, size: u64, storage_class: StorageClass, ) -> Self
初始化 Object 结构体
Sourcepub fn base(&self) -> &ObjectBase<T>
pub fn base(&self) -> &ObjectBase<T>
读取 Object 元信息
Sourcepub fn set_base(&mut self, base: ObjectBase<T>)
pub fn set_base(&mut self, base: ObjectBase<T>)
设置 Object 元信息
Sourcepub fn last_modified(&self) -> &DateTime<Utc>
pub fn last_modified(&self) -> &DateTime<Utc>
读取最后修改时间
Sourcepub fn set_last_modified(&mut self, last_modified: DateTime<Utc>)
pub fn set_last_modified(&mut self, last_modified: DateTime<Utc>)
设置最后修改时间
Sourcepub fn get_type_string(&self) -> &String
pub fn get_type_string(&self) -> &String
读取 type
Sourcepub fn set_type_string(&mut self, _type: String)
pub fn set_type_string(&mut self, _type: String)
设置 type
Sourcepub fn storage_class(&self) -> &StorageClass
pub fn storage_class(&self) -> &StorageClass
读取 storage_class
Sourcepub fn set_storage_class(&mut self, storage_class: StorageClass)
pub fn set_storage_class(&mut self, storage_class: StorageClass)
设置 storage_class
Sourcepub fn pieces(
self,
) -> (ObjectBase<T>, DateTime<Utc>, String, String, u64, StorageClass)
pub fn pieces( self, ) -> (ObjectBase<T>, DateTime<Utc>, String, String, u64, StorageClass)
获取一部分数据
Sourcepub fn path(&self) -> ObjectPath
pub fn path(&self) -> ObjectPath
读取 文件路径
Source§impl Object<ArcPointer>
impl Object<ArcPointer>
Sourcepub fn builder(path: ObjectPath) -> ObjectBuilder<ArcPointer>
pub fn builder(path: ObjectPath) -> ObjectBuilder<ArcPointer>
§Object 构建器
用例
let bucket = BucketBase::new(
"bucket-name".parse().unwrap(),
EndPoint::CN_QINGDAO,
);
let mut builder = ObjectArc::builder("abc".parse::<ObjectPath>().unwrap());
builder
.bucket_base(bucket)
.last_modified(DateTime::<Utc>::from_utc(
NaiveDateTime::from_timestamp_opt(123000, 0).unwrap(),
Utc,
))
.etag("foo1".to_owned())
.set_type("foo2".to_owned())
.size(123)
.storage_class(StorageClass::IA);
let object = builder.build();
Source§impl Object<RcPointer>
impl Object<RcPointer>
Sourcepub fn builder(path: ObjectPath) -> ObjectBuilder<RcPointer>
pub fn builder(path: ObjectPath) -> ObjectBuilder<RcPointer>
§Object 构建器
用例
let bucket = BucketBase::new(
"bucket-name".parse().unwrap(),
EndPoint::CN_QINGDAO,
);
let mut builder = ObjectArc::builder("abc".parse::<ObjectPath>().unwrap());
builder
.bucket_base(bucket)
.last_modified(DateTime::<Utc>::from_utc(
NaiveDateTime::from_timestamp_opt(123000, 0).unwrap(),
Utc,
))
.etag("foo1".to_owned())
.set_type("foo2".to_owned())
.size(123)
.storage_class(StorageClass::IA);
let object = builder.build();
Trait Implementations§
Source§impl<T: PointerFamily> AsRef<ObjectPathInner<'static>> for Object<T>
impl<T: PointerFamily> AsRef<ObjectPathInner<'static>> for Object<T>
Source§fn as_ref(&self) -> &ObjectPath
fn as_ref(&self) -> &ObjectPath
Converts this type into a shared reference of the (usually inferred) input type.
Source§impl<T: PointerFamily> AsRef<StorageClass> for Object<T>
impl<T: PointerFamily> AsRef<StorageClass> for Object<T>
Source§fn as_ref(&self) -> &StorageClass
fn as_ref(&self) -> &StorageClass
Converts this type into a shared reference of the (usually inferred) input type.
Source§impl<T: PointerFamily> From<Object<T>> for ObjectPathInner<'static>
impl<T: PointerFamily> From<Object<T>> for ObjectPathInner<'static>
Source§impl InitObject<Object<RcPointer>> for ObjectList<RcPointer, Object<RcPointer>>
impl InitObject<Object<RcPointer>> for ObjectList<RcPointer, Object<RcPointer>>
Source§impl InitObject<Object> for ObjectList<ArcPointer, Object<ArcPointer>>
impl InitObject<Object> for ObjectList<ArcPointer, Object<ArcPointer>>
Source§impl PartialEq<ObjectBase<RcPointer>> for Object<RcPointer>
impl PartialEq<ObjectBase<RcPointer>> for Object<RcPointer>
Source§impl PartialEq<ObjectBase> for Object<ArcPointer>
impl PartialEq<ObjectBase> for Object<ArcPointer>
Source§impl<T: PointerFamily> RefineObject<BuildInItemError> for Object<T>
impl<T: PointerFamily> RefineObject<BuildInItemError> for Object<T>
Source§fn set_last_modified(&mut self, value: &str) -> Result<(), BuildInItemError>
fn set_last_modified(&mut self, value: &str) -> Result<(), BuildInItemError>
提取最后修改时间
Source§fn set_storage_class(
&mut self,
storage_class: &str,
) -> Result<(), BuildInItemError>
fn set_storage_class( &mut self, storage_class: &str, ) -> Result<(), BuildInItemError>
提取 storage_class
Auto Trait Implementations§
impl<PointerSel> Freeze for Object<PointerSel>where
<PointerSel as PointerFamily>::Bucket: Freeze,
impl<PointerSel> RefUnwindSafe for Object<PointerSel>where
<PointerSel as PointerFamily>::Bucket: RefUnwindSafe,
impl<PointerSel> Send for Object<PointerSel>where
<PointerSel as PointerFamily>::Bucket: Send,
impl<PointerSel> Sync for Object<PointerSel>where
<PointerSel as PointerFamily>::Bucket: Sync,
impl<PointerSel> Unpin for Object<PointerSel>where
<PointerSel as PointerFamily>::Bucket: Unpin,
impl<PointerSel> UnwindSafe for Object<PointerSel>where
<PointerSel as PointerFamily>::Bucket: UnwindSafe,
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
Mutably borrows from an owned value. Read more