org.apache.hadoop.hbase.NamespaceDescriptor#getName ( )源码实例Demo

下面列出了org.apache.hadoop.hbase.NamespaceDescriptor#getName ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: atlas   文件: HBaseBridge.java
private void importNameSpaceAndTable() throws Exception {
    NamespaceDescriptor[] namespaceDescriptors = hbaseAdmin.listNamespaceDescriptors();

    if (ArrayUtils.isNotEmpty(namespaceDescriptors)) {
        for (NamespaceDescriptor namespaceDescriptor : namespaceDescriptors) {
            String namespace = namespaceDescriptor.getName();

            importNameSpace(namespace);
        }
    }

    TableDescriptor[] htds = hbaseAdmin.listTables();

    if (ArrayUtils.isNotEmpty(htds)) {
        for (TableDescriptor htd : htds) {
            String tableName = htd.getTableName().getNameAsString();

            importTable(tableName);
        }
    }
}
 
源代码2 项目: atlas   文件: HBaseBridge.java
private List<NamespaceDescriptor> getMatchingNameSpaces(String nameSpace) throws Exception {
    List<NamespaceDescriptor> ret                  = new ArrayList<>();
    NamespaceDescriptor[]     namespaceDescriptors = hbaseAdmin.listNamespaceDescriptors();
    Pattern                                pattern = Pattern.compile(nameSpace);

    for (NamespaceDescriptor namespaceDescriptor:namespaceDescriptors){
        String  nmSpace = namespaceDescriptor.getName();
        Matcher matcher = pattern.matcher(nmSpace);

        if (matcher.find()){
            ret.add(namespaceDescriptor);
        }
    }

    return ret;
}
 
protected final void checkNamespaceRSGroup(MasterProcedureEnv env, NamespaceDescriptor nd)
  throws IOException {
  Supplier<String> forWhom = () -> "namespace " + nd.getName();
  RSGroupInfo rsGroupInfo = MasterProcedureUtil.checkGroupExists(
    env.getMasterServices().getRSGroupInfoManager()::getRSGroup,
    MasterProcedureUtil.getNamespaceGroup(nd), forWhom);
  MasterProcedureUtil.checkGroupNotEmpty(rsGroupInfo, forWhom);
}
 
源代码4 项目: hbase   文件: TableNamespaceManager.java
public void validateTableAndRegionCount(NamespaceDescriptor desc) throws IOException {
  if (getMaxRegions(desc) <= 0) {
    throw new ConstraintException(
      "The max region quota for " + desc.getName() + " is less than or equal to zero.");
  }
  if (getMaxTables(desc) <= 0) {
    throw new ConstraintException(
      "The max tables quota for " + desc.getName() + " is less than or equal to zero.");
  }
}
 
源代码5 项目: hbase   文件: RSGroupInfoManagerImpl.java
@Override
public synchronized void removeRSGroup(String groupName) throws IOException {
  RSGroupInfo rsGroupInfo = getRSGroupInfo(groupName);
  int serverCount = rsGroupInfo.getServers().size();
  if (serverCount > 0) {
    throw new ConstraintException("RSGroup " + groupName + " has " + serverCount +
        " servers; you must remove these servers from the RSGroup before" +
        " the RSGroup can be removed.");
  }
  for (TableDescriptor td : masterServices.getTableDescriptors().getAll().values()) {
    if (td.getRegionServerGroup().map(groupName::equals).orElse(false)) {
      throw new ConstraintException("RSGroup " + groupName + " is already referenced by " +
          td.getTableName() + "; you must remove all the tables from the rsgroup before " +
          "the rsgroup can be removed.");
    }
  }
  for (NamespaceDescriptor ns : masterServices.getClusterSchema().getNamespaces()) {
    String nsGroup = ns.getConfigurationValue(RSGroupInfo.NAMESPACE_DESC_PROP_GROUP);
    if (nsGroup != null && nsGroup.equals(groupName)) {
      throw new ConstraintException(
          "RSGroup " + groupName + " is referenced by namespace: " + ns.getName());
    }
  }
  Map<String, RSGroupInfo> rsGroupMap = holder.groupName2Group;
  if (!rsGroupMap.containsKey(groupName) || groupName.equals(RSGroupInfo.DEFAULT_GROUP)) {
    throw new ConstraintException(
      "Group " + groupName + " does not exist or is a reserved " + "group");
  }
  Map<String, RSGroupInfo> newGroupMap = Maps.newHashMap(rsGroupMap);
  newGroupMap.remove(groupName);
  flushConfig(newGroupMap);
}
 
源代码6 项目: hbase   文件: AccessControlClient.java
/**
 * List all the userPermissions matching the given table pattern and user name.
 * @param connection Connection
 * @param tableRegex The regular expression string to match against
 * @param userName User name, if empty then all user permissions will be retrieved.
 * @return List of UserPermissions
 * @throws Throwable on failure
 */
public static List<UserPermission> getUserPermissions(Connection connection, String tableRegex,
    String userName) throws Throwable {
  List<UserPermission> permList = new ArrayList<>();
  try (Admin admin = connection.getAdmin()) {
    if (tableRegex == null || tableRegex.isEmpty()) {
      permList = admin.getUserPermissions(
        GetUserPermissionsRequest.newBuilder().withUserName(userName).build());
    } else if (tableRegex.charAt(0) == '@') { // Namespaces
      String namespaceRegex = tableRegex.substring(1);
      for (NamespaceDescriptor nsds : admin.listNamespaceDescriptors()) { // Read out all
                                                                          // namespaces
        String namespace = nsds.getName();
        if (namespace.matches(namespaceRegex)) { // Match the given namespace regex?
          permList.addAll(admin.getUserPermissions(
            GetUserPermissionsRequest.newBuilder(namespace).withUserName(userName).build()));
        }
      }
    } else { // Tables
      List<TableDescriptor> htds = admin.listTableDescriptors(Pattern.compile(tableRegex), true);
      for (TableDescriptor htd : htds) {
        permList.addAll(admin.getUserPermissions(GetUserPermissionsRequest
            .newBuilder(htd.getTableName()).withUserName(userName).build()));
      }
    }
  }
  return permList;
}