1   package com.atlassian.bonnie.search.summary;
2   
3   import java.util.Enumeration;
4   import java.util.SortedSet;
5   import java.util.TreeSet;
6   import java.util.Vector;
7   
8   /**
9    * Class Excerpt represents a single passage found in the
10   * document, with some appropriate regions highlit.
11   */
12  public class Excerpt
13  {
14      Vector passages = new Vector();
15      SortedSet tokenSet = new TreeSet();
16      int numTerms = 0;
17  
18      /**
19       */
20      public Excerpt()
21      {
22      }
23  
24      /**
25       */
26      public void addToken(String token)
27      {
28          tokenSet.add(token);
29      }
30  
31      /**
32       * Return how many unique toks we have
33       */
34      public int numUniqueTokens()
35      {
36          return tokenSet.size();
37      }
38  
39      /**
40       * How many fragments we have.
41       */
42      public int numFragments()
43      {
44          return passages.size();
45      }
46  
47      public void setNumTerms(int numTerms)
48      {
49          this.numTerms = numTerms;
50      }
51  
52      public int getNumTerms()
53      {
54          return numTerms;
55      }
56  
57      /**
58       * Add a frag to the list.
59       */
60      public void add(Summary.Fragment fragment)
61      {
62          passages.add(fragment);
63      }
64  
65      /**
66       * Return an Enum for all the fragments
67       */
68      public Enumeration elements()
69      {
70          return passages.elements();
71      }
72  }