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  }