Merge pull request #409 from Alkarex/patch-1
[mono.git] / mcs / tools / monkeydoc / Lucene.Net / Lucene.Net / Index / TermVectorEntry.cs
1 /* 
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements.  See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License.  You may obtain a copy of the License at
8  * 
9  * http://www.apache.org/licenses/LICENSE-2.0
10  * 
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17
18 using System;
19
20 namespace Mono.Lucene.Net.Index
21 {
22         
23         /// <summary> Convenience class for holding TermVector information.</summary>
24         public class TermVectorEntry
25         {
26                 private System.String field;
27                 private System.String term;
28                 private int frequency;
29                 private TermVectorOffsetInfo[] offsets;
30                 internal int[] positions;
31                 
32                 
33                 public TermVectorEntry()
34                 {
35                 }
36                 
37                 public TermVectorEntry(System.String field, System.String term, int frequency, TermVectorOffsetInfo[] offsets, int[] positions)
38                 {
39                         this.field = field;
40                         this.term = term;
41                         this.frequency = frequency;
42                         this.offsets = offsets;
43                         this.positions = positions;
44                 }
45                 
46                 
47                 public virtual System.String GetField()
48                 {
49                         return field;
50                 }
51                 
52                 public virtual int GetFrequency()
53                 {
54                         return frequency;
55                 }
56                 
57                 public virtual TermVectorOffsetInfo[] GetOffsets()
58                 {
59                         return offsets;
60                 }
61                 
62                 public virtual int[] GetPositions()
63                 {
64                         return positions;
65                 }
66                 
67                 public virtual System.String GetTerm()
68                 {
69                         return term;
70                 }
71                 
72                 //Keep package local
73                 internal virtual void  SetFrequency(int frequency)
74                 {
75                         this.frequency = frequency;
76                 }
77                 
78                 internal virtual void  SetOffsets(TermVectorOffsetInfo[] offsets)
79                 {
80                         this.offsets = offsets;
81                 }
82                 
83                 internal virtual void  SetPositions(int[] positions)
84                 {
85                         this.positions = positions;
86                 }
87                 
88                 
89                 public  override bool Equals(System.Object o)
90                 {
91                         if (this == o)
92                                 return true;
93                         if (o == null || GetType() != o.GetType())
94                                 return false;
95                         
96                         TermVectorEntry that = (TermVectorEntry) o;
97                         
98                         if (term != null?!term.Equals(that.term):that.term != null)
99                                 return false;
100                         
101                         return true;
102                 }
103                 
104                 public override int GetHashCode()
105                 {
106                         return (term != null?term.GetHashCode():0);
107                 }
108                 
109                 public override System.String ToString()
110                 {
111                         return "TermVectorEntry{" + "field='" + field + '\'' + ", term='" + term + '\'' + ", frequency=" + frequency + '}';
112                 }
113         }
114 }