Interface BeanDocType<T>

Type Parameters:
T - The type of entity bean

public interface BeanDocType<T>
Doc store functions for a specific entity bean type.
  • Method Details

    • getIndexType

      Return the doc store index type for this bean type.
    • getIndexName

      Return the doc store index name for this bean type.
    • applyPath

      void applyPath​(Query<T> spiQuery)
      Apply the appropriate fetch path to the query such that the query returns beans matching the document store structure with the expected embedded properties.
    • getEmbedded

      Return the FetchPath for the embedded document.
    • getEmbeddedManyRoot

      For embedded 'many' properties we need a FetchPath relative to the root which is used to build and replace the embedded list.
    • rawProperty

      String rawProperty​(String property)
      Return a 'raw' property mapped for the given property. If none exists the given property is returned.
    • index

      void index​(Object idValue, T bean, DocUpdateContext txn) throws IOException
      Store the bean in the doc store index.

      This somewhat assumes the bean is fetched with appropriate path properties to match the expected document structure.

      Throws:
      IOException
    • deleteById

      void deleteById​(Object idValue, DocUpdateContext txn) throws IOException
      Add a delete by Id to the doc store.
      Throws:
      IOException
    • updateEmbedded

      void updateEmbedded​(Object idValue, String embeddedProperty, String embeddedRawContent, DocUpdateContext txn) throws IOException
      Add a embedded document update to the doc store.
      Parameters:
      idValue - the Id value of the bean holding the embedded document
      embeddedProperty - the embedded property
      embeddedRawContent - the content of the embedded document in JSON form
      txn - the doc store transaction to add the update to
      Throws:
      IOException