code: @Override
      public <E> List<E> getColumnsById(String schemaName, String tableName, String pKeyColumnName,
              String inverseJoinColumnName, Object pKeyColumnValue, Class columnJavaType)
      {
          List<E> foreignKeys = new ArrayList<E>();
  
          URI uri = null;
          HttpResponse response = null;
          try
          {
              String q = "key=" + CouchDBUtils.appendQuotes(pKeyColumnValue);
              uri = new URI(CouchDBConstants.PROTOCOL, null, httpHost.getHostName(), httpHost.getPort(),
                      CouchDBConstants.URL_SEPARATOR + schemaName.toLowerCase() + CouchDBConstants.URL_SEPARATOR
                              + CouchDBConstants.DESIGN + tableName + CouchDBConstants.VIEW + pKeyColumnName, q, null);
              HttpGet get = new HttpGet(uri);
              get.addHeader("Accept", "application/json");
              response = httpClient.execute(get);
  
              InputStream content = response.getEntity().getContent();
              Reader reader = new InputStreamReader(content);
              JsonObject json = gson.fromJson(reader, JsonObject.class);
  
              JsonElement jsonElement = json.get("rows");
  
              if (jsonElement == null)
              {
                  return foreignKeys;
              }
  
              JsonArray array = jsonElement.getAsJsonArray();
              for (JsonElement element : array)
              {
                  JsonElement value = element.getAsJsonObject().get("value").getAsJsonObject().get(inverseJoinColumnName);
                  if (value != null)
                  {
                      foreignKeys.add((E) PropertyAccessorHelper.fromSourceToTargetClass(columnJavaType, String.class,
                              value.getAsString()));
                  }
              }
          }
          catch (Exception e)
          {
              log.error("Error while fetching column by id {}, Caused by {}.", pKeyColumnValue, e);
              throw new KunderaException(e);
          }
          finally
          {
              closeContent(response);
          }
          return foreignKeys;
      }
docs: /*
  (non-Javadoc)
  
  @see com.impetus.kundera.client.Client#getColumnsById(java.lang.String,
  java.lang.String, java.lang.String, java.lang.String, java.lang.Object,
  java.lang.Class)