Clover Coverage Report
Coverage timestamp: Fri May 9 2008 10:54:27 EST
../../../../img/srcFileCovDistChart10.png 0% of files have more coverage
53   263   21   5.3
18   169   0.4   10
10     2.1  
1    
 
  DocHelper       Line # 32 53 21 95.1% 0.9506173
 
  (6)
 
1    package org.apache.lucene.index;
2   
3    /**
4    * Copyright 2005 The Apache Software Foundation
5    *
6    * Licensed under the Apache License, Version 2.0 (the "License");
7    * you may not use this file except in compliance with the License.
8    * You may obtain a copy of the License at
9    *
10    * http://www.apache.org/licenses/LICENSE-2.0
11    *
12    * Unless required by applicable law or agreed to in writing, software
13    * distributed under the License is distributed on an "AS IS" BASIS,
14    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15    * See the License for the specific language governing permissions and
16    * limitations under the License.
17    */
18   
19    import java.io.IOException;
20    import java.io.UnsupportedEncodingException;
21    import java.util.HashMap;
22    import java.util.Map;
23   
24    import org.apache.lucene.analysis.Analyzer;
25    import org.apache.lucene.analysis.WhitespaceAnalyzer;
26    import org.apache.lucene.document.Document;
27    import org.apache.lucene.document.Field;
28    import org.apache.lucene.document.Fieldable;
29    import org.apache.lucene.search.Similarity;
30    import org.apache.lucene.store.Directory;
31   
 
