public static String toString()

in modules/accumulo/src/main/java/org/apache/fluo/accumulo/format/FluoFormatter.java [66:144]


  public static String toString(Entry<Key, Value> entry) {
    Key key = entry.getKey();

    if (NotificationUtil.isNtfy(key)) {
      StringBuilder sb = new StringBuilder();
      encNonAscii(sb, key.getRowData());
      sb.append(" ");
      encNonAscii(sb, key.getColumnFamilyData());
      sb.append(":");
      Column col = NotificationUtil.decodeCol(key);
      encNonAscii(sb, col.getFamily());
      sb.append(":");
      encNonAscii(sb, col.getQualifier());
      sb.append(" [");
      encNonAscii(sb, key.getColumnVisibilityData());
      sb.append("] ");
      sb.append(NotificationUtil.decodeTs(key));
      sb.append('-');
      sb.append(NotificationUtil.isDelete(key) ? "DELETE" : "INSERT");
      sb.append("\t");
      encNonAscii(sb, entry.getValue().get());

      return sb.toString();
    } else {
      long ts = key.getTimestamp();
      String type;
      ColumnType colType = ColumnType.from(ts);

      switch (colType) {
        case RLOCK:
          if (ReadLockUtil.isDelete(ts)) {
            type = "DEL_RLOCK";
          } else {
            type = "RLOCK";
          }
          ts = ReadLockUtil.decodeTs(ts);
          break;
        default:
          type = colType.toString();
          break;
      }

      StringBuilder sb = new StringBuilder();

      String val;
      if (type.equals("WRITE")) {
        val = new WriteValue(entry.getValue().get()).toString();
      } else if (type.equals("DEL_LOCK")) {
        val = new DelLockValue(entry.getValue().get()).toString();
      } else if (type.equals("LOCK")) {
        // TODO can Value be made to extend Bytes w/o breaking API?
        val = new LockValue(entry.getValue().get()).toString();
      } else if (type.equals("RLOCK")) {
        val = new ReadLockValue(entry.getValue().get()).toString();
      } else if (type.equals("DEL_RLOCK")) {
        val = new DelReadLockValue(entry.getValue().get()).toString();
      } else {
        encNonAscii(sb, entry.getValue().get());
        val = sb.toString();
      }

      sb.setLength(0);
      encNonAscii(sb, key.getRowData());
      sb.append(" ");
      encNonAscii(sb, key.getColumnFamilyData());
      sb.append(":");
      encNonAscii(sb, key.getColumnQualifierData());
      sb.append(" [");
      encNonAscii(sb, key.getColumnVisibilityData());
      sb.append("] ");
      sb.append(ts & ColumnConstants.TIMESTAMP_MASK);
      sb.append('-');
      sb.append(type);
      sb.append("\t");
      sb.append(val);

      return sb.toString();
    }
  }