public boolean configure(FileAcquirer fileAcquirer,
                             RewritesConfig config,
                             HashMap<String, File> fileList) {
        logger = Logger.getLogger(GenericExpansionRewriter.class.getName());
        FSA fsa = (FSA)rewriterDicts.get(GENERIC_EXPAND_DICT);
        if (fsa==null) {
            RewriterUtils.error(logger, "Error retrieving FSA dictionary: " + GENERIC_EXPAND_DICT);
            return false;
        }
        // Create Phrase Matcher
        RewriterUtils.log(logger, "Creating PhraseMatcher");
        try {
            phraseMatcher = new PhraseMatcher(fsa, false);
        } catch (IllegalArgumentException e) {
            RewriterUtils.error(logger, "Error creating phrase matcher");
            return false;
        }

        // Match single word as well
        phraseMatcher.setMatchSingleItems(true);

        // Return all matches instead of only the longest match
        phraseMatcher.setMatchAll(true);

        return true;
    }
Instance creation time config loading besides FSA.
Create PhraseMatcher from FSA dict
container-search/src/main/java/com/yahoo/search/query/rewrite/rewriters/GenericExpansionRewriter.java