pub struct GdprManager { /* private fields */ }Expand description
Comprehensive GDPR compliance system for European Union regulatory requirements
Implementations§
Source§impl GdprManager
impl GdprManager
Sourcepub fn with_eu_configuration() -> Self
pub fn with_eu_configuration() -> Self
Create GDPR manager with standard EU configuration
Sourcepub fn register_data_subject(
&mut self,
external_id: String,
email: Option<String>,
name: Option<String>,
) -> Result<String>
pub fn register_data_subject( &mut self, external_id: String, email: Option<String>, name: Option<String>, ) -> Result<String>
Register a new data subject
Sourcepub fn record_consent(
&mut self,
data_subject_id: String,
purpose: String,
consent_text: String,
consent_method: ConsentMethod,
evidence: ConsentEvidence,
) -> Result<String>
pub fn record_consent( &mut self, data_subject_id: String, purpose: String, consent_text: String, consent_method: ConsentMethod, evidence: ConsentEvidence, ) -> Result<String>
Record consent from data subject
Sourcepub fn withdraw_consent(
&mut self,
consent_id: String,
withdrawal_method: String,
) -> Result<()>
pub fn withdraw_consent( &mut self, consent_id: String, withdrawal_method: String, ) -> Result<()>
Withdraw consent
Sourcepub fn process_access_request(
&mut self,
data_subject_id: String,
request_details: String,
) -> Result<SubjectRightsRequest>
pub fn process_access_request( &mut self, data_subject_id: String, request_details: String, ) -> Result<SubjectRightsRequest>
Process data subject access request (Article 15)
Sourcepub fn process_rectification_request(
&mut self,
data_subject_id: String,
corrections: HashMap<String, String>,
) -> Result<SubjectRightsRequest>
pub fn process_rectification_request( &mut self, data_subject_id: String, corrections: HashMap<String, String>, ) -> Result<SubjectRightsRequest>
Process data rectification request (Article 16)
Sourcepub fn process_erasure_request(
&mut self,
data_subject_id: String,
erasure_grounds: String,
) -> Result<SubjectRightsRequest>
pub fn process_erasure_request( &mut self, data_subject_id: String, erasure_grounds: String, ) -> Result<SubjectRightsRequest>
Process data erasure request (Article 17 - Right to be Forgotten)
Sourcepub fn process_portability_request(
&mut self,
data_subject_id: String,
export_format: ExportFormat,
) -> Result<SubjectRightsRequest>
pub fn process_portability_request( &mut self, data_subject_id: String, export_format: ExportFormat, ) -> Result<SubjectRightsRequest>
Process data portability request (Article 20)
Sourcepub fn execute_data_deletion(
&mut self,
data_subject_id: String,
deletion_method: DisposalMethod,
locations: Vec<DataLocation>,
) -> Result<String>
pub fn execute_data_deletion( &mut self, data_subject_id: String, deletion_method: DisposalMethod, locations: Vec<DataLocation>, ) -> Result<String>
Execute data deletion/erasure
Sourcepub fn report_data_breach(
&mut self,
breach_type: BreachType,
affected_subjects: usize,
affected_data_categories: Vec<PersonalDataType>,
consequences: String,
measures_taken: Vec<String>,
) -> Result<String>
pub fn report_data_breach( &mut self, breach_type: BreachType, affected_subjects: usize, affected_data_categories: Vec<PersonalDataType>, consequences: String, measures_taken: Vec<String>, ) -> Result<String>
Report a personal data breach (Articles 33-34)
Sourcepub fn create_dpia(
&mut self,
processing_operation: String,
description: String,
) -> Result<String>
pub fn create_dpia( &mut self, processing_operation: String, description: String, ) -> Result<String>
Create Data Protection Impact Assessment
Sourcepub fn get_compliance_status(&self) -> GdprComplianceStatus
pub fn get_compliance_status(&self) -> GdprComplianceStatus
Get compliance status overview
Sourcepub fn generate_gdpr_compliance_report(
&self,
start_date: DateTime<Utc>,
end_date: DateTime<Utc>,
) -> GdprComplianceReport
pub fn generate_gdpr_compliance_report( &self, start_date: DateTime<Utc>, end_date: DateTime<Utc>, ) -> GdprComplianceReport
Generate GDPR compliance report
Trait Implementations§
Auto Trait Implementations§
impl Freeze for GdprManager
impl RefUnwindSafe for GdprManager
impl Send for GdprManager
impl Sync for GdprManager
impl Unpin for GdprManager
impl UnwindSafe for GdprManager
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
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>
Converts
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>
Converts
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 more