Class GrouperMcpConfigSearchIndex

java.lang.Object
edu.internet2.middleware.grouper.mcp.GrouperMcpConfigSearchIndex

public class GrouperMcpConfigSearchIndex extends Object
Manages an in-memory Lucene index for searching Grouper configuration properties. Indexes all properties from all ConfigPropertiesCascadeBase subclasses (via ConfigFileName enum). Sensitive values (passwords, secrets) are masked. Includes metadata per property: where configured (base/override/database), default value, EL expression, comment, value type, and required flag.

The index is built lazily on first search and rebuilt periodically (default every hour).

Thread-safe: builds a new index then swaps the reference atomically.

  • Field Details

  • Constructor Details

    • GrouperMcpConfigSearchIndex

      public GrouperMcpConfigSearchIndex()
  • Method Details

    • search

      public static List<GrouperMcpConfigSearchIndex.ConfigSearchResult> search(String queryString, String filterConfigFile, int maxResults)
      search the config index
      Parameters:
      queryString - the Lucene query string
      filterConfigFile - optional config file name to filter by, or null for all
      maxResults - max results to return
      Returns:
      list of search results ordered by relevance
    • rebuildIfNeeded

      public static void rebuildIfNeeded()
      rebuild the index if it is stale or not yet built
    • forceRebuild

      public static void forceRebuild()
      force rebuild the index now