1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.portal.kernel.search;
21  
22  import java.io.File;
23  import java.io.IOException;
24  import java.io.InputStream;
25  
26  import java.text.ParseException;
27  
28  import java.util.Date;
29  import java.util.Map;
30  
31  /**
32   * <a href="Document.java.html"><b><i>View Source</i></b></a>
33   *
34   * @author Brian Wing Shun Chan
35   * @author Bruno Farache
36   *
37   */
38  public interface Document {
39  
40      public void add(Field field);
41  
42      public void addDate(String name, Date value);
43  
44      public void addFile(String name, byte[] bytes, String fileExt)
45          throws IOException;
46  
47      public void addFile(String name, File file, String fileExt)
48          throws IOException;
49  
50      public void addFile(String name, InputStream is, String fileExt)
51          throws IOException;
52  
53      public void addKeyword(String name, boolean value);
54  
55      public void addKeyword(String name, Boolean value);
56  
57      public void addKeyword(String name, boolean[] values);
58  
59      public void addKeyword(String name, Boolean[] values);
60  
61      public void addKeyword(String name, double value);
62  
63      public void addKeyword(String name, Double value);
64  
65      public void addKeyword(String name, double[] values);
66  
67      public void addKeyword(String name, Double[] values);
68  
69      public void addKeyword(String name, int value);
70  
71      public void addKeyword(String name, int[] values);
72  
73      public void addKeyword(String name, Integer value);
74  
75      public void addKeyword(String name, Integer[] values);
76  
77      public void addKeyword(String name, long value);
78  
79      public void addKeyword(String name, Long value);
80  
81      public void addKeyword(String name, long[] values);
82  
83      public void addKeyword(String name, Long[] values);
84  
85      public void addKeyword(String name, short value);
86  
87      public void addKeyword(String name, Short value);
88  
89      public void addKeyword(String name, short[] values);
90  
91      public void addKeyword(String name, Short[] values);
92  
93      public void addKeyword(String name, String value);
94  
95      public void addKeyword(String name, String value, boolean lowerCase);
96  
97      public void addKeyword(String name, String[] values);
98  
99      public void addModifiedDate();
100 
101     public void addModifiedDate(Date modifiedDate);
102 
103     public void addText(String name, String value);
104 
105     public void addUID(String portletId, long field1);
106 
107     public void addUID(String portletId, long field1, String field2);
108 
109     public void addUID(String portletId, Long field1);
110 
111     public void addUID(String portletId, Long field1, String field2);
112 
113     public void addUID(String portletId, String field1);
114 
115     public void addUID(String portletId, String field1, String field2);
116 
117     public void addUID(
118         String portletId, String field1, String field2, String field3);
119 
120     public void addUID(
121         String portletId, String field1, String field2, String field3,
122         String field4);
123 
124     public String get(String name);
125 
126     public Date getDate(String name) throws ParseException;
127 
128     public Map<String, Field> getFields();
129 
130     public String[] getValues(String name);
131 
132 }