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;
    type GetExtendedAttributeResponseFut: Future<Output = Result<Node2GetExtendedAttributeResult, Error>> + Send;
    type SetExtendedAttributeResponseFut: Future<Output = Result<Node2SetExtendedAttributeResult, Error>> + Send;
    type RemoveExtendedAttributeResponseFut: Future<Output = Result<Node2RemoveExtendedAttributeResult, Error>> + Send;

    // Required methods
    fn close(&self) -> Self::CloseResponseFut;
    fn query(&self) -> Self::QueryResponseFut;
    fn reopen(
        &self,
        rights_request: &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;
    fn list_extended_attributes(
        &self,
        iterator: ServerEnd<ExtendedAttributeIteratorMarker>
    ) -> Result<(), Error>;
    fn get_extended_attribute(
        &self,
        name: &[u8]
    ) -> Self::GetExtendedAttributeResponseFut;
    fn set_extended_attribute(
        &self,
        name: &[u8],
        value: ExtendedAttributeValue,
        mode: SetExtendedAttributeMode
    ) -> Self::SetExtendedAttributeResponseFut;
    fn remove_extended_attribute(
        &self,
        name: &[u8]
    ) -> Self::RemoveExtendedAttributeResponseFut;
}

Required Associated Types§

Required Methods§

Implementors§