Class FidoMetadataDownloader.FidoMetadataDownloaderBuilder.Step5

    • Method Detail

      • useBlobCacheFile

        public FidoMetadataDownloader.FidoMetadataDownloaderBuilder useBlobCacheFile​(@NonNull
                                                                                     @NonNull java.io.File cacheFile)
        Cache metadata BLOB in the file cacheFile.

        If cacheFile exists, is a normal file, is readable, and is not out of date, then it will be used as the FIDO Metadata Service BLOB.

        Otherwise, the metadata BLOB will be downloaded and written to this file.

        Parameters:
        cacheFile - a File which may or may not exist. If it exists, it should contain the metadata BLOB in JWS compact serialization format [RFC7515].
      • useBlobCache

        public FidoMetadataDownloader.FidoMetadataDownloaderBuilder useBlobCache​(@NonNull
                                                                                 @NonNull java.util.function.Supplier<java.util.Optional<com.yubico.webauthn.data.ByteArray>> getCachedBlob,
                                                                                 @NonNull
                                                                                 @NonNull java.util.function.Consumer<com.yubico.webauthn.data.ByteArray> writeCachedBlob)
        Cache the metadata BLOB using a Supplier to read the cache, and using a Consumer to write the cache.

        If getCachedBlob returns non-empty and the content is not out of date, then it will be used as the FIDO Metadata Service BLOB.

        Otherwise, the metadata BLOB will be downloaded and written to writeCachedBlob .

        Parameters:
        getCachedBlob - a Supplier that fetches the cached metadata BLOB if it exists. The returned value, if any, should be in JWS compact serialization format [RFC7515].
        writeCachedBlob - a Consumer that accepts the metadata BLOB in JWS compact serialization format [RFC7515] and writes it to the cache.