Class ClassifiedValueTokens
java.lang.Object
com.kingsrook.qqq.backend.core.actions.permissions.fieldaccess.ClassifiedValueTokens
Shared, versioned audit/email value tokens. The MAC input is UTF-8.
-
Method Summary
Modifier and TypeMethodDescriptionstatic Stringcanonical(Serializable value) Canonical ValueUtils strings, with scale-independent plain decimal notation.static Stringchanged()No derivative of the original value.static StringforContext(List<String> bindingParts, Serializable value) Non-record bindings must start with a nonempty domain.static StringforRecordField(QTableMetaData table, QFieldMetaData field, Serializable pk, Serializable value) Bind a value to the table, field and primary key, preferring a shreddable key.static StringshreddedToken(String ruleId) A key-destruction event, never a derivative of the value.static booleanverifyContext(List<String> bindingParts, Serializable candidate, String token) Verify a non-record token without creating a key.static booleanverifyRecordField(QTableMetaData table, QFieldMetaData field, Serializable pk, Serializable candidate, String token) Verify only keyed tokens, using existing keys and constant-time MAC comparison.
-
Method Details
-
forRecordField
public static String forRecordField(QTableMetaData table, QFieldMetaData field, Serializable pk, Serializable value) Bind a value to the table, field and primary key, preferring a shreddable key. -
forContext
Non-record bindings must start with a nonempty domain. -
changed
No derivative of the original value. -
shreddedToken
-
verifyRecordField
public static boolean verifyRecordField(QTableMetaData table, QFieldMetaData field, Serializable pk, Serializable candidate, String token) Verify only keyed tokens, using existing keys and constant-time MAC comparison. -
verifyContext
public static boolean verifyContext(List<String> bindingParts, Serializable candidate, String token) Verify a non-record token without creating a key. -
canonical
Canonical ValueUtils strings, with scale-independent plain decimal notation.
-