pub struct ReplicationBind {
pub into: BindTarget,
pub name: String,
pub template: String,
pub format: BindFormat,
pub advance_from: Option<String>,
}Expand description
Declarative binding of the stored bookmark into the outgoing request — “server-side incremental push-down” (#513).
Today faucet tracks bookmarks and filters incrementally client-side (after
download). A bind lets a source instead push the bookmark into the request
(query param / header / body field / path) so the server returns only the
new rows. The existing client-side filter_incremental stays active as a
safety net for servers that don’t honour the filter exactly.
Fields§
§into: BindTargetWhere to place the rendered value.
name: StringThe parameter / header / body-field / path-placeholder name.
template: StringTemplate rendered with BIND_PLACEHOLDER (${bookmark}) replaced by
the formatted bookmark. Defaults to the bare ${bookmark}; set e.g.
"gte|${bookmark}" (Greenhouse) or "[${bookmark} TO *]" (Lucene).
format: BindFormatHow to format the bookmark before substitution.
advance_from: Option<String>Optional JSONPath into the response body to advance the bookmark from,
instead of max(record[replication_key]).
Implementations§
Trait Implementations§
Source§impl Clone for ReplicationBind
impl Clone for ReplicationBind
Source§fn clone(&self) -> ReplicationBind
fn clone(&self) -> ReplicationBind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ReplicationBind
impl Debug for ReplicationBind
Source§impl<'de> Deserialize<'de> for ReplicationBind
impl<'de> Deserialize<'de> for ReplicationBind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for ReplicationBind
impl JsonSchema for ReplicationBind
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for ReplicationBind
impl PartialEq for ReplicationBind
Source§impl Serialize for ReplicationBind
impl Serialize for ReplicationBind
impl StructuralPartialEq for ReplicationBind
Auto Trait Implementations§
impl Freeze for ReplicationBind
impl RefUnwindSafe for ReplicationBind
impl Send for ReplicationBind
impl Sync for ReplicationBind
impl Unpin for ReplicationBind
impl UnsafeUnpin for ReplicationBind
impl UnwindSafe for ReplicationBind
Blanket Implementations§
impl<T> Allocation for T
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§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>
T in a tonic::Request