Class BlossomPool

java.lang.Object
org.ngengine.blossom4j.BlossomPool
All Implemented Interfaces:
Closeable, AutoCloseable

public class BlossomPool extends Object implements Closeable
  • Constructor Details

    • BlossomPool

      public BlossomPool(BlossomAuth auth)
    • BlossomPool

      public BlossomPool(NostrSigner auth)
    • BlossomPool

      public BlossomPool()
  • Method Details

    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
    • connectEndpoint

      public void connectEndpoint(BlossomEndpoint endpoint)
    • ensureEndpoint

      public void ensureEndpoint(BlossomEndpoint endpoint)
    • mirror

      public org.ngengine.platform.AsyncTask<BlobDescriptor> mirror(String url)
      Try every server; unsupported mirror endpoints do not prevent another server succeeding. Unknown hashes use an unauthenticated mirror request: BUD-11 forbids wildcard upload tokens.
    • mirror

      public org.ngengine.platform.AsyncTask<BlobDescriptor> mirror(String url, @Nullable String sha256)
    • uploadMedia

      public org.ngengine.platform.AsyncTask<BlobDescriptor> uploadMedia(byte[] data, @Nullable String mimeType)
      Optimize once, then replicate the resulting bytes via /mirror. Fall back to ordinary upload.
    • get

      public org.ngengine.platform.AsyncTask<ByteBuffer> get(String sha256)
    • get

      public org.ngengine.platform.AsyncTask<ByteBuffer> get(String sha256, @Nullable String filename)
    • get

      public org.ngengine.platform.AsyncTask<ByteBuffer> get(String sha256, @Nullable int[] byteRange)
    • get

      public org.ngengine.platform.AsyncTask<ByteBuffer> get(String sha256, @Nullable String filename, @Nullable int[] byteRange)
    • exists

      public org.ngengine.platform.AsyncTask<Boolean> exists(String sha256)
    • exists

      public org.ngengine.platform.AsyncTask<Boolean> exists(String sha256, @Nullable String filename)
    • upload

      public org.ngengine.platform.AsyncTask<BlobDescriptor> upload(ByteBuffer data)
    • upload

      public org.ngengine.platform.AsyncTask<BlobDescriptor> upload(ByteBuffer data, @Nullable String fileName)
    • upload

      public org.ngengine.platform.AsyncTask<BlobDescriptor> upload(ByteBuffer data, @Nullable String fileName, @Nullable String mimeType)
    • list

      public org.ngengine.platform.AsyncTask<List<BlobDescriptor>> list(NostrPublicKey pubkey)
    • list

      public org.ngengine.platform.AsyncTask<List<BlobDescriptor>> list(NostrPublicKey pubkey, @Nullable Instant since, @Nullable Instant until)
    • delete

      public org.ngengine.platform.AsyncTask<Void> delete(String sha256)
    • delete

      public org.ngengine.platform.AsyncTask<Void> delete(String sha256, @Nullable String filename)
    • getAuthEvent

      protected org.ngengine.platform.AsyncTask<SignedNostrEvent> getAuthEvent(BlossomVerb verb, String message, @Nullable String sha256)