jobject MiniCluster::CreateTable()

in src/hbase/test-util/mini-cluster.cc [222:245]


jobject MiniCluster::CreateTable(const string &table, const vector<string> &families,
                                 const vector<string> &keys) {
  jstring table_name_str = env_->NewStringUTF(table.c_str());
  jobject table_name =
      env_->CallStaticObjectMethod(table_name_class_, tbl_name_value_of_mid_, table_name_str);
  jclass array_element_type = env_->FindClass("[B");

  int i = 0;
  jobjectArray family_array = env_->NewObjectArray(families.size(), array_element_type, nullptr);
  for (const auto& family : families) {
    env_->SetObjectArrayElement(family_array, i++, StrToByteChar(family));
  }

  jobjectArray key_array = env_->NewObjectArray(keys.size(), array_element_type, nullptr);

  i = 0;
  for (const auto& key : keys) {
    env_->SetObjectArrayElement(key_array, i++, StrToByteChar(key));
  }

  jobject tbl = env_->CallObjectMethod(htu_, create_table_with_split_mid_, table_name, family_array,
                                       key_array);
  return tbl;
}