All Superinterfaces:
AutoCloseable, DirectScannable
All Known Implementing Classes:
RecordTypeTable

@ConnectionScoped public interface Table extends DirectScannable, AutoCloseable
  • Method Details

    • getSchema

      @Nonnull DatabaseSchema getSchema()
    • deleteRecord

      boolean deleteRecord(@Nonnull com.apple.foundationdb.relational.api.Row key) throws com.apple.foundationdb.relational.api.exceptions.RelationalException
      Throws:
      com.apple.foundationdb.relational.api.exceptions.RelationalException
    • deleteRange

      void deleteRange(Map<String,Object> prefix) throws com.apple.foundationdb.relational.api.exceptions.RelationalException
      Throws:
      com.apple.foundationdb.relational.api.exceptions.RelationalException
    • insertRecord

      @Deprecated boolean insertRecord(@Nonnull Message message, boolean replaceOnDuplicate) throws com.apple.foundationdb.relational.api.exceptions.RelationalException
      Deprecated.
      since 01/18/2023; use insertRecord(RelationalStruct, boolean) instead.
      Insert message content.
      Parameters:
      message - What to insert.
      replaceOnDuplicate - Where to replace if duplicate insert.
      Returns:
      Whether insert was successful or not.
      Throws:
      com.apple.foundationdb.relational.api.exceptions.RelationalException - Thrown if record exists already or if error on insert.
    • insertRecord

      boolean insertRecord(@Nonnull com.apple.foundationdb.relational.api.RelationalStruct insert, boolean replaceOnDuplicate) throws com.apple.foundationdb.relational.api.exceptions.RelationalException
      Replaces insertRecord(Message, boolean) encapsulating protobuf usage.
      Parameters:
      insert - What to insert.
      replaceOnDuplicate - Where to replace if duplicate insert.
      Returns:
      Whether insert was successful or not.
      Throws:
      com.apple.foundationdb.relational.api.exceptions.RelationalException - Thrown if record exists already or if error on insert.
    • getAvailableIndexes

      Set<Index> getAvailableIndexes() throws com.apple.foundationdb.relational.api.exceptions.RelationalException
      Throws:
      com.apple.foundationdb.relational.api.exceptions.RelationalException
    • close

      void close() throws com.apple.foundationdb.relational.api.exceptions.RelationalException
      Specified by:
      close in interface AutoCloseable
      Throws:
      com.apple.foundationdb.relational.api.exceptions.RelationalException
    • getName

      @Nonnull String getName()
      Description copied from interface: DirectScannable
      If table, returns the table name or index name if it is an index.
      Specified by:
      getName in interface DirectScannable
      Returns:
      the table name if it is a table, or index name if it is an index
    • validateTable

      void validateTable(@Nonnull com.apple.foundationdb.relational.api.Options options) throws com.apple.foundationdb.relational.api.exceptions.RelationalException
      Directly validate that this table is suitable for the operations desired, using the specified control options. If this table is not valid for the options specified, a RelationalException is thrown.
      Parameters:
      options - the options to use.
      Throws:
      com.apple.foundationdb.relational.api.exceptions.RelationalException - if the table is invalid for these options.