Struct location_manager::LocationManager
source · pub struct LocationManager {
pub location_map: HashMap<ObjectId, HostId>,
pub move_handles: Arc<MoveHandleMap>,
pub(crate) async_rt_manager: Arc<AsyncRuntimeManager>,
pub(crate) config: Config,
pub(crate) object_tracker: Arc<ObjectTracker>,
pub(crate) data_request_client: Arc<DataRequestClient>,
pub(crate) data_exchange_client: Arc<DataExchangeClient>,
}Fields§
§location_map: HashMap<ObjectId, HostId>§move_handles: Arc<MoveHandleMap>§async_rt_manager: Arc<AsyncRuntimeManager>§config: Config§object_tracker: Arc<ObjectTracker>§data_request_client: Arc<DataRequestClient>§data_exchange_client: Arc<DataExchangeClient>Implementations§
source§impl LocationManager
impl LocationManager
pub fn new( config: Config, async_rt_manager: Arc<AsyncRuntimeManager>, object_tracker: Arc<ObjectTracker> ) -> Self
pub fn get_current_host_id(&self) -> HostId
pub async fn init_server(&self) -> Result<(), InternalError>
pub async fn move_object_to( &self, object_id: ObjectId, target_host: HostId ) -> Result<(), Error>
pub async fn move_object( &self, object_id: ObjectId, source_host_id: u16, target_host_id: u16 ) -> Result<(), Error>
pub async fn wait_for_object(&self, object_id: ObjectId)
sourcepub async fn wait_for_object_or_update(&self, object_id: ObjectId) -> Option<()>
pub async fn wait_for_object_or_update(&self, object_id: ObjectId) -> Option<()>
Unconditionally waits for an in-flight object without first checking for residency.
It is up to the caller of this function to ensure that the right wait semantics are enforced.
pub fn get_object_tracker(&self) -> Arc<ObjectTracker>
pub async fn calculate_signature(&self, object_id: ObjectId) -> Vec<u8>
pub async fn insert_move_handle(&self, object_id: ObjectId)
pub async fn trigger_move( &self, object_id: ObjectId, foreign_signature: &Vec<u8>, target_host_id: String )
Auto Trait Implementations§
impl !RefUnwindSafe for LocationManager
impl Send for LocationManager
impl Sync for LocationManager
impl Unpin for LocationManager
impl !UnwindSafe for LocationManager
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
§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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request