if (expandedTokens.size() == 0) {
if (expandedTokens.size() == 0 || !expandedAllTokens) {
        public TextQuery(Mailbox mbox, Analyzer analyzer, int modifier, int qType, String text) throws ServiceException {            super(modifier, qType);            mOredTokens = new LinkedList<String>();            // The set of tokens from the user's query.  The way the parser works,              mTokens = new ArrayList<String>(1);            mWildcardTerm = null;            mWildcardPrefix = null;            mOrigText = text;            TokenStream source = analyzer.tokenStream(QueryTypeString(qType), new StringReader(text));            org.apache.lucene.analysis.Token t;            while(true) {                try {                    t = source.next();                }                catch (IOException e) {                    t = null;                }                if (t == null)                    break;                mTokens.add(t.termText());            }            try {                source.close();            }            catch (IOException e) {                // ignore            }            // must look at original text here b/c analyzer strips *'s            if (text.length() > 0 && text.charAt(text.length()-1) == '*')            {                // wildcard query!                String wcToken;                // only the last token is allowed to have a wildcard in it                 if (mTokens.size() > 0)                    wcToken = mTokens.remove(mTokens.size()-1);                else                    wcToken = text;                // the field may have a tokenizer which removed the *                if (wcToken.indexOf('*') < 0)                    wcToken = wcToken+'*';//              // strip the '*' from the end//              int starIdx = wcToken.indexOf('*');//              if (starIdx >= 0)//              wcToken = wcToken.substring(0, starIdx);//              if (wcToken.length() > 0) //              mWildcardPrefix = wcToken;                if (wcToken.length() >= 1) {                    mWildcardTerm = wcToken;                    MailboxIndex mbidx = mbox.getMailboxIndex();                    List<String> expandedTokens = mbidx.expandWildcardToken(QueryTypeString(qType), wcToken, MAX_WILDCARD_TERMS);                    //                     // By design, we interpret *zero* tokens to mean "ignore this search term"                    // therefore if the wildcard expands to no terms, we need to stick something                    // in right here, just so we don't get confused when we go to execute the                     // query later                    //                    if (expandedTokens.size() == 0) {                         mTokens.add(wcToken);                    } else {                        for (String token : expandedTokens) {                            mOredTokens.add(token);                        }                    }                }            }//          MailboxIndex mbidx = mbox.getMailboxIndex();//          for (String token : mTokens) {//          mbidx.suggestSpelling(QueryTypeString(qType), token);//          }        }