blob: c384e2e74e7d95c7593452dcc808533f1f8fb6c6 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.ambari.server;
import java.util.Collection;
import java.util.Collections;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
/**
* Role defines the components that are available to Ambari. It has a few
* similar mechanisms to an enum.
*/
public class Role {
private static final Map<String, Role> roles = new ConcurrentHashMap<>();
/**
* @param name the role name
* @return a Role instance, never <code>null</code>
*/
public static Role valueOf(String name) {
if (roles.containsKey(name)) {
return roles.get(name);
}
Role role = new Role(name);
roles.put(name, role);
return role;
}
/**
* @return a collection of all defined Role instances
*/
public static Collection<Role> values() {
return Collections.unmodifiableCollection(roles.values());
}
public static final Role AMBARI_SERVER_ACTION = valueOf("AMBARI_SERVER_ACTION");
public static final Role DATANODE = valueOf("DATANODE");
public static final Role FLUME_HANDLER = valueOf("FLUME_HANDLER");
public static final Role FLUME_SERVICE_CHECK = valueOf("FLUME_SERVICE_CHECK");
public static final Role GANGLIA_MONITOR = valueOf("GANGLIA_MONITOR");
public static final Role GANGLIA_SERVER = valueOf("GANGLIA_SERVER");
public static final Role HBASE_CLIENT = valueOf("HBASE_CLIENT");
public static final Role HBASE_MASTER = valueOf("HBASE_MASTER");
public static final Role HBASE_REGIONSERVER = valueOf("HBASE_REGIONSERVER");
public static final Role HBASE_SERVICE_CHECK = valueOf("HBASE_SERVICE_CHECK");
public static final Role HCAT = valueOf("HCAT");
public static final Role HCAT_SERVICE_CHECK = valueOf("HCAT_SERVICE_CHECK");
public static final Role GLUSTERFS_CLIENT = valueOf("GLUSTERFS_CLIENT");
public static final Role GLUSTERFS_SERVICE_CHECK = valueOf("GLUSTERFS_SERVICE_CHECK");
public static final Role HDFS_CLIENT = valueOf("HDFS_CLIENT");
public static final Role HDFS_SERVICE_CHECK = valueOf("HDFS_SERVICE_CHECK");
public static final Role HISTORYSERVER = valueOf("HISTORYSERVER");
public static final Role HIVE_CLIENT = valueOf("HIVE_CLIENT");
public static final Role HIVE_METASTORE = valueOf("HIVE_METASTORE");
public static final Role HIVE_SERVER = valueOf("HIVE_SERVER");
public static final Role HIVE_SERVICE_CHECK = valueOf("HIVE_SERVICE_CHECK");
public static final Role JOBTRACKER = valueOf("JOBTRACKER");
public static final Role NODEMANAGER = valueOf("NODEMANAGER");
public static final Role OOZIE_CLIENT = valueOf("OOZIE_CLIENT");
public static final Role OOZIE_SERVER = valueOf("OOZIE_SERVER");
public static final Role PEERSTATUS = valueOf("PEERSTATUS");
public static final Role PIG = valueOf("PIG");
public static final Role PIG_SERVICE_CHECK = valueOf("PIG_SERVICE_CHECK");
public static final Role MAHOUT = valueOf("MAHOUT");
public static final Role MAHOUT_SERVICE_CHECK = valueOf("MAHOUT_SERVICE_CHECK");
public static final Role RESOURCEMANAGER = valueOf("RESOURCEMANAGER");
public static final Role SECONDARY_NAMENODE = valueOf("SECONDARY_NAMENODE");
public static final Role SQOOP = valueOf("SQOOP");
public static final Role SQOOP_SERVICE_CHECK = valueOf("SQOOP_SERVICE_CHECK");
public static final Role HUE_SERVER = valueOf("HUE_SERVER");
public static final Role JOURNALNODE = valueOf("JOURNALNODE");
public static final Role MAPREDUCE_CLIENT = valueOf("MAPREDUCE_CLIENT");
public static final Role MAPREDUCE_SERVICE_CHECK = valueOf("MAPREDUCE_SERVICE_CHECK");
public static final Role MAPREDUCE2_SERVICE_CHECK = valueOf("MAPREDUCE2_SERVICE_CHECK");
public static final Role MYSQL_SERVER = valueOf("MYSQL_SERVER");
public static final Role NAMENODE = valueOf("NAMENODE");
public static final Role NAMENODE_SERVICE_CHECK = valueOf("NAMENODE_SERVICE_CHECK");
public static final Role OOZIE_SERVICE_CHECK = valueOf("OOZIE_SERVICE_CHECK");
public static final Role TASKTRACKER = valueOf("TASKTRACKER");
public static final Role WEBHCAT_SERVER = valueOf("WEBHCAT_SERVER");
public static final Role WEBHCAT_SERVICE_CHECK = valueOf("WEBHCAT_SERVICE_CHECK");
public static final Role YARN_SERVICE_CHECK = valueOf("YARN_SERVICE_CHECK");
public static final Role ZKFC = valueOf("ZKFC");
public static final Role ZOOKEEPER_CLIENT = valueOf("ZOOKEEPER_CLIENT");
public static final Role ZOOKEEPER_QUORUM_SERVICE_CHECK = valueOf("ZOOKEEPER_QUORUM_SERVICE_CHECK");
public static final Role ZOOKEEPER_SERVER = valueOf("ZOOKEEPER_SERVER");
public static final Role FALCON_SERVICE_CHECK = valueOf("FALCON_SERVICE_CHECK");
public static final Role STORM_SERVICE_CHECK = valueOf("STORM_SERVICE_CHECK");
public static final Role YARN_CLIENT = valueOf("YARN_CLIENT");
public static final Role KDC_SERVER = valueOf("KDC_SERVER");
public static final Role KERBEROS_CLIENT = valueOf("KERBEROS_CLIENT");
public static final Role KERBEROS_SERVICE_CHECK = valueOf("KERBEROS_SERVICE_CHECK");
public static final Role METRICS_COLLECTOR = valueOf("METRICS_COLLECTOR");
public static final Role METRICS_MONITOR = valueOf("METRICS_MONITOR");
public static final Role AMS_SERVICE_CHECK = valueOf("AMBARI_METRICS_SERVICE_CHECK");
public static final Role ACCUMULO_CLIENT = valueOf("ACCUMULO_CLIENT");
public static final Role RANGER_ADMIN = valueOf("RANGER_ADMIN");
public static final Role RANGER_USERSYNC = valueOf("RANGER_USERSYNC");
public static final Role KNOX_GATEWAY = valueOf("KNOX_GATEWAY");
public static final Role KAFKA_BROKER = valueOf("KAFKA_BROKER");
public static final Role NIMBUS = valueOf("NIMBUS");
public static final Role RANGER_KMS_SERVER = valueOf("RANGER_KMS_SERVER");
public static final Role LOGSEARCH_SERVER = valueOf("LOGSEARCH_SERVER");
public static final Role INFRA_SOLR = valueOf("INFRA_SOLR");
public static final Role LOGSEARCH_LOGFEEDER = valueOf("LOGSEARCH_LOGFEEDER");
public static final Role INSTALL_PACKAGES = valueOf("install_packages");
public static final Role UPDATE_REPO = valueOf("update_repo");
private String name = null;
private Role(String roleName) {
name = roleName;
}
/**
* @return the name given to the role
*/
public String name() {
return name;
}
@Override
public String toString() {
return name;
}
@Override
public int hashCode() {
return name.hashCode();
}
@Override
public boolean equals(Object o) {
if (null == o || !Role.class.equals(o.getClass())) {
return false;
}
return this == o || name.equals(((Role) o).name);
}
}