You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 7f1a295
Browse filesBrowse the repository at this point in the historyBrowse files
SK-3061: revert getFields() to Map<String, Object>, keep getTokens() typed (#409)
getTokens() itself (item 6, commit 8148504) stays Map<String, List<Token>>.
But getFields() delegating straight to it changed its return-type generics
from Object to List<Token> - a needless japicmp break for a deprecated
alias nobody should be adding new calls to anyway, and one this PR had
flagged as avoidable but initially left in favor of just regenerating the
baseline.
Reverted getFields() to its original Map<String, Object> contract by
rendering getTokens()'s typed data back into that raw shape via a new
package-private Token.toRawTokens(Map<String, List<Token>>) - the inverse
of Token.parseTokens(). Package-private keeps it outside the
accessModifier=protected japicmp contract, so it doesn't itself become a
compatibility commitment.
The round trip is lossless for map-shaped wire input (the normal case) but
lossy for the bare-value edge case parseTokens() also handles (a raw
"tok-abc" string loses its way back to {"token": "tok-abc", "tokenGroupName":
null} - still valid data, just not byte-identical to the original wire
shape). Updated every test asserting on getFields() accordingly, and added
direct toRawTokens() coverage (null input, single/multiple token groups,
round-trip-with-map-input) in ResponseComponentTests.
Regenerated flowvault/api-report/skyflow-flowvault-java.baseline.jar via
scripts/contract-snapshot-update.sh flowvault - this supersedes the
baseline regenerated in f326ec2, since that one still had getFields()
returning the typed map. mvn -pl common,flowvault -am verify passes clean
against it.
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: flowvault/README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -767,7 +767,7 @@ Every bulk response exposes `getSummary()` and `getRecords()`. The records list
767
767
|`getError()`| failures only | Error message for this item. `null` means this item succeeded. |
768
768
|`getRequestId()`| failures only | The `x-request-id` of the batch this item was in — quote it in support escalations. Items from the same batch share one id. |
769
769
770
-
The success payload sits alongside those fields on the same object: `getSkyflowId()`/`getTokens()`/`getData()` for insert (`getFields()` is a deprecated alias for `getTokens()`), `getValue()`/`getTokenGroupName()`/`getMetadata()` for detokenize, `getTokens()` for tokenize, `getToken()` for delete.
770
+
The success payload sits alongside those fields on the same object: `getSkyflowId()`/`getTokens()`/`getData()` for insert (`getFields()` is deprecated — it returns the same data in its original, pre-typed `Map<String, Object>` shape, not `getTokens()`'s `Token` objects), `getValue()`/`getTokenGroupName()`/`getMetadata()` for detokenize, `getTokens()` for tokenize, `getToken()` for delete.
0 commit comments