public static String getRootNamespace(Configuration conf, String userProvidedNamespace,
      String defaultNamespacePrefix) {
    final boolean isSecure = ZookeeperUtils.isKerberosEnabled(conf);
    String rootNs = userProvidedNamespace;
    if (rootNs == null) {
      rootNs = defaultNamespacePrefix + (isSecure ? SASL_NAMESPACE : UNSECURE_NAMESPACE);
    }
    return rootNs;
  }
@param rootNs A single root namespace override. Not recommended.
@param nsPrefix The namespace prefix to use with default namespaces (appends 'sasl' for secure else 'unsecure'
                to namespace prefix to get effective root namespace).
@param userScopePathPrefix The prefix to use for the user-specific part of the path.
@param workerPrefix The prefix to use for each worker znode.
@param workerGroup group name to use for all workers
@param zkSaslLoginContextName SASL login context name for ZK security; null if not needed.
@param zkPrincipal ZK security principal.
@param zkKeytab ZK security keytab.
@param aclsConfig A config setting to use to determine if ACLs should be verified.
llap-client/src/java/org/apache/hadoop/hive/registry/impl/ZkRegistryBase.java