# Class CSCertificateStoreSQLite

java.lang.Object
com.io7m.certusine.vanilla.internal.store.CSCertificateStoreSQLite

All Implemented Interfaces:
  `CSCertificateStoreType, Closeable, AutoCloseable`

public final class CSCertificateStoreSQLite extends Object implements CSCertificateStoreType
The SQLite store.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `List<CSCertificateStored>`
  `all()`
  Obtain a read-only snapshot of all currently stored certificates.
  `void`
  `close()`
  `boolean`
  `delete(String domain, CSCertificateName name)`
  Delete the certificate with the given domain and name.
  `Optional<CSCertificateStored>`
  `find(String domain, CSCertificateName name)`
  Find a certificate that has the given domain and name.
  `boolean`
  `isClosed()`
  `void`
  `put(CSCertificateStored certificate)`
  Create or update a certificate.

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### isClosed

    public boolean isClosed()
    Specified by:
      `isClosed` in interface `CSCertificateStoreType`
    Returns:
      `true` if the store has been closed

  - ### put

    public void put(CSCertificateStored certificate) throws IOException
    Description copied from interface: `CSCertificateStoreType`
    Create or update a certificate.
    Specified by:
      `put` in interface `CSCertificateStoreType`
    Parameters:
      `certificate` - The certificate
    Throws:
      `IOException` - On I/O errors

  - ### find

    public Optional<CSCertificateStored> find(String domain, CSCertificateName name) throws IOException
    Description copied from interface: `CSCertificateStoreType`
    Find a certificate that has the given domain and name.
    Specified by:
      `find` in interface `CSCertificateStoreType`
    Parameters:
      `domain` - The domain
      `name` - The certificate name
    Returns:
      The certificate, if one exists
    Throws:
      `IOException` - On errors

  - ### delete

    public boolean delete(String domain, CSCertificateName name) throws IOException
    Description copied from interface: `CSCertificateStoreType`
    Delete the certificate with the given domain and name.
    Specified by:
      `delete` in interface `CSCertificateStoreType`
    Parameters:
      `domain` - The domain
      `name` - The certificate name
    Returns:
      `true` if a certificate existed and was deleted
    Throws:
      `IOException` - On I/O errors

  - ### all

    public List<CSCertificateStored> all() throws IOException
    Description copied from interface: `CSCertificateStoreType`
    Obtain a read-only snapshot of all currently stored certificates.
    Specified by:
      `all` in interface `CSCertificateStoreType`
    Returns:
      A snapshot
    Throws:
      `IOException` - On I/O errors

  - ### close

    public void close() throws IOException
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`
    Throws:
      `IOException`