class MetaDataClientRest extends DefaultClient implements MetaDataClient {

    @Override
    public JsonNode selectUnitbyId(JsonNode selectQuery, String unitId)
        throws MetaDataExecutionException,
        MetaDataDocumentSizeException, InvalidParseOperationException, MetaDataClientServerException {
        if (Strings.isNullOrEmpty(unitId)) {
            throw new InvalidParseOperationException("unitId MUST NOT be empty.");
        }
        try (Response response = make(
            get().withPath("/units/" + unitId).withBody(selectQuery, "selectQuery MUST NOT be empty.").withJson())) {
            check(response);
            return response.readEntity(JsonNode.class);
        } catch (MetaDataNotFoundException | VitamClientInternalException e) {
            throw new MetaDataClientServerException(e);
        }
    }

    public  MetaDataClientRest(VitamClientFactoryInterface factory);

}