pub struct SessionmgrSynchronousProxy { /* private fields */ }
Implementations§
source§impl SessionmgrSynchronousProxy
impl SessionmgrSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
sourcepub fn wait_for_event(&self, deadline: Time) -> Result<SessionmgrEvent, Error>
pub fn wait_for_event(&self, deadline: Time) -> Result<SessionmgrEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
sourcepub fn initialize(
&self,
session_id: &str,
session_context: ClientEnd<SessionContextMarker>,
additional_services_for_agents: &mut ServiceList,
services_from_sessionmgr: ServerEnd<DirectoryMarker>,
view_params: Option<&mut ViewParams>
) -> Result<(), Error>
pub fn initialize( &self, session_id: &str, session_context: ClientEnd<SessionContextMarker>, additional_services_for_agents: &mut ServiceList, services_from_sessionmgr: ServerEnd<DirectoryMarker>, view_params: Option<&mut ViewParams> ) -> Result<(), Error>
Launches a sessionmgr instance identified by a unique device-local
session_id
. The uniqueness of session_id
must be guaranteed by the
caller, because sessionmgr
creates an Environment namespace with the
given session_id
, and this will crash if we try to create an
environment with a pre-existing name, because the services sessionmgr
tries to access won’t be available.
additional_services_for_agents
is currently used by basemgr
to
expose specified services from CFv2 components to sessionmgr
so they
can be used by CFv1 components.
services_from_sessionmgr
is a handle to a subdirectory
(/svc_from_v1_sessionmgr
) in the caller’s (basemgr’s) outgoing
directory, which should be populated by sessionmgr with services from
CFv1 components (such as agent services and modular APIs like
PuppetMaster) so they can also be used by CFv2 components hosted by
basemgr.