pub struct O2mHandler<O2mApi> { /* private fields */ }Expand description
gRPC server handler for operator-to-middleware operations.
O2mHandler implements the gRPC server-side logic for administrative
operations including policy management, provenance queries, and consent
management by operators and compliance officers.
§Type Parameters
O2mApi- Service handling operator-to-middleware requests
Implementations§
Trait Implementations§
Source§impl<O2mApi> O2m for O2mHandler<O2mApi>where
O2mApi: Service<O2mRequest, Response = O2mResponse, Error = TraceabilityError> + Clone + Sync + Send + 'static,
O2mApi::Future: Send,
Implementation of the O2M gRPC service protocol.
impl<O2mApi> O2m for O2mHandler<O2mApi>where
O2mApi: Service<O2mRequest, Response = O2mResponse, Error = TraceabilityError> + Clone + Sync + Send + 'static,
O2mApi::Future: Send,
Implementation of the O2M gRPC service protocol.
This implementation provides the server-side handlers for all operator-facing endpoints including policy configuration and provenance analysis.
Source§fn o2m_get_policies<'life0, 'async_trait>(
&'life0 self,
request: Request<GetPoliciesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetPoliciesResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn o2m_get_policies<'life0, 'async_trait>(
&'life0 self,
request: Request<GetPoliciesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetPoliciesResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles policy retrieval requests from operators.
Returns the current compliance policies for the specified set of resources.
Source§fn o2m_set_policy<'life0, 'async_trait>(
&'life0 self,
request: Request<SetPolicyRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn o2m_set_policy<'life0, 'async_trait>(
&'life0 self,
request: Request<SetPolicyRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles policy update requests from operators.
Sets a complete compliance policy for a specific resource.
Source§fn o2m_set_confidentiality<'life0, 'async_trait>(
&'life0 self,
request: Request<SetConfidentialityRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn o2m_set_confidentiality<'life0, 'async_trait>(
&'life0 self,
request: Request<SetConfidentialityRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles confidentiality setting requests from operators.
Updates the confidentiality policy for a specific resource.
Source§fn o2m_set_integrity<'life0, 'async_trait>(
&'life0 self,
request: Request<SetIntegrityRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn o2m_set_integrity<'life0, 'async_trait>(
&'life0 self,
request: Request<SetIntegrityRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles integrity setting requests from operators.
Updates the integrity level for a specific resource.
Source§fn o2m_set_deleted<'life0, 'async_trait>(
&'life0 self,
request: Request<SetDeletedRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn o2m_set_deleted<'life0, 'async_trait>(
&'life0 self,
request: Request<SetDeletedRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles deletion marking requests from operators.
Marks a resource as deleted for compliance tracking purposes.
Source§fn o2m_enforce_consent<'life0, 'async_trait>(
&'life0 self,
request: Request<EnforceConsentRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::O2MEnforceConsentStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn o2m_enforce_consent<'life0, 'async_trait>(
&'life0 self,
request: Request<EnforceConsentRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::O2MEnforceConsentStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles consent enforcement requests from operators.
Enables consent enforcement for a resource and returns a stream of consent request notifications that can be monitored by the operator.
Source§fn o2m_set_consent_decision<'life0, 'async_trait>(
&'life0 self,
request: Request<SetConsentDecisionRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn o2m_set_consent_decision<'life0, 'async_trait>(
&'life0 self,
request: Request<SetConsentDecisionRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Ack>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles consent decision requests from operators.
Sets the consent decision for a specific data flow operation.
Source§fn o2m_get_references<'life0, 'async_trait>(
&'life0 self,
request: Request<GetReferencesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetReferencesResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn o2m_get_references<'life0, 'async_trait>(
&'life0 self,
request: Request<GetReferencesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetReferencesResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles provenance query requests from operators.
Returns the complete provenance lineage for a specific resource.
Source§type O2MEnforceConsentStream = Pin<Box<dyn Stream<Item = Result<ConsentNotification, Status>> + Send>>
type O2MEnforceConsentStream = Pin<Box<dyn Stream<Item = Result<ConsentNotification, Status>> + Send>>
Auto Trait Implementations§
impl<O2mApi> Freeze for O2mHandler<O2mApi>where
O2mApi: Freeze,
impl<O2mApi> RefUnwindSafe for O2mHandler<O2mApi>where
O2mApi: RefUnwindSafe,
impl<O2mApi> Send for O2mHandler<O2mApi>where
O2mApi: Send,
impl<O2mApi> Sync for O2mHandler<O2mApi>where
O2mApi: Sync,
impl<O2mApi> Unpin for O2mHandler<O2mApi>where
O2mApi: Unpin,
impl<O2mApi> UnwindSafe for O2mHandler<O2mApi>where
O2mApi: 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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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 more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].