pub trait Node2ProxyInterface: Send + Sync {
type CloseResponseFut: Future<Output = Result<CloseableCloseResult, Error>> + Send;
type QueryResponseFut: Future<Output = Result<Vec<u8>, Error>> + Send;
type GetConnectionInfoResponseFut: Future<Output = Result<ConnectionInfo, Error>> + Send;
type GetAttributesResponseFut: Future<Output = Result<Node2GetAttributesResult, Error>> + Send;
type UpdateAttributesResponseFut: Future<Output = Result<Node2UpdateAttributesResult, Error>> + Send;
type SyncResponseFut: Future<Output = Result<Node2SyncResult, Error>> + Send;
// Required methods
fn close(&self) -> Self::CloseResponseFut;
fn query(&self) -> Self::QueryResponseFut;
fn reopen(
&self,
rights_request: Option<&mut RightsRequest>,
object_request: ServerEnd<NodeMarker>
) -> Result<(), Error>;
fn get_connection_info(&self) -> Self::GetConnectionInfoResponseFut;
fn get_attributes(
&self,
query: NodeAttributesQuery
) -> Self::GetAttributesResponseFut;
fn update_attributes(
&self,
payload: MutableNodeAttributes
) -> Self::UpdateAttributesResponseFut;
fn sync(&self) -> Self::SyncResponseFut;
}