当前位置: 首页>>代码示例>>Java>>正文


Java Result.create方法代码示例

本文整理汇总了Java中org.apache.hadoop.hbase.client.Result.create方法的典型用法代码示例。如果您正苦于以下问题:Java Result.create方法的具体用法?Java Result.create怎么用?Java Result.create使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.hadoop.hbase.client.Result的用法示例。


在下文中一共展示了Result.create方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: deserialize

import org.apache.hadoop.hbase.client.Result; //导入方法依赖的package包/类
@Override
public Result deserialize(Result mutation) throws IOException {
  int totalBuffer = in.readInt();
  if (totalBuffer == 0) {
    return Result.EMPTY_RESULT;
  }
  byte[] buf = new byte[totalBuffer];
  readChunked(in, buf, 0, totalBuffer);
  List<Cell> kvs = new ArrayList<Cell>();
  int offset = 0;
  while (offset < totalBuffer) {
    int keyLength = Bytes.toInt(buf, offset);
    offset += Bytes.SIZEOF_INT;
    kvs.add(new KeyValue(buf, offset, keyLength));
    offset += keyLength;
  }
  return Result.create(kvs);
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:19,代码来源:ResultSerialization.java

示例2: toResult

import org.apache.hadoop.hbase.client.Result; //导入方法依赖的package包/类
/**
 * Convert a protocol buffer Result to a client Result
 *
 * @param proto the protocol buffer Result to convert
 * @return the converted client Result
 */
public static Result toResult(final ClientProtos.Result proto) {
  if (proto.hasExists()) {
    if (proto.getStale()) {
      return proto.getExists() ? EMPTY_RESULT_EXISTS_TRUE_STALE :EMPTY_RESULT_EXISTS_FALSE_STALE;
    }
    return proto.getExists() ? EMPTY_RESULT_EXISTS_TRUE : EMPTY_RESULT_EXISTS_FALSE;
  }

  List<CellProtos.Cell> values = proto.getCellList();
  if (values.isEmpty()){
    return proto.getStale() ? EMPTY_RESULT_STALE : EMPTY_RESULT;
  }

  List<Cell> cells = new ArrayList<Cell>(values.size());
  for (CellProtos.Cell c : values) {
    cells.add(toCell(c));
  }
  return Result.create(cells, null, proto.getStale(), proto.getPartial());
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:26,代码来源:ProtobufUtil.java

示例3: testGetHRegionInfo

import org.apache.hadoop.hbase.client.Result; //导入方法依赖的package包/类
@Test
public void testGetHRegionInfo() throws IOException {
  assertNull(HRegionInfo.getHRegionInfo(new Result()));

  List<Cell> kvs = new ArrayList<Cell>();
  Result r = Result.create(kvs);
  assertNull(HRegionInfo.getHRegionInfo(r));

  byte [] f = HConstants.CATALOG_FAMILY;
  // Make a key value that doesn't have the expected qualifier.
  kvs.add(new KeyValue(HConstants.EMPTY_BYTE_ARRAY, f,
    HConstants.SERVER_QUALIFIER, f));
  r = Result.create(kvs);
  assertNull(HRegionInfo.getHRegionInfo(r));
  // Make a key that does not have a regioninfo value.
  kvs.add(new KeyValue(HConstants.EMPTY_BYTE_ARRAY, f,
    HConstants.REGIONINFO_QUALIFIER, f));
  HRegionInfo hri = HRegionInfo.getHRegionInfo(Result.create(kvs));
  assertTrue(hri == null);
  // OK, give it what it expects
  kvs.clear();
  kvs.add(new KeyValue(HConstants.EMPTY_BYTE_ARRAY, f,
    HConstants.REGIONINFO_QUALIFIER,
    HRegionInfo.FIRST_META_REGIONINFO.toByteArray()));
  hri = HRegionInfo.getHRegionInfo(Result.create(kvs));
  assertNotNull(hri);
  assertTrue(hri.equals(HRegionInfo.FIRST_META_REGIONINFO));
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:29,代码来源:TestMetaTableAccessorNoCluster.java

示例4: getMetaTableRowResult

import org.apache.hadoop.hbase.client.Result; //导入方法依赖的package包/类
/**
 * Returns a Result object constructed from the given region information simulating
 * a catalog table result.
 * @param region the HRegionInfo object or null
 * @param sn to use making startcode and server hostname:port in meta or null
 * @param splita daughter region or null
 * @param splitb  daughter region or null
 * @return A mocked up Result that fakes a Get on a row in the <code>hbase:meta</code> table.
 * @throws IOException
 */
public static Result getMetaTableRowResult(HRegionInfo region, final ServerName sn,
    HRegionInfo splita, HRegionInfo splitb) throws IOException {
  List<Cell> kvs = new ArrayList<Cell>();
  if (region != null) {
    kvs.add(new KeyValue(
      region.getRegionName(),
      HConstants.CATALOG_FAMILY, HConstants.REGIONINFO_QUALIFIER,
      region.toByteArray()));
  }

  if (sn != null) {
    kvs.add(new KeyValue(region.getRegionName(),
      HConstants.CATALOG_FAMILY, HConstants.SERVER_QUALIFIER,
      Bytes.toBytes(sn.getHostAndPort())));
    kvs.add(new KeyValue(region.getRegionName(),
      HConstants.CATALOG_FAMILY, HConstants.STARTCODE_QUALIFIER,
      Bytes.toBytes(sn.getStartcode())));
  }

  if (splita != null) {
    kvs.add(new KeyValue(
        region.getRegionName(),
        HConstants.CATALOG_FAMILY, HConstants.SPLITA_QUALIFIER,
        splita.toByteArray()));
  }

  if (splitb != null) {
    kvs.add(new KeyValue(
        region.getRegionName(),
        HConstants.CATALOG_FAMILY, HConstants.SPLITB_QUALIFIER,
        splitb.toByteArray()));
  }

  //important: sort the kvs so that binary search work
  Collections.sort(kvs, KeyValue.META_COMPARATOR);

  return Result.create(kvs);
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:49,代码来源:MetaMockingUtil.java

示例5: getResults

import org.apache.hadoop.hbase.client.Result; //导入方法依赖的package包/类
/**
 * Create Results from the cells using the cells meta data. 
 * @param cellScanner
 * @param response
 * @return results
 */
public static Result[] getResults(CellScanner cellScanner, ScanResponse response)
    throws IOException {
  if (response == null) return null;
  // If cellscanner, then the number of Results to return is the count of elements in the
  // cellsPerResult list.  Otherwise, it is how many results are embedded inside the response.
  int noOfResults = cellScanner != null?
    response.getCellsPerResultCount(): response.getResultsCount();
  Result[] results = new Result[noOfResults];
  for (int i = 0; i < noOfResults; i++) {
    if (cellScanner != null) {
      // Cells are out in cellblocks.  Group them up again as Results.  How many to read at a
      // time will be found in getCellsLength -- length here is how many Cells in the i'th Result
      int noOfCells = response.getCellsPerResult(i);
      boolean isPartial =
          response.getPartialFlagPerResultCount() > i ?
              response.getPartialFlagPerResult(i) : false;
      List<Cell> cells = new ArrayList<Cell>(noOfCells);
      for (int j = 0; j < noOfCells; j++) {
        try {
          if (cellScanner.advance() == false) {
            // We are not able to retrieve the exact number of cells which ResultCellMeta says us.
            // We have to scan for the same results again. Throwing DNRIOE as a client retry on the
            // same scanner will result in OutOfOrderScannerNextException
            String msg = "Results sent from server=" + noOfResults + ". But only got " + i
              + " results completely at client. Resetting the scanner to scan again.";
            LOG.error(msg);
            throw new DoNotRetryIOException(msg);
          }
        } catch (IOException ioe) {
          // We are getting IOE while retrieving the cells for Results.
          // We have to scan for the same results again. Throwing DNRIOE as a client retry on the
          // same scanner will result in OutOfOrderScannerNextException
          LOG.error("Exception while reading cells from result."
            + "Resetting the scanner to scan again.", ioe);
          throw new DoNotRetryIOException("Resetting the scanner.", ioe);
        }
        cells.add(cellScanner.current());
      }
      results[i] = Result.create(cells, null, response.getStale(), isPartial);
    } else {
      // Result is pure pb.
      results[i] = ProtobufUtil.toResult(response.getResults(i));
    }
  }
  return results;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:53,代码来源:ResponseConverter.java


注:本文中的org.apache.hadoop.hbase.client.Result.create方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。