public final class DynamicSiteResult extends Object
Either it resolved (status DynamicSiteResult.Status.RESOLVED/DynamicSiteResult.Status.PARTIAL/
DynamicSiteResult.Status.CONDITIONAL) and carries a materialized getResolvedSql()
plus the lineage getEdges() extracted from analyzing it, or it could not
be reduced (status DynamicSiteResult.Status.UNRESOLVED/DynamicSiteResult.Status.PARSE_ERROR) and carries
an honest getUnresolvedReason() so the caller keeps it as a diagnostic
rather than guessing.
| Modifier and Type | Class and Description |
|---|---|
static class |
DynamicSiteResult.Kind |
static class |
DynamicSiteResult.Status |
| Modifier and Type | Method and Description |
|---|---|
String |
getBindingHash() |
String |
getConcreteSqlHash() |
String |
getDiagnostic()
Additive analysis note, kept separate from an unresolved reason.
|
String |
getDynamicSite()
Stable id of this EXEC site (proc + ordinal path + source span), robust to reformatting.
|
List<DynamicLineageEdge> |
getEdges() |
DynamicSiteResult.Kind |
getKind() |
int |
getPublishedRelationshipCount() |
String |
getResolvedSql()
The materialized SQL string (null when unresolved with no usable text).
|
String |
getSourceProc() |
long |
getStartColumn() |
long |
getStartLine() |
DynamicSiteResult.Status |
getStatus() |
DynamicSqlTrustMode |
getTrustMode() |
int |
getUnprovenRelationshipCount()
Historical candidate relationships SHADOW observed without a per-edge proof.
|
int |
getUnresolvedHoleCount()
Exact unresolved fragment count, or
-1 if the producing channel cannot enumerate holes. |
String |
getUnresolvedReason() |
boolean |
hasUnresolvedFragments()
True when unresolved string fragments remain or their count is unavailable.
|
boolean |
isHoleCountExact() |
boolean |
isResolved() |
String |
toString() |
public DynamicSiteResult.Kind getKind()
public DynamicSiteResult.Status getStatus()
public boolean isResolved()
public boolean hasUnresolvedFragments()
public String getResolvedSql()
public String getConcreteSqlHash()
public String getSourceProc()
public String getDynamicSite()
public String getBindingHash()
public String getUnresolvedReason()
public String getDiagnostic()
public long getStartLine()
public long getStartColumn()
public List<DynamicLineageEdge> getEdges()
public int getPublishedRelationshipCount()
public int getUnprovenRelationshipCount()
public int getUnresolvedHoleCount()
-1 if the producing channel cannot enumerate holes.public boolean isHoleCountExact()
public DynamicSqlTrustMode getTrustMode()