pub struct NamespaceControllerProxy { /* private fields */ }

Implementations§

source§

impl NamespaceControllerProxy

source

pub fn new(channel: AsyncChannel) -> Self

Create a new Proxy for fuchsia.net.filter/NamespaceController.

source

pub fn take_event_stream(&self) -> NamespaceControllerEventStream

Get a Stream of events from the remote end of the protocol.

§Panics

Panics if the event stream was already taken.

source

pub fn detach(&self) -> QueryResponseFut<[u8; 16]>

Detaches the client end from the controller’s lifetime.

After calling Detach, closing this client end no longer causes the filtering state owned by the controller to be removed. The key returned by the method can be used once by a client to reconnect to a detached controller. This allows clients to ensure the filtering state they install is resilient to client-side crashes and disconnections. (Note, however, that closing the client end of the channel will flush any pending changes that have been pushed but not yet committed.)

Detach can be called multiple times; the key returned by the most recent call is valid to reconnect to the controller. Calling Detach will always return a new key and invalidate any previous keys.

Note that, once a client has called Detach on a controller, the controller remains detached even after a reconnection. This means that, for example, if a client detached, closed the client end, reconnected, and then closed the client end again, the filtering state owned by the controller would not be removed. After reconnection, the only reason a client would call Detach is to be able to reconnect again in the future, given the key is invalidated after use.

source

pub fn push_changes( &self, changes: &[Change] ) -> QueryResponseFut<ChangeValidationResult>

Append a set of changes to a pending transactional update to the filtering configuration.

To apply these changes, a client must call Commit.

source

pub fn commit(&self, payload: CommitOptions) -> QueryResponseFut<CommitResult>

Apply all pending changes. The set of changes will either be applied in its entirety or, in case of an error, not applied at all.

Trait Implementations§

source§

impl Clone for NamespaceControllerProxy

source§

fn clone(&self) -> NamespaceControllerProxy

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for NamespaceControllerProxy

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl NamespaceControllerProxyInterface for NamespaceControllerProxy

§

type DetachResponseFut = QueryResponseFut<[u8; 16]>

source§

fn detach(&self) -> Self::DetachResponseFut

§

type PushChangesResponseFut = QueryResponseFut<ChangeValidationResult>

source§

fn push_changes(&self, changes: &[Change]) -> Self::PushChangesResponseFut

§

type CommitResponseFut = QueryResponseFut<CommitResult>

source§

fn commit(&self, payload: CommitOptions) -> Self::CommitResponseFut

source§

impl Proxy for NamespaceControllerProxy

§

type Protocol = NamespaceControllerMarker

The protocol which this Proxy controls.
source§

fn from_channel(inner: AsyncChannel) -> Self

Create a proxy over the given channel.
source§

fn into_channel(self) -> Result<AsyncChannel, Self>

Attempt to convert the proxy back into a channel. Read more
source§

fn as_channel(&self) -> &AsyncChannel

Get a reference to the proxy’s underlying channel. Read more
§

fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>

Attempt to convert the proxy back into a client end. Read more
§

fn is_closed(&self) -> bool

Returns true if the proxy has received the PEER_CLOSED signal.
§

fn on_closed(&self) -> OnSignals<'_, Unowned<'_, Handle>>

Returns a future that completes when the proxy receives the PEER_CLOSED signal.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Encode<Ambiguous1> for T

§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
§

impl<T> Encode<Ambiguous2> for T

§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more