Java 类org.apache.hadoop.hbase.protobuf.generated.ClientProtos.GetResponse 实例源码

项目:ditb    文件:ProtobufUtil.java   
/**
 * A helper to get a row of the closet one before using client protocol.
 *
 * @param client
 * @param regionName
 * @param row
 * @param family
 * @return the row or the closestRowBefore if it doesn't exist
 * @throws IOException
 * @deprecated since 0.99 - use reversed scanner instead.
 */
@Deprecated
public static Result getRowOrBefore(final ClientService.BlockingInterface client,
    final byte[] regionName, final byte[] row,
    final byte[] family) throws IOException {
  GetRequest request =
    RequestConverter.buildGetRowOrBeforeRequest(
      regionName, row, family);
  try {
    GetResponse response = client.get(null, request);
    if (!response.hasResult()) return null;
    return toResult(response.getResult());
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:ditb    文件:TestClientNoCluster.java   
static GetResponse doMetaGetResponse(final SortedMap<byte [], Pair<HRegionInfo, ServerName>> meta,
    final GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  Pair<HRegionInfo, ServerName> p = meta.get(row.toByteArray());
  if (p == null) {
    if (request.getGet().getClosestRowBefore()) {
      byte [] bytes = row.toByteArray();
      SortedMap<byte [], Pair<HRegionInfo, ServerName>> head =
        bytes != null? meta.headMap(bytes): meta;
      p = head == null? null: head.get(head.lastKey());
    }
  }
  if (p != null) {
    resultBuilder.addCell(getRegionInfo(row, p.getFirst()));
    resultBuilder.addCell(getServer(row, p.getSecond()));
  }
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:pbase    文件:ProtobufUtil.java   
/**
 * A helper to get a row of the closet one before using client protocol.
 *
 * @param client
 * @param regionName
 * @param row
 * @param family
 * @return the row or the closestRowBefore if it doesn't exist
 * @throws IOException
 * @deprecated since 0.99 - use reversed scanner instead.
 */
@Deprecated
public static Result getRowOrBefore(final ClientService.BlockingInterface client,
    final byte[] regionName, final byte[] row,
    final byte[] family) throws IOException {
  GetRequest request =
    RequestConverter.buildGetRowOrBeforeRequest(
      regionName, row, family);
  try {
    GetResponse response = client.get(null, request);
    if (!response.hasResult()) return null;
    return toResult(response.getResult());
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:pbase    文件:TestClientNoCluster.java   
static GetResponse doMetaGetResponse(final SortedMap<byte [], Pair<HRegionInfo, ServerName>> meta,
    final GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  Pair<HRegionInfo, ServerName> p = meta.get(row.toByteArray());
  if (p == null) {
    if (request.getGet().getClosestRowBefore()) {
      byte [] bytes = row.toByteArray();
      SortedMap<byte [], Pair<HRegionInfo, ServerName>> head =
        bytes != null? meta.headMap(bytes): meta;
      p = head == null? null: head.get(head.lastKey());
    }
  }
  if (p != null) {
    resultBuilder.addCell(getRegionInfo(row, p.getFirst()));
    resultBuilder.addCell(getServer(row, p.getSecond()));
  }
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:HIndex    文件:TestClientNoCluster.java   
static GetResponse doMetaGetResponse(final SortedMap<byte [], Pair<HRegionInfo, ServerName>> meta,
    final GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  Pair<HRegionInfo, ServerName> p = meta.get(row.toByteArray());
  if (p == null) {
    if (request.getGet().getClosestRowBefore()) {
      byte [] bytes = row.toByteArray();
      SortedMap<byte [], Pair<HRegionInfo, ServerName>> head =
        bytes != null? meta.headMap(bytes): meta;
      p = head == null? null: head.get(head.lastKey());
    }
  }
  if (p != null) {
    resultBuilder.addCell(getRegionInfo(row, p.getFirst()));
    resultBuilder.addCell(getServer(row, p.getSecond()));
  }
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:PyroDB    文件:ProtobufUtil.java   
/**
 * A helper to get a row of the closet one before using client protocol.
 *
 * @param client
 * @param regionName
 * @param row
 * @param family
 * @return the row or the closestRowBefore if it doesn't exist
 * @throws IOException
 * @deprecated since 0.99 - use reversed scanner instead.
 */
@Deprecated
public static Result getRowOrBefore(final ClientService.BlockingInterface client,
    final byte[] regionName, final byte[] row,
    final byte[] family) throws IOException {
  GetRequest request =
    RequestConverter.buildGetRowOrBeforeRequest(
      regionName, row, family);
  try {
    GetResponse response = client.get(null, request);
    if (!response.hasResult()) return null;
    return toResult(response.getResult());
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:PyroDB    文件:TestClientNoCluster.java   
static GetResponse doMetaGetResponse(final SortedMap<byte [], Pair<HRegionInfo, ServerName>> meta,
    final GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  Pair<HRegionInfo, ServerName> p = meta.get(row.toByteArray());
  if (p == null) {
    if (request.getGet().getClosestRowBefore()) {
      byte [] bytes = row.toByteArray();
      SortedMap<byte [], Pair<HRegionInfo, ServerName>> head =
        bytes != null? meta.headMap(bytes): meta;
      p = head == null? null: head.get(head.lastKey());
    }
  }
  if (p != null) {
    resultBuilder.addCell(getRegionInfo(row, p.getFirst()));
    resultBuilder.addCell(getServer(row, p.getSecond()));
  }
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:c5    文件:TestClientNoCluster.java   
static GetResponse doMetaGetResponse(final SortedMap<byte [], Pair<HRegionInfo, ServerName>> meta,
    final GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  Pair<HRegionInfo, ServerName> p = meta.get(row.toByteArray());
  if (p == null) {
    if (request.getGet().getClosestRowBefore()) {
      byte [] bytes = row.toByteArray();
      SortedMap<byte [], Pair<HRegionInfo, ServerName>> head =
        bytes != null? meta.headMap(bytes): meta;
      p = head == null? null: head.get(head.lastKey());
    }
  }
  if (p != null) {
    resultBuilder.addCell(getRegionInfo(row, p.getFirst()));
    resultBuilder.addCell(getServer(row, p.getSecond()));
  }
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:DominoHBase    文件:HTable.java   
/**
 * {@inheritDoc}
 */
@Override
public boolean exists(final Get get) throws IOException {
  return new ServerCallable<Boolean>(connection, tableName, get.getRow(), operationTimeout) {
        public Boolean call() throws IOException {
          try {
            GetRequest request = RequestConverter.buildGetRequest(
                location.getRegionInfo().getRegionName(), get, true);
            GetResponse response = server.get(null, request);
            return response.getExists();
          } catch (ServiceException se) {
            throw ProtobufUtil.getRemoteException(se);
          }
        }
      }.withRetries();
}
项目:ditb    文件:TestMetaTableLocator.java   
/**
 * Test normal operations
 */
@Test public void testMetaLookup()
        throws IOException, InterruptedException, ServiceException, KeeperException {
  final ClientProtos.ClientService.BlockingInterface client =
          Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);

  Mockito.when(client.get((RpcController)Mockito.any(), (GetRequest)Mockito.any())).
          thenReturn(GetResponse.newBuilder().build());

  final MetaTableLocator mtl = new MetaTableLocator();
  assertNull(mtl.getMetaRegionLocation(this.watcher));
  for (RegionState.State state : RegionState.State.values()) {
    if (state.equals(RegionState.State.OPEN))
      continue;
    MetaTableLocator.setMetaLocation(this.watcher, SN, state);
    assertNull(mtl.getMetaRegionLocation(this.watcher));
    assertEquals(state, MetaTableLocator.getMetaRegionState(this.watcher).getState());
  }
  MetaTableLocator.setMetaLocation(this.watcher, SN, RegionState.State.OPEN);
  assertEquals(mtl.getMetaRegionLocation(this.watcher), SN);
  assertEquals(RegionState.State.OPEN,
    MetaTableLocator.getMetaRegionState(this.watcher).getState());

  mtl.deleteMetaLocation(this.watcher);
  assertNull(MetaTableLocator.getMetaRegionState(this.watcher).getServerName());
  assertEquals(MetaTableLocator.getMetaRegionState(this.watcher).getState(),
    RegionState.State.OFFLINE);
  assertNull(mtl.getMetaRegionLocation(this.watcher));
}
项目:ditb    文件:TestMetaTableLocator.java   
/**
 * Test interruptable while blocking wait on meta.
 * @throws IOException
 * @throws ServiceException
 * @throws InterruptedException
 */
@Test public void testInterruptWaitOnMeta()
throws IOException, InterruptedException, ServiceException {
  final ClientProtos.ClientService.BlockingInterface client =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);

  Mockito.when(client.get((RpcController)Mockito.any(), (GetRequest)Mockito.any())).
  thenReturn(GetResponse.newBuilder().build());

  final MetaTableLocator mtl = new MetaTableLocator();
  ServerName meta = new MetaTableLocator().getMetaRegionLocation(this.watcher);
  assertNull(meta);
  Thread t = new Thread() {
    @Override
    public void run() {
      try {
        mtl.waitMetaRegionLocation(watcher);
      } catch (InterruptedException e) {
        throw new RuntimeException("Interrupted", e);
      }
    }
  };
  t.start();
  while (!t.isAlive())
    Threads.sleep(1);
  Threads.sleep(1);
  assertTrue(t.isAlive());
  mtl.stop();
  // Join the thread... should exit shortly.
  t.join();
}
项目:ditb    文件:MockRegionServer.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  byte[] regionName = request.getRegion().getValue().toByteArray();
  Map<byte [], Result> m = this.gets.get(regionName);
  GetResponse.Builder builder = GetResponse.newBuilder();
  if (m != null) {
    byte[] row = request.getGet().getRow().toByteArray();
    builder.setResult(ProtobufUtil.toResult(m.get(row)));
  }
  return builder.build();
}
项目:ditb    文件:TestClientNoCluster.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  boolean metaRegion = isMetaRegion(request.getRegion().getValue().toByteArray(),
    request.getRegion().getType());
  if (!metaRegion) {
    return doGetResponse(request);
  }
  return doMetaGetResponse(meta, request);
}
项目:ditb    文件:TestClientNoCluster.java   
private GetResponse doGetResponse(GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:pbase    文件:TestMetaTableLocator.java   
/**
 * Test normal operations
 */
@Test public void testMetaLookup()
        throws IOException, InterruptedException, ServiceException, KeeperException {
  final ClientProtos.ClientService.BlockingInterface client =
          Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);

  Mockito.when(client.get((RpcController)Mockito.any(), (GetRequest)Mockito.any())).
          thenReturn(GetResponse.newBuilder().build());

  final MetaTableLocator mtl = new MetaTableLocator();
  assertNull(mtl.getMetaRegionLocation(this.watcher));
  for (RegionState.State state : RegionState.State.values()) {
    if (state.equals(RegionState.State.OPEN))
      continue;
    MetaTableLocator.setMetaLocation(this.watcher, SN, state);
    assertNull(mtl.getMetaRegionLocation(this.watcher));
    assertEquals(state, MetaTableLocator.getMetaRegionState(this.watcher).getState());
  }
  MetaTableLocator.setMetaLocation(this.watcher, SN, RegionState.State.OPEN);
  assertEquals(mtl.getMetaRegionLocation(this.watcher), SN);
  assertEquals(RegionState.State.OPEN,
    MetaTableLocator.getMetaRegionState(this.watcher).getState());

  mtl.deleteMetaLocation(this.watcher);
  assertNull(MetaTableLocator.getMetaRegionState(this.watcher).getServerName());
  assertEquals(MetaTableLocator.getMetaRegionState(this.watcher).getState(),
    RegionState.State.OFFLINE);
  assertNull(mtl.getMetaRegionLocation(this.watcher));
}
项目:pbase    文件:TestMetaTableLocator.java   
/**
 * Test interruptable while blocking wait on meta.
 * @throws IOException
 * @throws ServiceException
 * @throws InterruptedException
 */
@Test public void testInterruptWaitOnMeta()
throws IOException, InterruptedException, ServiceException {
  final ClientProtos.ClientService.BlockingInterface client =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);

  Mockito.when(client.get((RpcController)Mockito.any(), (GetRequest)Mockito.any())).
  thenReturn(GetResponse.newBuilder().build());

  final MetaTableLocator mtl = new MetaTableLocator();
  ServerName meta = new MetaTableLocator().getMetaRegionLocation(this.watcher);
  assertNull(meta);
  Thread t = new Thread() {
    @Override
    public void run() {
      try {
        mtl.waitMetaRegionLocation(watcher);
      } catch (InterruptedException e) {
        throw new RuntimeException("Interrupted", e);
      }
    }
  };
  t.start();
  while (!t.isAlive())
    Threads.sleep(1);
  Threads.sleep(1);
  assertTrue(t.isAlive());
  mtl.stop();
  // Join the thread... should exit shortly.
  t.join();
}
项目:pbase    文件:MockRegionServer.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  byte[] regionName = request.getRegion().getValue().toByteArray();
  Map<byte [], Result> m = this.gets.get(regionName);
  GetResponse.Builder builder = GetResponse.newBuilder();
  if (m != null) {
    byte[] row = request.getGet().getRow().toByteArray();
    builder.setResult(ProtobufUtil.toResult(m.get(row)));
  }
  return builder.build();
}
项目:pbase    文件:TestClientNoCluster.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  boolean metaRegion = isMetaRegion(request.getRegion().getValue().toByteArray(),
    request.getRegion().getType());
  if (!metaRegion) {
    return doGetResponse(request);
  }
  return doMetaGetResponse(meta, request);
}
项目:pbase    文件:TestClientNoCluster.java   
private GetResponse doGetResponse(GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:HIndex    文件:TestCatalogTracker.java   
/**
 * Test interruptable while blocking wait on meta.
 * @throws IOException
 * @throws ServiceException
 * @throws InterruptedException
 */
@Test public void testInterruptWaitOnMeta()
throws IOException, InterruptedException, ServiceException {
  final ClientProtos.ClientService.BlockingInterface client =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);
  HConnection connection = mockConnection(null, client);

  Mockito.when(client.get((RpcController)Mockito.any(), (GetRequest)Mockito.any())).
  thenReturn(GetResponse.newBuilder().build());
  final CatalogTracker ct = constructAndStartCatalogTracker(connection);
  ServerName meta = ct.getMetaLocation();
  Assert.assertNull(meta);
  Thread t = new Thread() {
    @Override
    public void run() {
      try {
        ct.waitForMeta();
      } catch (InterruptedException e) {
        throw new RuntimeException("Interrupted", e);
      }
    }
  };
  t.start();
  while (!t.isAlive())
    Threads.sleep(1);
  Threads.sleep(1);
  assertTrue(t.isAlive());
  ct.stop();
  // Join the thread... should exit shortly.
  t.join();
}
项目:HIndex    文件:MockRegionServer.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  byte[] regionName = request.getRegion().getValue().toByteArray();
  Map<byte [], Result> m = this.gets.get(regionName);
  GetResponse.Builder builder = GetResponse.newBuilder();
  if (m != null) {
    byte[] row = request.getGet().getRow().toByteArray();
    builder.setResult(ProtobufUtil.toResult(m.get(row)));
  }
  return builder.build();
}
项目:HIndex    文件:ProtobufUtil.java   
/**
 * A helper to get a row of the closet one before using client protocol.
 * @param client
 * @param regionName
 * @param row
 * @param family
 * @param payloadCarryingRpcController
 * @return the row or the closestRowBefore if it doesn't exist
 * @throws IOException
 */
public static Result getRowOrBefore(final ClientService.BlockingInterface client,
    final byte[] regionName, final byte[] row, final byte[] family,
    PayloadCarryingRpcController payloadCarryingRpcController) throws IOException {
  GetRequest request =
    RequestConverter.buildGetRowOrBeforeRequest(
      regionName, row, family);
  try {
    GetResponse response = client.get(payloadCarryingRpcController, request);
    if (!response.hasResult()) return null;
    return toResult(response.getResult());
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:HIndex    文件:TestClientNoCluster.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  boolean metaRegion = isMetaRegion(request.getRegion().getValue().toByteArray(),
    request.getRegion().getType());
  if (!metaRegion) {
    return doGetResponse(request);
  }
  return doMetaGetResponse(meta, request);
}
项目:HIndex    文件:TestClientNoCluster.java   
private GetResponse doGetResponse(GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:PyroDB    文件:TestCatalogTracker.java   
/**
 * Test interruptable while blocking wait on meta.
 * @throws IOException
 * @throws ServiceException
 * @throws InterruptedException
 */
@Test public void testInterruptWaitOnMeta()
throws IOException, InterruptedException, ServiceException {
  final ClientProtos.ClientService.BlockingInterface client =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);
  HConnection connection = mockConnection(null, client);

  Mockito.when(client.get((RpcController)Mockito.any(), (GetRequest)Mockito.any())).
  thenReturn(GetResponse.newBuilder().build());
  final CatalogTracker ct = constructAndStartCatalogTracker(connection);
  ServerName meta = ct.getMetaLocation();
  Assert.assertNull(meta);
  Thread t = new Thread() {
    @Override
    public void run() {
      try {
        ct.waitForMeta();
      } catch (InterruptedException e) {
        throw new RuntimeException("Interrupted", e);
      }
    }
  };
  t.start();
  while (!t.isAlive())
    Threads.sleep(1);
  Threads.sleep(1);
  assertTrue(t.isAlive());
  ct.stop();
  // Join the thread... should exit shortly.
  t.join();
}
项目:PyroDB    文件:MockRegionServer.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  byte[] regionName = request.getRegion().getValue().toByteArray();
  Map<byte [], Result> m = this.gets.get(regionName);
  GetResponse.Builder builder = GetResponse.newBuilder();
  if (m != null) {
    byte[] row = request.getGet().getRow().toByteArray();
    builder.setResult(ProtobufUtil.toResult(m.get(row)));
  }
  return builder.build();
}
项目:PyroDB    文件:TestClientNoCluster.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  boolean metaRegion = isMetaRegion(request.getRegion().getValue().toByteArray(),
    request.getRegion().getType());
  if (!metaRegion) {
    return doGetResponse(request);
  }
  return doMetaGetResponse(meta, request);
}
项目:PyroDB    文件:TestClientNoCluster.java   
private GetResponse doGetResponse(GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:c5    文件:TestCatalogTracker.java   
/**
 * Test interruptable while blocking wait on meta.
 * @throws IOException
 * @throws ServiceException
 * @throws InterruptedException
 */
@Test public void testInterruptWaitOnMeta()
throws IOException, InterruptedException, ServiceException {
  final ClientProtos.ClientService.BlockingInterface client =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);
  HConnection connection = mockConnection(null, client);

  Mockito.when(client.get((RpcController)Mockito.any(), (GetRequest)Mockito.any())).
  thenReturn(GetResponse.newBuilder().build());
  final CatalogTracker ct = constructAndStartCatalogTracker(connection);
  ServerName meta = ct.getMetaLocation();
  Assert.assertNull(meta);
  Thread t = new Thread() {
    @Override
    public void run() {
      try {
        ct.waitForMeta();
      } catch (InterruptedException e) {
        throw new RuntimeException("Interrupted", e);
      }
    }
  };
  t.start();
  while (!t.isAlive())
    Threads.sleep(1);
  Threads.sleep(1);
  assertTrue(t.isAlive());
  ct.stop();
  // Join the thread... should exit shortly.
  t.join();
}
项目:c5    文件:MockRegionServer.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  byte[] regionName = request.getRegion().getValue().toByteArray();
  Map<byte [], Result> m = this.gets.get(regionName);
  GetResponse.Builder builder = GetResponse.newBuilder();
  if (m != null) {
    byte[] row = request.getGet().getRow().toByteArray();
    builder.setResult(ProtobufUtil.toResult(m.get(row)));
  }
  return builder.build();
}
项目:c5    文件:ProtobufUtil.java   
/**
 * A helper to get a row of the closet one before using client protocol.
 *
 * @param client
 * @param regionName
 * @param row
 * @param family
 * @return the row or the closestRowBefore if it doesn't exist
 * @throws IOException
 */
public static Result getRowOrBefore(final ClientService.BlockingInterface client,
    final byte[] regionName, final byte[] row,
    final byte[] family) throws IOException {
  GetRequest request =
    RequestConverter.buildGetRowOrBeforeRequest(
      regionName, row, family);
  try {
    GetResponse response = client.get(null, request);
    if (!response.hasResult()) return null;
    return toResult(response.getResult());
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:c5    文件:TestClientNoCluster.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
throws ServiceException {
  boolean metaRegion = isMetaRegion(request.getRegion().getValue().toByteArray(),
    request.getRegion().getType());
  if (!metaRegion) {
    return doGetResponse(request);
  }
  return doMetaGetResponse(meta, request);
}
项目:c5    文件:TestClientNoCluster.java   
private GetResponse doGetResponse(GetRequest request) {
  ClientProtos.Result.Builder resultBuilder = ClientProtos.Result.newBuilder();
  ByteString row = request.getGet().getRow();
  resultBuilder.addCell(getStartCode(row));
  GetResponse.Builder builder = GetResponse.newBuilder();
  builder.setResult(resultBuilder.build());
  return builder.build();
}
项目:DominoHBase    文件:ProtobufUtil.java   
/**
 * A helper to get a row of the closet one before using client protocol.
 *
 * @param client
 * @param regionName
 * @param row
 * @param family
 * @return the row or the closestRowBefore if it doesn't exist
 * @throws IOException
 */
public static Result getRowOrBefore(final ClientProtocol client,
    final byte[] regionName, final byte[] row,
    final byte[] family) throws IOException {
  GetRequest request =
    RequestConverter.buildGetRowOrBeforeRequest(
      regionName, row, family);
  try {
    GetResponse response = client.get(null, request);
    if (!response.hasResult()) return null;
    return toResult(response.getResult());
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:DominoHBase    文件:TestCatalogTracker.java   
/**
 * Test interruptable while blocking wait on root and meta.
 * @throws IOException
 * @throws ServiceException
 * @throws InterruptedException
 */
@Test public void testInterruptWaitOnMetaAndRoot()
throws IOException, InterruptedException, ServiceException {
  final ClientProtocol client = Mockito.mock(ClientProtocol.class);
  HConnection connection = mockConnection(null, client);
  try {
    Mockito.when(client.get((RpcController)Mockito.any(), (GetRequest)Mockito.any())).
    thenReturn(GetResponse.newBuilder().build());
    final CatalogTracker ct = constructAndStartCatalogTracker(connection);
    ServerName hsa = ct.getRootLocation();
    Assert.assertNull(hsa);
    ServerName meta = ct.getMetaLocation();
    Assert.assertNull(meta);
    Thread t = new Thread() {
      @Override
      public void run() {
        try {
          ct.waitForMeta();
        } catch (InterruptedException e) {
          throw new RuntimeException("Interrupted", e);
        }
      }
    };
    t.start();
    while (!t.isAlive())
      Threads.sleep(1);
    Threads.sleep(1);
    assertTrue(t.isAlive());
    ct.stop();
    // Join the thread... should exit shortly.
    t.join();
  } finally {
    HConnectionManager.deleteConnection(UTIL.getConfiguration(), true);
  }
}
项目:DominoHBase    文件:MockRegionServer.java   
@Override
public GetResponse get(RpcController controller, GetRequest request)
    throws ServiceException {
  byte[] regionName = request.getRegion().getValue().toByteArray();
  Map<byte [], Result> m = this.gets.get(regionName);
  GetResponse.Builder builder = GetResponse.newBuilder();
  if (m != null) {
    byte[] row = request.getGet().getRow().toByteArray();
    builder.setResult(ProtobufUtil.toResult(m.get(row)));
  }
  return builder.build();
}
项目:ditb    文件:TestMetaCache.java   
@Override
public GetResponse get(final RpcController controller,
                       final ClientProtos.GetRequest request) throws ServiceException {
  throwSomeExceptions();
  return super.get(controller, request);
}
项目:pbase    文件:TestAssignmentManager.java   
/**
 * Create an {@link AssignmentManagerWithExtrasForTesting} that has mocked
 * {@link CatalogTracker} etc.
 * @param server
 * @param manager
 * @return An AssignmentManagerWithExtras with mock connections, etc.
 * @throws IOException
 * @throws KeeperException
 */
private AssignmentManagerWithExtrasForTesting setUpMockedAssignmentManager(final Server server,
    final ServerManager manager) throws IOException, KeeperException,
      ServiceException, CoordinatedStateException {
  // Make an RS Interface implementation. Make it so a scanner can go against
  // it and a get to return the single region, REGIONINFO, this test is
  // messing with. Needed when "new master" joins cluster. AM will try and
  // rebuild its list of user regions and it will also get the HRI that goes
  // with an encoded name by doing a Get on hbase:meta
  ClientProtos.ClientService.BlockingInterface ri =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);
  // Get a meta row result that has region up on SERVERNAME_A for REGIONINFO
  Result r = MetaMockingUtil.getMetaTableRowResult(REGIONINFO, SERVERNAME_A);
  final ScanResponse.Builder builder = ScanResponse.newBuilder();
  builder.setMoreResults(true);
  builder.addCellsPerResult(r.size());
  final List<CellScannable> rows = new ArrayList<CellScannable>(1);
  rows.add(r);
  Answer<ScanResponse> ans = new Answer<ClientProtos.ScanResponse>() {
    @Override
    public ScanResponse answer(InvocationOnMock invocation) throws Throwable {
      PayloadCarryingRpcController controller = (PayloadCarryingRpcController) invocation
          .getArguments()[0];
      if (controller != null) {
        controller.setCellScanner(CellUtil.createCellScanner(rows));
      }
      return builder.build();
    }
  };
  if (enabling) {
    Mockito.when(ri.scan((RpcController) Mockito.any(), (ScanRequest) Mockito.any()))
        .thenAnswer(ans).thenAnswer(ans).thenAnswer(ans).thenAnswer(ans).thenAnswer(ans)
        .thenReturn(ScanResponse.newBuilder().setMoreResults(false).build());
  } else {
    Mockito.when(ri.scan((RpcController) Mockito.any(), (ScanRequest) Mockito.any())).thenAnswer(
        ans);
  }
  // If a get, return the above result too for REGIONINFO
  GetResponse.Builder getBuilder = GetResponse.newBuilder();
  getBuilder.setResult(ProtobufUtil.toResult(r));
  Mockito.when(ri.get((RpcController)Mockito.any(), (GetRequest) Mockito.any())).
    thenReturn(getBuilder.build());
  // Get a connection w/ mocked up common methods.
  ClusterConnection connection = (ClusterConnection)HConnectionTestingUtility.
    getMockedConnectionAndDecorate(HTU.getConfiguration(), null,
      ri, SERVERNAME_B, REGIONINFO);
  // These mocks were done up when all connections were managed.  World is different now we
  // moved to unmanaged connections.  It messes up the intercepts done in these tests.
  // Just mark connections as marked and then down in MetaTableAccessor, it will go the path
  // that picks up the above mocked up 'implementation' so 'scans' of meta return the expected
  // result.  Redo in new realm of unmanaged connections.
  Mockito.when(connection.isManaged()).thenReturn(true);
  // Make it so we can get the connection from our mocked catalogtracker
  // Create and startup an executor. Used by AM handling zk callbacks.
  ExecutorService executor = startupMasterExecutor("mockedAMExecutor");
  this.balancer = LoadBalancerFactory.getLoadBalancer(server.getConfiguration());
  AssignmentManagerWithExtrasForTesting am = new AssignmentManagerWithExtrasForTesting(
    server, connection, manager, this.balancer, executor, new NullTableLockManager());
  return am;
}
项目:HIndex    文件:TestAssignmentManager.java   
/**
 * Create an {@link AssignmentManagerWithExtrasForTesting} that has mocked
 * {@link CatalogTracker} etc.
 * @param server
 * @param manager
 * @return An AssignmentManagerWithExtras with mock connections, etc.
 * @throws IOException
 * @throws KeeperException
 */
private AssignmentManagerWithExtrasForTesting setUpMockedAssignmentManager(final Server server,
    final ServerManager manager) throws IOException, KeeperException, ServiceException {
  // We need a mocked catalog tracker. Its used by our AM instance.
  CatalogTracker ct = Mockito.mock(CatalogTracker.class);
  // Make an RS Interface implementation. Make it so a scanner can go against
  // it and a get to return the single region, REGIONINFO, this test is
  // messing with. Needed when "new master" joins cluster. AM will try and
  // rebuild its list of user regions and it will also get the HRI that goes
  // with an encoded name by doing a Get on hbase:meta
  ClientProtos.ClientService.BlockingInterface ri =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);
  // Get a meta row result that has region up on SERVERNAME_A for REGIONINFO
  Result r = MetaMockingUtil.getMetaTableRowResult(REGIONINFO, SERVERNAME_A);
  final ScanResponse.Builder builder = ScanResponse.newBuilder();
  builder.setMoreResults(true);
  builder.addCellsPerResult(r.size());
  final List<CellScannable> rows = new ArrayList<CellScannable>(1);
  rows.add(r);
  Answer<ScanResponse> ans = new Answer<ClientProtos.ScanResponse>() {
    @Override
    public ScanResponse answer(InvocationOnMock invocation) throws Throwable {
      PayloadCarryingRpcController controller = (PayloadCarryingRpcController) invocation
          .getArguments()[0];
      if (controller != null) {
        controller.setCellScanner(CellUtil.createCellScanner(rows));
      }
      return builder.build();
    }
  };
  if (enabling) {
    Mockito.when(ri.scan((RpcController) Mockito.any(), (ScanRequest) Mockito.any()))
        .thenAnswer(ans).thenAnswer(ans).thenAnswer(ans).thenAnswer(ans).thenAnswer(ans)
        .thenReturn(ScanResponse.newBuilder().setMoreResults(false).build());
  } else {
    Mockito.when(ri.scan((RpcController) Mockito.any(), (ScanRequest) Mockito.any())).thenAnswer(
        ans);
  }
  // If a get, return the above result too for REGIONINFO
  GetResponse.Builder getBuilder = GetResponse.newBuilder();
  getBuilder.setResult(ProtobufUtil.toResult(r));
  Mockito.when(ri.get((RpcController)Mockito.any(), (GetRequest) Mockito.any())).
    thenReturn(getBuilder.build());
  // Get a connection w/ mocked up common methods.
  HConnection connection = HConnectionTestingUtility.
    getMockedConnectionAndDecorate(HTU.getConfiguration(), null,
      ri, SERVERNAME_B, REGIONINFO);
  // Make it so we can get the connection from our mocked catalogtracker
  Mockito.when(ct.getConnection()).thenReturn(connection);
  // Create and startup an executor. Used by AM handling zk callbacks.
  ExecutorService executor = startupMasterExecutor("mockedAMExecutor");
  this.balancer = LoadBalancerFactory.getLoadBalancer(server.getConfiguration());
  AssignmentManagerWithExtrasForTesting am = new AssignmentManagerWithExtrasForTesting(
    server, manager, ct, this.balancer, executor, new NullTableLockManager());
  return am;
}
项目:PyroDB    文件:TestAssignmentManager.java   
/**
 * Create an {@link AssignmentManagerWithExtrasForTesting} that has mocked
 * {@link CatalogTracker} etc.
 * @param server
 * @param manager
 * @return An AssignmentManagerWithExtras with mock connections, etc.
 * @throws IOException
 * @throws KeeperException
 */
private AssignmentManagerWithExtrasForTesting setUpMockedAssignmentManager(final Server server,
    final ServerManager manager) throws IOException, KeeperException,
      ServiceException, CoordinatedStateException {
  // We need a mocked catalog tracker. Its used by our AM instance.
  CatalogTracker ct = Mockito.mock(CatalogTracker.class);
  // Make an RS Interface implementation. Make it so a scanner can go against
  // it and a get to return the single region, REGIONINFO, this test is
  // messing with. Needed when "new master" joins cluster. AM will try and
  // rebuild its list of user regions and it will also get the HRI that goes
  // with an encoded name by doing a Get on hbase:meta
  ClientProtos.ClientService.BlockingInterface ri =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);
  // Get a meta row result that has region up on SERVERNAME_A for REGIONINFO
  Result r = MetaMockingUtil.getMetaTableRowResult(REGIONINFO, SERVERNAME_A);
  final ScanResponse.Builder builder = ScanResponse.newBuilder();
  builder.setMoreResults(true);
  builder.addCellsPerResult(r.size());
  final List<CellScannable> rows = new ArrayList<CellScannable>(1);
  rows.add(r);
  Answer<ScanResponse> ans = new Answer<ClientProtos.ScanResponse>() {
    @Override
    public ScanResponse answer(InvocationOnMock invocation) throws Throwable {
      PayloadCarryingRpcController controller = (PayloadCarryingRpcController) invocation
          .getArguments()[0];
      if (controller != null) {
        controller.setCellScanner(CellUtil.createCellScanner(rows));
      }
      return builder.build();
    }
  };
  if (enabling) {
    Mockito.when(ri.scan((RpcController) Mockito.any(), (ScanRequest) Mockito.any()))
        .thenAnswer(ans).thenAnswer(ans).thenAnswer(ans).thenAnswer(ans).thenAnswer(ans)
        .thenReturn(ScanResponse.newBuilder().setMoreResults(false).build());
  } else {
    Mockito.when(ri.scan((RpcController) Mockito.any(), (ScanRequest) Mockito.any())).thenAnswer(
        ans);
  }
  // If a get, return the above result too for REGIONINFO
  GetResponse.Builder getBuilder = GetResponse.newBuilder();
  getBuilder.setResult(ProtobufUtil.toResult(r));
  Mockito.when(ri.get((RpcController)Mockito.any(), (GetRequest) Mockito.any())).
    thenReturn(getBuilder.build());
  // Get a connection w/ mocked up common methods.
  HConnection connection = HConnectionTestingUtility.
    getMockedConnectionAndDecorate(HTU.getConfiguration(), null,
      ri, SERVERNAME_B, REGIONINFO);
  // Make it so we can get the connection from our mocked catalogtracker
  Mockito.when(ct.getConnection()).thenReturn(connection);
  // Create and startup an executor. Used by AM handling zk callbacks.
  ExecutorService executor = startupMasterExecutor("mockedAMExecutor");
  this.balancer = LoadBalancerFactory.getLoadBalancer(server.getConfiguration());
  AssignmentManagerWithExtrasForTesting am = new AssignmentManagerWithExtrasForTesting(
    server, manager, ct, this.balancer, executor, new NullTableLockManager());
  return am;
}