Exemple #1
0
  public JE_Table(TableMeta schema, IRepository repo) {
    super(schema, repo);
    indexCodecMap = new HashMap<String, KVCodec>();

    KVCodec pkCodec = null;
    IndexMeta pkIndex = getSchema().getPrimaryIndex();

    if (pkCodec == null) {
      pkCodec = new KVCodec();
      pkCodec.setKey_codec(
          CodecFactory.getInstance(CodecFactory.FIXED_LENGTH).getCodec((pkIndex.getKeyColumns())));
      if (pkIndex.getValueColumns() != null) {
        pkCodec.setValue_codec(
            CodecFactory.getInstance(CodecFactory.FIXED_LENGTH)
                .getCodec((pkIndex.getValueColumns())));
      }
    }

    indexCodecMap.put(pkIndex.getName(), pkCodec);

    for (IndexMeta secondIndex : getSchema().getSecondaryIndexes()) {
      KVCodec secCodec = new KVCodec();
      secCodec.setKey_codec(
          CodecFactory.getInstance(CodecFactory.FIXED_LENGTH)
              .getCodec((secondIndex.getKeyColumns())));
      if (secondIndex.getValueColumns() != null) {
        secCodec.setValue_codec(
            CodecFactory.getInstance(CodecFactory.FIXED_LENGTH)
                .getCodec((secondIndex.getValueColumns())));
      }
      indexCodecMap.put(secondIndex.getName(), secCodec);
    }
  }