bucketwarden-server 0.1.0

BucketWarden storage server runtime.
Documentation
use super::*;

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct SelectObjectContentResult {
    pub version_id: String,
    pub body: Vec<u8>,
    pub content_type: &'static str,
    pub output_format: &'static str,
    pub continuation_event: ContinuationEvent,
    pub end_event: EndEvent,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct MultiObjectDeleteRequest {
    pub bucket: String,
    pub quiet: bool,
    pub objects: Vec<MultiObjectDeleteTarget>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct MultiObjectDeleteTarget {
    pub key: String,
    pub version_id: Option<String>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct MultiObjectDeleteResult {
    pub deleted: Vec<MultiObjectDeleted>,
    pub errors: Vec<MultiObjectDeleteError>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct MultiObjectDeleted {
    pub key: String,
    pub version_id: Option<String>,
    pub delete_marker: bool,
    pub delete_marker_version_id: Option<String>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct MultiObjectDeleteError {
    pub key: String,
    pub version_id: Option<String>,
    pub code: String,
    pub message: String,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectActionError {
    pub bucket: String,
    pub key: String,
    pub version_id: Option<String>,
    pub code: String,
    pub message: String,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectTaggingRequest {
    pub entries: Vec<ObjectTaggingRequest>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectTaggingResult {
    pub updated: Vec<ObjectTaggingResult>,
    pub errors: Vec<BulkObjectActionError>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectLegalHoldRequest {
    pub entries: Vec<ObjectLegalHoldRequest>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectLegalHoldResult {
    pub updated: Vec<ObjectLegalHoldResult>,
    pub errors: Vec<BulkObjectActionError>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectRetentionRequest {
    pub entries: Vec<ObjectRetentionRequest>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectRetentionResult {
    pub updated: Vec<ObjectRetentionResult>,
    pub errors: Vec<BulkObjectActionError>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectRestoreEntry {
    pub bucket: String,
    pub key: String,
    pub version_id: String,
    pub restore_header: String,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectRestoreTarget {
    pub bucket: String,
    pub key: String,
    pub version_id: Option<String>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectRestoreRequest {
    pub entries: Vec<BulkObjectRestoreTarget>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectRestoreResult {
    pub restored: Vec<BulkObjectRestoreEntry>,
    pub errors: Vec<BulkObjectActionError>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectCopyError {
    pub source_bucket: String,
    pub source_key: String,
    pub destination_bucket: String,
    pub destination_key: String,
    pub code: String,
    pub message: String,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectCopyRequest {
    pub entries: Vec<CopyObjectRequest>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectCopyResult {
    pub copied: Vec<CopyObjectResult>,
    pub errors: Vec<BulkObjectCopyError>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectDeleteEntry {
    pub bucket: String,
    pub key: String,
    pub version_id: Option<String>,
    pub delete_marker: bool,
    pub delete_marker_version_id: Option<String>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectDeleteTarget {
    pub bucket: String,
    pub key: String,
    pub version_id: Option<String>,
    pub bypass_governance: bool,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectDeleteRequest {
    pub entries: Vec<BulkObjectDeleteTarget>,
}

#[derive(Clone, Debug, Eq, PartialEq)]
pub struct BulkObjectDeleteResult {
    pub deleted: Vec<BulkObjectDeleteEntry>,
    pub errors: Vec<BulkObjectActionError>,
}