Merge branch 'about-stream2' into get_profile_info
This commit is contained in:
commit
0055a1ed65
19
src/sbot.rs
19
src/sbot.rs
|
@ -128,7 +128,7 @@ impl Sbot {
|
|||
}
|
||||
|
||||
/// Call the `partialReplication getSubset` RPC method
|
||||
/// and return a Stream of Result<SsbMessageKVT, GolgiError>
|
||||
/// and return a Stream of Result<SsbMessageValue, GolgiError>
|
||||
///
|
||||
/// # Arguments
|
||||
///
|
||||
|
@ -139,14 +139,14 @@ impl Sbot {
|
|||
&mut self,
|
||||
query: SubsetQuery,
|
||||
options: Option<SubsetQueryOptions>,
|
||||
) -> Result<impl Stream<Item = Result<SsbMessageKVT, GolgiError>>, GolgiError> {
|
||||
) -> Result<impl Stream<Item = Result<SsbMessageValue, GolgiError>>, GolgiError> {
|
||||
let mut sbot_connection = self.get_sbot_connection().await?;
|
||||
let req_id = sbot_connection
|
||||
.client
|
||||
.getsubset_req_send(query, options)
|
||||
.await?;
|
||||
let get_subset_stream =
|
||||
get_source_stream(sbot_connection.rpc_reader, req_id, utils::kvt_res_parse).await;
|
||||
get_source_stream(sbot_connection.rpc_reader, req_id, utils::ssb_message_res_parse).await;
|
||||
Ok(get_subset_stream)
|
||||
}
|
||||
|
||||
|
@ -253,18 +253,15 @@ impl Sbot {
|
|||
keys: None,
|
||||
page_limit: None,
|
||||
};
|
||||
let get_subset_kvt_stream = self.get_subset_stream(query, Some(query_options)).await?;
|
||||
// map into Stream<Item=Result<SsbMessageValue, GolgiError>>
|
||||
let ssb_message_stream = get_subset_kvt_stream.map(|msg| match msg {
|
||||
Ok(val) => Ok(val.value),
|
||||
Err(err) => Err(err),
|
||||
});
|
||||
let get_subset_stream = self.get_subset_stream(query, Some(query_options)).await?;
|
||||
// TODO: after fixing sbot regression,
|
||||
// change this subset query to filter by type about in addition to author
|
||||
// and remove this filter section
|
||||
// filter down to about messages
|
||||
let about_message_stream = ssb_message_stream.filter(|msg| match msg {
|
||||
Ok(val) => val.is_message_type(SsbMessageContentType::About),
|
||||
let about_message_stream = get_subset_stream.filter(|msg| match msg {
|
||||
Ok(val) => {
|
||||
val.is_message_type(SsbMessageContentType::About)
|
||||
}
|
||||
Err(_err) => false,
|
||||
});
|
||||
// return about message stream
|
||||
|
|
Loading…
Reference in New Issue