32    class DocHelper {
33    public static final String FIELD_1_TEXT = "field one text";
34    public static final String TEXT_FIELD_1_KEY = "textField1";
35    public static Field textField1 = new Field(TEXT_FIELD_1_KEY, FIELD_1_TEXT,
36    Field.Store.YES, Field.Index.TOKENIZED, Field.TermVector.NO);
37   
38    public static final String FIELD_2_TEXT = "field field field two text";
39    //Fields will be lexicographically sorted. So, the order is: field, text, two
40    public static final int [] FIELD_2_FREQS = {3, 1, 1};
41    public static final String TEXT_FIELD_2_KEY = "textField2";
42    public static Field textField2 = new Field(TEXT_FIELD_2_KEY, FIELD_2_TEXT, Field.Store.YES, Field.Index.TOKENIZED, Field.TermVector.WITH_POSITIONS_OFFSETS);
43   
44    public static final String FIELD_2_COMPRESSED_TEXT = "field field field two text";
45    //Fields will be lexicographically sorted. So, the order is: field, text, two
46    public static final int [] COMPRESSED_FIELD_2_FREQS = {3, 1, 1};
47    public static final String COMPRESSED_TEXT_FIELD_2_KEY = "compressedTextField2";
48    public static Field compressedTextField2 = new Field(COMPRESSED_TEXT_FIELD_2_KEY, FIELD_2_COMPRESSED_TEXT, Field.Store.COMPRESS, Field.Index.TOKENIZED, Field.TermVector.WITH_POSITIONS_OFFSETS);
49   
50   
51    public static final String FIELD_3_TEXT = "aaaNoNorms aaaNoNorms bbbNoNorms";
52    public static final String TEXT_FIELD_3_KEY = "textField3";
53    public static Field textField3 = new Field(TEXT_FIELD_3_KEY, FIELD_3_TEXT, Field.Store.YES, Field.Index.TOKENIZED);
 
54  7 toggle static { textField3.setOmitNorms(true); }
55   
56    public static final String KEYWORD_TEXT = "Keyword";
57    public static final String KEYWORD_FIELD_KEY = "keyField";
58    public static Field keyField = new Field(KEYWORD_FIELD_KEY, KEYWORD_TEXT,
59    Field.Store.YES, Field.Index.UN_TOKENIZED);
60   
61    public static final String NO_NORMS_TEXT = "omitNormsText";
62    public static final String NO_NORMS_KEY = "omitNorms";
63    public static Field noNormsField = new Field(NO_NORMS_KEY, NO_NORMS_TEXT,
64    Field.Store.YES, Field.Index.NO_NORMS);
65   
66    public static final String UNINDEXED_FIELD_TEXT = "unindexed field text";
67    public static final String UNINDEXED_FIELD_KEY = "unIndField";
68    public static Field unIndField = new Field(UNINDEXED_FIELD_KEY, UNINDEXED_FIELD_TEXT,
69    Field.Store.YES, Field.Index.NO);
70   
71   
72    public static final String UNSTORED_1_FIELD_TEXT = "unstored field text";
73    public static final String UNSTORED_FIELD_1_KEY = "unStoredField1";
74    public static Field unStoredField1 = new Field(UNSTORED_FIELD_1_KEY, UNSTORED_1_FIELD_TEXT,
75    Field.Store.NO, Field.Index.TOKENIZED, Field.TermVector.NO);
76   
77    public static final String UNSTORED_2_FIELD_TEXT = "unstored field text";
78    public static final String UNSTORED_FIELD_2_KEY = "unStoredField2";
79    public static Field unStoredField2 = new Field(UNSTORED_FIELD_2_KEY, UNSTORED_2_FIELD_TEXT,
80    Field.Store.NO, Field.Index.TOKENIZED, Field.TermVector.YES);
81   
82    public static final String LAZY_FIELD_BINARY_KEY = "lazyFieldBinary";
83    public static byte [] LAZY_FIELD_BINARY_BYTES;
84    public static Field lazyFieldBinary;
85   
86    public static final String LAZY_FIELD_KEY = "lazyField";
87    public static final String LAZY_FIELD_TEXT = "These are some field bytes";
88    public static Field lazyField = new Field(LAZY_FIELD_KEY, LAZY_FIELD_TEXT, Field.Store.YES, Field.Index.TOKENIZED);
89   
90    public static final String LARGE_LAZY_FIELD_KEY = "largeLazyField";
91    public static String LARGE_LAZY_FIELD_TEXT;
92    public static Field largeLazyField;
93   
94    //From Issue 509
95    public static final String FIELD_UTF1_TEXT = "field one \u4e00text";
96    public static final String TEXT_FIELD_UTF1_KEY = "textField1Utf8";
97    public static Field textUtfField1 = new Field(TEXT_FIELD_UTF1_KEY, FIELD_UTF1_TEXT,
98    Field.Store.YES, Field.Index.TOKENIZED, Field.TermVector.NO);
99   
100    public static final String FIELD_UTF2_TEXT = "field field field \u4e00two text";
101    //Fields will be lexicographically sorted. So, the order is: field, text, two
102    public static final int [] FIELD_UTF2_FREQS = {3, 1, 1};
103    public static final String TEXT_FIELD_UTF2_KEY = "textField2Utf8";
104    public static Field textUtfField2 = new Field(TEXT_FIELD_UTF2_KEY, FIELD_UTF2_TEXT, Field.Store.YES,
105    Field.Index.TOKENIZED, Field.TermVector.WITH_POSITIONS_OFFSETS);
106   
107   
108   
109   
110    public static Map nameValues = null;
111   
112    // ordered list of all the fields...
113    // could use LinkedHashMap for this purpose if Java1.4 is OK
114    public static Field[] fields = new Field[] {
115    textField1,
116    textField2,
117    textField3,
118    compressedTextField2,
119    keyField,
120    noNormsField,
121    unIndField,
122    unStoredField1,
123    unStoredField2,
124    textUtfField1,
125    textUtfField2,
126    lazyField,
127    lazyFieldBinary,//placeholder for binary field, since this is null. It must be second to last.
128    largeLazyField//placeholder for large field, since this is null. It must always be last
129    };
130   
131    // Map<String fieldName, Fieldable field>
132    public static Map all=new HashMap();
133    public static Map indexed=new HashMap();
134    public static Map stored=new HashMap();
135    public static Map unstored=new HashMap();
136    public static Map unindexed=new HashMap();
137    public static Map termvector=new HashMap();
138    public static Map notermvector=new HashMap();
139    public static Map lazy= new HashMap();
140    public static Map noNorms=new HashMap();
141   
 
142  7 toggle static {
143    //Initialize the large Lazy Field
144  7 StringBuffer buffer = new StringBuffer();
145  70007 for (int i = 0; i < 10000; i++)
146    {
147  70000 buffer.append("Lazily loading lengths of language in lieu of laughing ");
148    }
149   
150  7 try {
151  7 LAZY_FIELD_BINARY_BYTES = "These are some binary field bytes".getBytes("UTF8");
152    } catch (UnsupportedEncodingException e) {
153    }
154  7 lazyFieldBinary = new Field(LAZY_FIELD_BINARY_KEY, LAZY_FIELD_BINARY_BYTES, Field.Store.YES);
155  7 fields[fields.length - 2] = lazyFieldBinary;
156  7 LARGE_LAZY_FIELD_TEXT = buffer.toString();
157  7 largeLazyField = new Field(LARGE_LAZY_FIELD_KEY, LARGE_LAZY_FIELD_TEXT, Field.Store.YES, Field.Index.TOKENIZED);
158  7 fields[fields.length - 1] = largeLazyField;
159  105 for (int i=0; i<fields.length; i++) {
160  98 Fieldable f = fields[i];
161  98 add(all,f);
162  98 if (f.isIndexed()) add(indexed,f);
163  14 else add(unindexed,f);
164  98 if (f.isTermVectorStored()) add(termvector,f);
165  98 if (f.isIndexed() && !f.isTermVectorStored()) add(notermvector,f);
166  98 if (f.isStored()) add(stored,f);
167  14 else add(unstored,f);
168  98 if (f.getOmitNorms()) add(noNorms,f);
169  0 if (f.isLazy()) add(lazy, f);
170    }
171    }
172   
173   
 
174  392 toggle private static void add(Map map, Fieldable field) {
175  392 map.put(field.name(), field);
176    }