Class IndexSQLTool

  • All Implemented Interfaces:
    IndexTool

    public class IndexSQLTool
    extends IndexCore
    implements IndexTool
    Indexation using SQL implementation
    • Constructor Detail

      • IndexSQLTool

        public IndexSQLTool()
    • Method Detail

      • delete

        public void delete​(java.lang.String object,
                           java.lang.String row_id)
                    throws java.lang.Exception
        Delete object index
        Specified by:
        delete in interface IndexTool
        Parameters:
        object - Object name
        row_id - Record id
        Throws:
        java.lang.Exception
      • indexation

        public int indexation​(ObjectDB index,
                              Grant g,
                              boolean reset)
                       throws java.lang.Exception
        Bulk indexes of every indexed fields (take several minutes/hours for huge model)
        Specified by:
        indexation in interface IndexTool
        Parameters:
        reset - true to rebuild all, false to replace/append to the existing index
        Returns:
        index size
        Throws:
        java.lang.Exception
      • indexation

        public void indexation​(ObjectDB obj)
                        throws java.lang.Exception
        Single object indexation
        Specified by:
        indexation in interface IndexTool
        Parameters:
        obj - Business object (row_id must be selected)
        Throws:
        java.lang.Exception
      • search

        public SearchResult search​(Grant g,
                                   java.lang.String object,
                                   java.lang.String input,
                                   java.lang.String query,
                                   int pageNum,
                                   int pageSize,
                                   java.lang.String context)
                            throws java.lang.Exception
        Field search (useful for field completion)
        Specified by:
        search in interface IndexTool
        Parameters:
        object - Object name
        input - Field input name
        query - Search query
        pageNum - Page number (0 = first page)
        pageSize - Page size
        context - search, list, form, reference
        Returns:
        List of match values
        Throws:
        java.lang.Exception
      • search

        public SearchResult search​(Grant g,
                                   java.util.List<java.lang.String> objects,
                                   java.lang.String query,
                                   int pageNum,
                                   int pageSize)
                            throws java.lang.Exception
        Object search (listed object)
        Specified by:
        search in interface IndexTool
        Parameters:
        objects - Object names
        query - Search query
        pageNum - Page number (0 = first page)
        pageSize - Page size
        Returns:
        List of (score, row_id, ukey)
        Throws:
        java.lang.Exception
      • search

        public SearchResult search​(Grant g,
                                   java.lang.String query,
                                   int pageNum,
                                   int pageSize)
                            throws java.lang.Exception
        Global search (any indexed object)
        Specified by:
        search in interface IndexTool
        Parameters:
        query - Search query
        pageNum - Page number (0 = first page)
        pageSize - Page size
        Returns:
        List of (score, object, row_id, ukey, all)
        Throws:
        java.lang.Exception
      • searchDoc

        public SearchResult searchDoc​(Grant g,
                                      java.lang.String query,
                                      java.util.List<java.lang.String> bookshelfs,
                                      java.util.Map<java.lang.String,​java.lang.String> filter,
                                      int max)
                               throws java.lang.Exception
        ZZZ EXPERIMENTAL Search in document text
        Specified by:
        searchDoc in interface IndexTool
        query - Search query
        max - Max rows
        Returns:
        List of (docId, path, score)
        Throws:
        java.lang.Exception