View Javadoc

1   /* Piece
2   *
3   * Created on September 12, 2006
4   *
5   * Copyright (C) 2006 Internet Archive.
6   *
7   * This file is part of the Heritrix web crawler (crawler.archive.org).
8   *
9   * Heritrix is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU Lesser Public License as published by
11  * the Free Software Foundation; either version 2.1 of the License, or
12  * any later version.
13  *
14  * Heritrix is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU Lesser Public License for more details.
18  *
19  * You should have received a copy of the GNU Lesser Public License
20  * along with Heritrix; if not, write to the Free Software
21  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
22  */
23  package org.archive.util.ms;
24  
25  public class Piece {
26  
27      private boolean unicode;
28      private int charPosStart;
29      private int charPosLimit;
30      private int filePos;
31  
32      
33      public Piece(int filePos, int start, int end, boolean unicode) {
34          this.filePos = filePos;
35          this.charPosStart = start;
36          this.charPosLimit = end;
37          this.unicode = unicode;
38      }
39  
40  
41      /***
42       * 
43       * @return
44       */
45      public int getFilePos() {
46          return filePos;
47      }
48  
49  
50      /***
51       * 
52       * @return
53       */
54      public int getCharPosLimit() {
55          return charPosLimit;
56      }
57  
58      
59      public int getCharPosStart() {
60          return charPosStart;
61      }
62  
63      /***
64       * 
65       * @return
66       */
67      public boolean isUnicode() {
68          return unicode;
69      }
70  
71  
72      public String toString() {
73          StringBuilder sb = new StringBuilder();
74          sb.append("Piece{filePos=").append(filePos);
75          sb.append(" start=").append(charPosStart);
76          sb.append(" end=").append(charPosLimit);
77          sb.append(" unicode=").append(unicode);
78          sb.append("}");
79          return sb.toString();
80      }
81      
82      
83      public boolean contains(int charPos) {
84          return (charPos >= charPosStart) && (charPos < charPosLimit);
85      }
86  }