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 Detail

      • 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.
      • getEmbeddedManyRoot

        FetchPath getEmbeddedManyRoot​(String path)
        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
      • 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