Package com.darkcollective.relix.plan
Record Class HttpScanPushdown
java.lang.Object
java.lang.Record
com.darkcollective.relix.plan.HttpScanPushdown
- Record Components:
limit- the row count folded from an adjacentλ, bound to the declaredpaginatelimit parameter; empty when none was pushedequalities- IN-column name to the literal value folded from anσequality on it; empty when none was pushed. The connector maps each column to its declared binding (a query parameter or path segment).
What a
PhysicalNode.Scan over an HTTP source has folded into its request — a
query λ bound to the source's declared paginate limit, and σ
equalities bound to the source's IN columns (a query parameter or a path
segment).
Both are pure optimizations: the engine λ and σ that produced
them stay in the plan above the scan, so a server that ignores a page-size parameter,
clamps it, or does not filter still yields the right answer — the request fetches fewer
rows, and the engine operators are the backstop that guarantees the result. Nothing here
can change what a query returns; it can only change how much is fetched over the wire.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theequalitiesrecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.limit()Returns the value of thelimitrecord component.static HttpScanPushdownnone()The empty pushdown — nothing folded.final StringtoString()Returns a string representation of this record class.withEqualities(Map<String, String> more) Returns this pushdown withmoreequalities added to any already folded.withLimit(long count) Returns this pushdown withcountas the folded limit.
-
Constructor Details
-
HttpScanPushdown
Creates an instance of aHttpScanPushdownrecord class.- Parameters:
limit- the value for thelimitrecord componentequalities- the value for theequalitiesrecord component
-
-
Method Details
-
withLimit
Returns this pushdown withcountas the folded limit.- Returns:
- this pushdown with
countas the folded limit
-
withEqualities
Returns this pushdown withmoreequalities added to any already folded.- Returns:
- this pushdown with
moreequalities added to any already folded
-
none
The empty pushdown — nothing folded. -
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
limit
Returns the value of thelimitrecord component.- Returns:
- the value of the
limitrecord component
-
equalities
Returns the value of theequalitiesrecord component.- Returns:
- the value of the
equalitiesrecord component
-