code: public int[] getPositions() {
      int[] list;
      if (assumeSinglePosition) {
        list = new int[1];
        list[0] = super.startPosition();
        return list;
      } else {
        try {
          processEncodedPayload();
          list = mtasPosition.getPositions();
          if (list != null) {
            return mtasPosition.getPositions();
          }
        } catch (IOException e) {
          log.debug(e);
          // do nothing
        }
        int start = super.startPosition();
        int end = super.endPosition();
        list = new int[end - start];
        for (int i = start; i < end; i++)
          list[i - start] = i;
        return list;
      }
    }
docs: Gets the positions.
  
  @return the positions