Interface WebAuthnJDBCQueryAccelerator

All Superinterfaces:
WebAuthnJDBCAccelerator
All Known Implementing Classes:
WebAuthnJDBCAcceleratorImpl

public interface WebAuthnJDBCQueryAccelerator extends WebAuthnJDBCAccelerator
An accelerator for JDBC queries to improve the performance of lookup operations that search for non-indexed fields, namely; userHandle and credentialId.
Since:
1.3.0
  • Method Details

    • queryByUserHandle

      @Nonnull @NotLive @Unmodifiable <T> List<StorageRecord<Set<T>>> queryByUserHandle(@Nonnull @NotEmpty String context, @Nonnull @NotEmpty String userHandle) throws IOException
      Queries the underlying data source for credentials associated with the given userHandle.

      Implementations may retrieve data from a JSON field (e.g., a "value" column), requiring JSON querying capabilities in the underlying RDBMS.

      Type Parameters:
      T - the storage record type
      Parameters:
      context - the context
      userHandle - the userHandle to query for
      Returns:
      a list of credentials that are a match for the given userHandle
      Throws:
      IOException - on error
    • queryByCredentialId

      @Nonnull @NotLive @Unmodifiable <T> List<StorageRecord<Set<T>>> queryByCredentialId(@Nonnull @NotEmpty String context, @Nonnull @NotEmpty String credentialId) throws IOException
      Queries the underlying data source for credentials associated with the given credentialId.

      Implementations may retrieve data from a JSON field (e.g., a "value" column), requiring JSON querying capabilities in the underlying RDBMS.

      Type Parameters:
      T - the storage record type
      Parameters:
      context - the context
      credentialId - the credentialId to query for
      Returns:
      a list of credentials that are a match for the given userHandle
      Throws:
      IOException - on error