public class RMWebServices extends org.apache.hadoop.yarn.server.webapp.WebServices implements RMWebServiceProtocol
| Modifier and Type | Field and Description | 
|---|---|
| static String | DEFAULT_END_TIME | 
| static String | DEFAULT_INCLUDE_RESOURCE | 
| static String | DEFAULT_QUEUE | 
| static String | DEFAULT_RESERVATION_ID | 
| static String | DEFAULT_START_TIME | 
| static String | DEFAULT_SUMMARIZE | 
| static String | DELEGATION_TOKEN_HEADER | 
| Constructor and Description | 
|---|
| RMWebServices(ResourceManager rm,
             org.apache.hadoop.conf.Configuration conf) | 
| Modifier and Type | Method and Description | 
|---|---|
| javax.ws.rs.core.Response | addToClusterNodeLabels(NodeLabelsInfo newNodeLabels,
                      javax.servlet.http.HttpServletRequest hsr)This method adds specific node labels for specific nodes, and it is
 reachable by using  RMWSConsts.ADD_NODE_LABELS. | 
| javax.ws.rs.core.Response | cancelDelegationToken(javax.servlet.http.HttpServletRequest hsr)This method cancel the delegation token from the client, and it is
 reachable by using  RMWSConsts.DELEGATION_TOKEN. | 
| RMQueueAclInfo | checkUserAccessToQueue(String queue,
                      String username,
                      String queueAclType,
                      javax.servlet.http.HttpServletRequest hsr)This method verifies if an user has access to a specified queue. | 
| javax.ws.rs.core.Response | createNewApplication(javax.servlet.http.HttpServletRequest hsr)Generates a new ApplicationId which is then sent to the client. | 
| javax.ws.rs.core.Response | createNewReservation(javax.servlet.http.HttpServletRequest hsr)Generates a new ReservationId which is then sent to the client. | 
| javax.ws.rs.core.Response | deleteReservation(ReservationDeleteRequestInfo resContext,
                 javax.servlet.http.HttpServletRequest hsr)Function to delete a Reservation to the RM. | 
| String | dumpSchedulerLogs(String time,
                 javax.servlet.http.HttpServletRequest hsr)This method dumps the scheduler logs for the time got in input, and it is
 reachable by using  RMWSConsts.SCHEDULER_LOGS. | 
| static String | escapeInvalidXMLCharacters(String str)This method ensures that the output String has only
 valid XML unicode characters as specified by the
 XML 1.0 standard. | 
| javax.ws.rs.core.Response | formatSchedulerConfiguration(javax.servlet.http.HttpServletRequest hsr) | 
| ClusterInfo | get()This method retrieves the cluster information, and it is reachable by using
  RMWSConsts.INFO. | 
| ActivitiesInfo | getActivities(javax.servlet.http.HttpServletRequest hsr,
             String nodeId,
             String groupBy)This method retrieve all the activities in a specific node, and it is
 reachable by using  RMWSConsts.SCHEDULER_ACTIVITIES. | 
| AppInfo | getApp(javax.servlet.http.HttpServletRequest hsr,
      String appId,
      Set<String> unselectedFields)This method retrieves the report for a specific app, and it is reachable by
 using  RMWSConsts.APPS_APPID. | 
| AppActivitiesInfo | getAppActivities(javax.servlet.http.HttpServletRequest hsr,
                String appId,
                String time,
                Set<String> requestPriorities,
                Set<String> allocationRequestIds,
                String groupBy,
                String limit,
                Set<String> actions,
                boolean summarize)This method retrieves all the activities for a specific app for a specific
 period of time, and it is reachable by using
  RMWSConsts.SCHEDULER_APP_ACTIVITIES. | 
| org.apache.hadoop.yarn.server.webapp.dao.AppAttemptInfo | getAppAttempt(javax.servlet.http.HttpServletRequest req,
             javax.servlet.http.HttpServletResponse res,
             String appId,
             String appAttemptId) | 
| AppAttemptsInfo | getAppAttempts(javax.servlet.http.HttpServletRequest hsr,
              String appId)This method retrieves all the attempts information for a specific app, and
 it is reachable by using  RMWSConsts.APPS_APPID_APPATTEMPTS. | 
| protected org.apache.hadoop.yarn.api.records.ApplicationAttemptReport | getApplicationAttemptReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptReportRequest request) | 
| protected List<org.apache.hadoop.yarn.api.records.ApplicationAttemptReport> | getApplicationAttemptsReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptsRequest request) | 
| protected org.apache.hadoop.yarn.api.records.ApplicationReport | getApplicationReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationReportRequest request) | 
| protected List<org.apache.hadoop.yarn.api.records.ApplicationReport> | getApplicationsReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest request) | 
| AppPriority | getAppPriority(javax.servlet.http.HttpServletRequest hsr,
              String appId)This method retrieves the priority for a specific app, and it is reachable
 by using  RMWSConsts.APPS_APPID_PRIORITY. | 
| AppQueue | getAppQueue(javax.servlet.http.HttpServletRequest hsr,
           String appId)This method retrieves the queue for a specific app, and it is reachable by
 using  RMWSConsts.APPS_APPID_QUEUE. | 
| AppsInfo | getApps(javax.servlet.http.HttpServletRequest hsr,
       String stateQuery,
       Set<String> statesQuery,
       String finalStatusQuery,
       String userQuery,
       String queueQuery,
       String limit,
       String startedBegin,
       String startedEnd,
       String finishBegin,
       String finishEnd,
       Set<String> applicationTypes,
       Set<String> applicationTags,
       String name,
       Set<String> unselectedFields)This method retrieves all the app reports in the cluster, and it is
 reachable by using  RMWSConsts.APPS. | 
| AppState | getAppState(javax.servlet.http.HttpServletRequest hsr,
           String appId)This method retrieves the state for a specific app, and it is reachable by
 using  RMWSConsts.APPS_APPID_STATE. | 
| ApplicationStatisticsInfo | getAppStatistics(javax.servlet.http.HttpServletRequest hsr,
                Set<String> stateQueries,
                Set<String> typeQueries)This method retrieves all the statistics for a specific app, and it is
 reachable by using  RMWSConsts.APP_STATISTICS. | 
| AppTimeoutInfo | getAppTimeout(javax.servlet.http.HttpServletRequest hsr,
             String appId,
             String type)This method retrieves the timeout information for a specific app with a
 specific type, and it is reachable by using
  RMWSConsts.APPS_TIMEOUTS_TYPE. | 
| AppTimeoutsInfo | getAppTimeouts(javax.servlet.http.HttpServletRequest hsr,
              String appId)This method retrieves the timeout information for a specific app, and it is
 reachable by using  RMWSConsts.APPS_TIMEOUTS. | 
| ClusterInfo | getClusterInfo()This method retrieves the cluster information, and it is reachable by using
  RMWSConsts.INFO. | 
| ClusterMetricsInfo | getClusterMetricsInfo()This method retrieves the cluster metrics information, and it is reachable
 by using  RMWSConsts.METRICS. | 
| NodeLabelsInfo | getClusterNodeLabels(javax.servlet.http.HttpServletRequest hsr)This method retrieves all the node labels in the cluster, and it is
 reachable by using  RMWSConsts.GET_NODE_LABELS. | 
| ClusterUserInfo | getClusterUserInfo(javax.servlet.http.HttpServletRequest hsr)This method retrieves the cluster user information, and it is reachable by using
  RMWSConsts.CLUSTER_USER_INFO. | 
| org.apache.hadoop.yarn.server.webapp.dao.ContainerInfo | getContainer(javax.servlet.http.HttpServletRequest req,
            javax.servlet.http.HttpServletResponse res,
            String appId,
            String appAttemptId,
            String containerId) | 
| protected org.apache.hadoop.yarn.api.records.ContainerReport | getContainerReport(org.apache.hadoop.yarn.api.protocolrecords.GetContainerReportRequest request) | 
| org.apache.hadoop.yarn.server.webapp.dao.ContainersInfo | getContainers(javax.servlet.http.HttpServletRequest req,
             javax.servlet.http.HttpServletResponse res,
             String appId,
             String appAttemptId) | 
| protected List<org.apache.hadoop.yarn.api.records.ContainerReport> | getContainersReport(org.apache.hadoop.yarn.api.protocolrecords.GetContainersRequest request) | 
| NodeLabelsInfo | getLabelsOnNode(javax.servlet.http.HttpServletRequest hsr,
               String nodeId)This method retrieves all the node labels for specific node, and it is
 reachable by using  RMWSConsts.NODES_NODEID_GETLABELS. | 
| LabelsToNodesInfo | getLabelsToNodes(Set<String> labels)This method retrieves all the node within multiple node labels in the
 cluster, and it is reachable by using  RMWSConsts.LABEL_MAPPINGS. | 
| NodeInfo | getNode(String nodeId)This method retrieves a specific node information, and it is reachable by
 using  RMWSConsts.NODES_NODEID. | 
| NodesInfo | getNodes(String states)This method retrieves all the nodes information in the cluster, and it is
 reachable by using  RMWSConsts.NODES. | 
| NodeToLabelsInfo | getNodeToLabels(javax.servlet.http.HttpServletRequest hsr)This method retrieves all the node labels with the respective nodes in the
 cluster, and it is reachable by using
  RMWSConsts.GET_NODE_TO_LABELS. | 
| javax.ws.rs.core.Response | getSchedulerConfiguration(javax.servlet.http.HttpServletRequest hsr) | 
| javax.ws.rs.core.Response | getSchedulerConfigurationVersion(javax.servlet.http.HttpServletRequest hsr) | 
| SchedulerTypeInfo | getSchedulerInfo()This method retrieves the current scheduler status, and it is reachable by
 using  RMWSConsts.SCHEDULER. | 
| protected Boolean | hasAccess(RMApp app,
         javax.servlet.http.HttpServletRequest hsr) | 
| protected javax.ws.rs.core.Response | killApp(RMApp app,
       org.apache.hadoop.security.UserGroupInformation callerUGI,
       javax.servlet.http.HttpServletRequest hsr,
       String diagnostic) | 
| javax.ws.rs.core.Response | listReservation(String queue,
               String reservationId,
               long startTime,
               long endTime,
               boolean includeResourceAllocations,
               javax.servlet.http.HttpServletRequest hsr)Function to retrieve a list of all the reservations. | 
| protected javax.ws.rs.core.Response | moveApp(RMApp app,
       org.apache.hadoop.security.UserGroupInformation callerUGI,
       String targetQueue) | 
| javax.ws.rs.core.Response | postDelegationToken(DelegationToken tokenData,
                   javax.servlet.http.HttpServletRequest hsr)This method posts a delegation token from the client, and it is reachable
 by using  RMWSConsts.DELEGATION_TOKEN. | 
| javax.ws.rs.core.Response | postDelegationTokenExpiration(javax.servlet.http.HttpServletRequest hsr)This method updates the expiration for a delegation token from the client,
 and it is reachable by using
  RMWSConsts.DELEGATION_TOKEN_EXPIRATION. | 
| javax.ws.rs.core.Response | removeFromCluserNodeLabels(Set<String> oldNodeLabels,
                          javax.servlet.http.HttpServletRequest hsr)This method removes all the node labels for specific nodes, and it is
 reachable by using  RMWSConsts.REMOVE_NODE_LABELS. | 
| javax.ws.rs.core.Response | replaceLabelsOnNode(Set<String> newNodeLabelsName,
                   javax.servlet.http.HttpServletRequest hsr,
                   String nodeId)This method replaces all the node labels for specific node, and it is
 reachable by using  RMWSConsts.NODES_NODEID_REPLACE_LABELS. | 
| javax.ws.rs.core.Response | replaceLabelsOnNodes(NodeToLabelsEntryList newNodeToLabels,
                    javax.servlet.http.HttpServletRequest hsr)This method replaces all the node labels for specific nodes, and it is
 reachable by using  RMWSConsts.REPLACE_NODE_TO_LABELS. | 
| javax.ws.rs.core.Response | signalToContainer(String containerId,
                 String command,
                 javax.servlet.http.HttpServletRequest hsr)This method sends a signal to container. | 
| javax.ws.rs.core.Response | submitApplication(ApplicationSubmissionContextInfo newApp,
                 javax.servlet.http.HttpServletRequest hsr)Function to submit an app to the RM. | 
| javax.ws.rs.core.Response | submitReservation(ReservationSubmissionRequestInfo resContext,
                 javax.servlet.http.HttpServletRequest hsr)Function to submit a Reservation to the RM.This method is reachable by
 using  RMWSConsts.RESERVATION_SUBMIT. | 
| javax.ws.rs.core.Response | updateApplicationPriority(AppPriority targetPriority,
                         javax.servlet.http.HttpServletRequest hsr,
                         String appId)This method updates the priority for a specific application, and it is
 reachable by using  RMWSConsts.APPS_APPID_PRIORITY. | 
| javax.ws.rs.core.Response | updateApplicationTimeout(AppTimeoutInfo appTimeout,
                        javax.servlet.http.HttpServletRequest hsr,
                        String appId)This method updates the timeout information for a specific app, and it is
 reachable by using  RMWSConsts.APPS_TIMEOUT. | 
| javax.ws.rs.core.Response | updateAppQueue(AppQueue targetQueue,
              javax.servlet.http.HttpServletRequest hsr,
              String appId)This method updates the queue for a specific application, and it is
 reachable by using  RMWSConsts.APPS_APPID_QUEUE. | 
| javax.ws.rs.core.Response | updateAppState(AppState targetState,
              javax.servlet.http.HttpServletRequest hsr,
              String appId)This method updates the state of the app in input, and it is reachable by
 using  RMWSConsts.APPS_APPID_STATE. | 
| ResourceInfo | updateNodeResource(javax.servlet.http.HttpServletRequest hsr,
                  String nodeId,
                  ResourceOptionInfo resourceOption)This method changes the resources of a specific node, and it is reachable
 by using  RMWSConsts.NODE_RESOURCE. | 
| javax.ws.rs.core.Response | updateReservation(ReservationUpdateRequestInfo resContext,
                 javax.servlet.http.HttpServletRequest hsr)Function to update a Reservation to the RM. | 
| javax.ws.rs.core.Response | updateSchedulerConfiguration(org.apache.hadoop.yarn.webapp.dao.SchedConfUpdateInfo mutationInfo,
                            javax.servlet.http.HttpServletRequest hsr) | 
| javax.ws.rs.core.Response | validateAndGetSchedulerConfiguration(org.apache.hadoop.yarn.webapp.dao.SchedConfUpdateInfo mutationInfo,
                                    javax.servlet.http.HttpServletRequest hsr) | 
public static final String DEFAULT_QUEUE
public static final String DEFAULT_RESERVATION_ID
public static final String DEFAULT_START_TIME
public static final String DEFAULT_END_TIME
public static final String DEFAULT_INCLUDE_RESOURCE
public static final String DEFAULT_SUMMARIZE
public static final String DELEGATION_TOKEN_HEADER
@Inject public RMWebServices(ResourceManager rm, org.apache.hadoop.conf.Configuration conf)
public ClusterInfo get()
RMWebServiceProtocolRMWSConsts.INFO.get in interface RMWebServiceProtocolpublic ClusterInfo getClusterInfo()
RMWebServiceProtocolRMWSConsts.INFO.getClusterInfo in interface RMWebServiceProtocolpublic ClusterUserInfo getClusterUserInfo(@Context javax.servlet.http.HttpServletRequest hsr)
RMWebServiceProtocolRMWSConsts.CLUSTER_USER_INFO.getClusterUserInfo in interface RMWebServiceProtocolpublic ClusterMetricsInfo getClusterMetricsInfo()
RMWebServiceProtocolRMWSConsts.METRICS.getClusterMetricsInfo in interface RMWebServiceProtocolApplicationClientProtocol.getClusterMetrics(org.apache.hadoop.yarn.api.protocolrecords.GetClusterMetricsRequest)public SchedulerTypeInfo getSchedulerInfo()
RMWebServiceProtocolRMWSConsts.SCHEDULER.getSchedulerInfo in interface RMWebServiceProtocolpublic String dumpSchedulerLogs(String time, @Context javax.servlet.http.HttpServletRequest hsr) throws IOException
RMWebServiceProtocolRMWSConsts.SCHEDULER_LOGS.dumpSchedulerLogs in interface RMWebServiceProtocoltime - the period of time. It is a FormParam.hsr - the servlet requestIOException - when it cannot create dump log filepublic NodesInfo getNodes(String states)
RMWebServiceProtocolRMWSConsts.NODES.getNodes in interface RMWebServiceProtocolstates - the states we want to filter. It is a QueryParam.ApplicationClientProtocol.getClusterNodes(org.apache.hadoop.yarn.api.protocolrecords.GetClusterNodesRequest)public NodeInfo getNode(String nodeId)
RMWebServiceProtocolRMWSConsts.NODES_NODEID.getNode in interface RMWebServiceProtocolnodeId - the node we want to retrieve the information. It is a
          PathParam.public ResourceInfo updateNodeResource(@Context javax.servlet.http.HttpServletRequest hsr, String nodeId, ResourceOptionInfo resourceOption) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocolRMWSConsts.NODE_RESOURCE.updateNodeResource in interface RMWebServiceProtocolhsr - The servlet request.nodeId - The node we want to retrieve the information for.
               It is a PathParam.resourceOption - The resource change.org.apache.hadoop.security.authorize.AuthorizationException - If the user is not authorized.public static String escapeInvalidXMLCharacters(String str)
str - The String whose invalid xml characters we want to escape.public AppsInfo getApps(@Context javax.servlet.http.HttpServletRequest hsr, String stateQuery, Set<String> statesQuery, String finalStatusQuery, String userQuery, String queueQuery, String limit, String startedBegin, String startedEnd, String finishBegin, String finishEnd, Set<String> applicationTypes, Set<String> applicationTags, String name, Set<String> unselectedFields)
RMWebServiceProtocolRMWSConsts.APPS.getApps in interface RMWebServiceProtocolhsr - the servlet requeststateQuery - right now the stateQuery is deprecated. It is a
          QueryParam.statesQuery - filter the result by states. It is a QueryParam.finalStatusQuery - filter the result by final states. It is a
          QueryParam.userQuery - filter the result by user. It is a QueryParam.queueQuery - filter the result by queue. It is a QueryParam.limit - set a limit of the result. It is a QueryParam.startedBegin - filter the result by started begin time. It is a
          QueryParam.startedEnd - filter the result by started end time. It is a
          QueryParam.finishBegin - filter the result by finish begin time. It is a
          QueryParam.finishEnd - filter the result by finish end time. It is a QueryParam.applicationTypes - filter the result by types. It is a QueryParam.applicationTags - filter the result by tags. It is a QueryParam.name - filter the name of the application. It is a QueryParam.unselectedFields - De-selected params to avoid from report. It is a
          QueryParam.ApplicationBaseProtocol.getApplications(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest)public ActivitiesInfo getActivities(@Context javax.servlet.http.HttpServletRequest hsr, String nodeId, String groupBy)
RMWebServiceProtocolRMWSConsts.SCHEDULER_ACTIVITIES.getActivities in interface RMWebServiceProtocolhsr - the servlet requestnodeId - the node we want to retrieve the activities. It is a
          QueryParam.groupBy - the groupBy type by which the activities should be
          aggregated. It is a QueryParam.public AppActivitiesInfo getAppActivities(@Context javax.servlet.http.HttpServletRequest hsr, String appId, String time, Set<String> requestPriorities, Set<String> allocationRequestIds, String groupBy, String limit, Set<String> actions, boolean summarize)
RMWebServiceProtocolRMWSConsts.SCHEDULER_APP_ACTIVITIES.getAppActivities in interface RMWebServiceProtocolhsr - the servlet requestappId - the applicationId we want to retrieve the activities. It is a
          QueryParam.time - for how long we want to retrieve the activities. It is a
          QueryParam.requestPriorities - the request priorities we want to retrieve the
          activities. It is a QueryParam.allocationRequestIds - the allocation request ids we want to retrieve
          the activities. It is a QueryParam.groupBy - the groupBy type by which the activities should be
          aggregated. It is a QueryParam.limit - set a limit of the result. It is a QueryParam.actions - the required actions of app activities. It is a QueryParam.summarize - whether app activities in multiple scheduling processes
          need to be summarized. It is a QueryParam.public ApplicationStatisticsInfo getAppStatistics(@Context javax.servlet.http.HttpServletRequest hsr, Set<String> stateQueries, Set<String> typeQueries)
RMWebServiceProtocolRMWSConsts.APP_STATISTICS.getAppStatistics in interface RMWebServiceProtocolhsr - the servlet requeststateQueries - filter the result by states. It is a QueryParam.typeQueries - filter the result by type names. It is a QueryParam.public AppInfo getApp(@Context javax.servlet.http.HttpServletRequest hsr, String appId, Set<String> unselectedFields)
RMWebServiceProtocolRMWSConsts.APPS_APPID.getApp in interface RMWebServiceProtocolhsr - the servlet requestappId - the Id of the application we want the report. It is a
          PathParam.unselectedFields - De-selected param list to avoid from report. It is
          a QueryParam.ApplicationBaseProtocol.getApplicationReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationReportRequest)public AppAttemptsInfo getAppAttempts(@Context javax.servlet.http.HttpServletRequest hsr, String appId)
RMWebServiceProtocolRMWSConsts.APPS_APPID_APPATTEMPTS.getAppAttempts in interface RMWebServiceProtocolhsr - the servlet requestappId - the application we want to get the attempts. It is a
          PathParam.ApplicationBaseProtocol.getApplicationAttempts(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptsRequest)public org.apache.hadoop.yarn.server.webapp.dao.AppAttemptInfo getAppAttempt(@Context
                                                                             javax.servlet.http.HttpServletRequest req,
                                                                             @Context
                                                                             javax.servlet.http.HttpServletResponse res,
                                                                             String appId,
                                                                             String appAttemptId)
getAppAttempt in class org.apache.hadoop.yarn.server.webapp.WebServicespublic org.apache.hadoop.yarn.server.webapp.dao.ContainersInfo getContainers(@Context
                                                                             javax.servlet.http.HttpServletRequest req,
                                                                             @Context
                                                                             javax.servlet.http.HttpServletResponse res,
                                                                             String appId,
                                                                             String appAttemptId)
getContainers in class org.apache.hadoop.yarn.server.webapp.WebServicespublic org.apache.hadoop.yarn.server.webapp.dao.ContainerInfo getContainer(@Context
                                                                           javax.servlet.http.HttpServletRequest req,
                                                                           @Context
                                                                           javax.servlet.http.HttpServletResponse res,
                                                                           String appId,
                                                                           String appAttemptId,
                                                                           String containerId)
getContainer in class org.apache.hadoop.yarn.server.webapp.WebServicespublic AppState getAppState(@Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocolRMWSConsts.APPS_APPID_STATE.getAppState in interface RMWebServiceProtocolhsr - the servlet requestappId - the Id of the application we want the state. It is a
          PathParam.org.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorizedpublic javax.ws.rs.core.Response updateAppState(AppState targetState, @Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException, org.apache.hadoop.yarn.exceptions.YarnException, InterruptedException, IOException
RMWebServiceProtocolRMWSConsts.APPS_APPID_STATE.updateAppState in interface RMWebServiceProtocoltargetState - the target state for the app. It is a content param.hsr - the servlet requestappId - the Id of the application we want to update the state. It is a
          PathParam.org.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
           methodorg.apache.hadoop.yarn.exceptions.YarnException - if app does not existInterruptedException - if interruptedIOException - if doAs action throws an IOExceptionpublic NodeToLabelsInfo getNodeToLabels(@Context javax.servlet.http.HttpServletRequest hsr) throws IOException
RMWebServiceProtocolRMWSConsts.GET_NODE_TO_LABELS.getNodeToLabels in interface RMWebServiceProtocolhsr - the servlet requestIOException - if an IOException happenedApplicationClientProtocol.getNodeToLabels(org.apache.hadoop.yarn.api.protocolrecords.GetNodesToLabelsRequest)public LabelsToNodesInfo getLabelsToNodes(Set<String> labels) throws IOException
RMWebServiceProtocolRMWSConsts.LABEL_MAPPINGS.getLabelsToNodes in interface RMWebServiceProtocollabels - filter the result by node labels. It is a QueryParam.IOException - if an IOException happenedApplicationClientProtocol.getLabelsToNodes(org.apache.hadoop.yarn.api.protocolrecords.GetLabelsToNodesRequest)public javax.ws.rs.core.Response replaceLabelsOnNodes(NodeToLabelsEntryList newNodeToLabels, @Context javax.servlet.http.HttpServletRequest hsr) throws IOException
RMWebServiceProtocolRMWSConsts.REPLACE_NODE_TO_LABELS.replaceLabelsOnNodes in interface RMWebServiceProtocolnewNodeToLabels - the list of new labels. It is a content param.hsr - the servlet requestIOExceptionResourceManagerAdministrationProtocol.replaceLabelsOnNode(org.apache.hadoop.yarn.server.api.protocolrecords.ReplaceLabelsOnNodeRequest)public javax.ws.rs.core.Response replaceLabelsOnNode(Set<String> newNodeLabelsName, @Context javax.servlet.http.HttpServletRequest hsr, String nodeId) throws Exception
RMWebServiceProtocolRMWSConsts.NODES_NODEID_REPLACE_LABELS.replaceLabelsOnNode in interface RMWebServiceProtocolnewNodeLabelsName - the list of new labels. It is a QueryParam.hsr - the servlet requestnodeId - the node we want to replace the node labels. It is a
          PathParam.Exception - if an exception happenedResourceManagerAdministrationProtocol.replaceLabelsOnNode(org.apache.hadoop.yarn.server.api.protocolrecords.ReplaceLabelsOnNodeRequest)public NodeLabelsInfo getClusterNodeLabels(@Context javax.servlet.http.HttpServletRequest hsr) throws IOException
RMWebServiceProtocolRMWSConsts.GET_NODE_LABELS.getClusterNodeLabels in interface RMWebServiceProtocolhsr - the servlet requestIOException - if an IOException happenedApplicationClientProtocol.getClusterNodeLabels(org.apache.hadoop.yarn.api.protocolrecords.GetClusterNodeLabelsRequest)public javax.ws.rs.core.Response addToClusterNodeLabels(NodeLabelsInfo newNodeLabels, @Context javax.servlet.http.HttpServletRequest hsr) throws Exception
RMWebServiceProtocolRMWSConsts.ADD_NODE_LABELS.addToClusterNodeLabels in interface RMWebServiceProtocolnewNodeLabels - the node labels to add. It is a content param.hsr - the servlet requestException - in case of bad requestResourceManagerAdministrationProtocol.addToClusterNodeLabels(org.apache.hadoop.yarn.server.api.protocolrecords.AddToClusterNodeLabelsRequest)public javax.ws.rs.core.Response removeFromCluserNodeLabels(Set<String> oldNodeLabels, @Context javax.servlet.http.HttpServletRequest hsr) throws Exception
RMWebServiceProtocolRMWSConsts.REMOVE_NODE_LABELS.removeFromCluserNodeLabels in interface RMWebServiceProtocololdNodeLabels - the node labels to remove. It is a QueryParam.hsr - the servlet requestException - in case of bad requestResourceManagerAdministrationProtocol.removeFromClusterNodeLabels(org.apache.hadoop.yarn.server.api.protocolrecords.RemoveFromClusterNodeLabelsRequest)public NodeLabelsInfo getLabelsOnNode(@Context javax.servlet.http.HttpServletRequest hsr, String nodeId) throws IOException
RMWebServiceProtocolRMWSConsts.NODES_NODEID_GETLABELS.getLabelsOnNode in interface RMWebServiceProtocolhsr - the servlet requestnodeId - the node we want to get all the node labels. It is a
          PathParam.IOException - if an IOException happenedprotected javax.ws.rs.core.Response killApp(RMApp app, org.apache.hadoop.security.UserGroupInformation callerUGI, javax.servlet.http.HttpServletRequest hsr, String diagnostic) throws IOException, InterruptedException
IOExceptionInterruptedExceptionpublic AppPriority getAppPriority(@Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocolRMWSConsts.APPS_APPID_PRIORITY.getAppPriority in interface RMWebServiceProtocolhsr - the servlet requestappId - the app we want to get the priority. It is a PathParam.org.apache.hadoop.security.authorize.AuthorizationException - in case of the user is not authorizedpublic javax.ws.rs.core.Response updateApplicationPriority(AppPriority targetPriority, @Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException, org.apache.hadoop.yarn.exceptions.YarnException, InterruptedException, IOException
RMWebServiceProtocolRMWSConsts.APPS_APPID_PRIORITY.updateApplicationPriority in interface RMWebServiceProtocoltargetPriority - the priority we want to set for the app. It is a
          content param.hsr - the servlet requestappId - the application we want to update its priority. It is a
          PathParam.org.apache.hadoop.security.authorize.AuthorizationException - if the user is not authenticatedorg.apache.hadoop.yarn.exceptions.YarnException - if the target is nullInterruptedException - if interrupted.IOException - if the update fails.public AppQueue getAppQueue(@Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocolRMWSConsts.APPS_APPID_QUEUE.getAppQueue in interface RMWebServiceProtocolhsr - the servlet requestappId - the application we want to retrieve its queue. It is a
          PathParam.org.apache.hadoop.security.authorize.AuthorizationException - if the user is not authenticatedpublic javax.ws.rs.core.Response updateAppQueue(AppQueue targetQueue, @Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException, org.apache.hadoop.yarn.exceptions.YarnException, InterruptedException, IOException
RMWebServiceProtocolRMWSConsts.APPS_APPID_QUEUE.updateAppQueue in interface RMWebServiceProtocoltargetQueue - the queue we want to set. It is a content param.hsr - the servlet requestappId - the application we want to change its queue. It is a
          PathParam.org.apache.hadoop.security.authorize.AuthorizationException - if the user is not authenticatedorg.apache.hadoop.yarn.exceptions.YarnException - if the app is not foundInterruptedException - if interrupted.IOException - if the update fails.protected javax.ws.rs.core.Response moveApp(RMApp app, org.apache.hadoop.security.UserGroupInformation callerUGI, String targetQueue) throws IOException, InterruptedException
IOExceptionInterruptedExceptionpublic javax.ws.rs.core.Response createNewApplication(@Context
                                                      javax.servlet.http.HttpServletRequest hsr)
                                               throws org.apache.hadoop.security.authorize.AuthorizationException,
                                                      IOException,
                                                      InterruptedException
RMWebServiceProtocolRMWSConsts.APPS_NEW_APPLICATION.createNewApplication in interface RMWebServiceProtocolhsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
           methodIOException - if the creation failsInterruptedException - if interruptedApplicationClientProtocol.getNewApplication(org.apache.hadoop.yarn.api.protocolrecords.GetNewApplicationRequest)public javax.ws.rs.core.Response submitApplication(ApplicationSubmissionContextInfo newApp, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocolRMWSConsts.APPS.submitApplication in interface RMWebServiceProtocolnewApp - structure containing information to construct the
          ApplicationSubmissionContext. It is a content param.hsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
           methodIOException - if the submission failedInterruptedException - if interruptedApplicationClientProtocol.submitApplication(org.apache.hadoop.yarn.api.protocolrecords.SubmitApplicationRequest)public javax.ws.rs.core.Response postDelegationToken(DelegationToken tokenData, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException, Exception
RMWebServiceProtocolRMWSConsts.DELEGATION_TOKEN.postDelegationToken in interface RMWebServiceProtocoltokenData - the token to delegate. It is a content param.hsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - if Kerberos auth failedIOException - if the delegation failedInterruptedException - if interruptedException - in case of bad requestApplicationBaseProtocol.getDelegationToken(org.apache.hadoop.yarn.api.protocolrecords.GetDelegationTokenRequest)public javax.ws.rs.core.Response postDelegationTokenExpiration(@Context
                                                               javax.servlet.http.HttpServletRequest hsr)
                                                        throws org.apache.hadoop.security.authorize.AuthorizationException,
                                                               IOException,
                                                               InterruptedException,
                                                               Exception
RMWebServiceProtocolRMWSConsts.DELEGATION_TOKEN_EXPIRATION.postDelegationTokenExpiration in interface RMWebServiceProtocolhsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - if Kerberos auth failedIOException - if the delegation failedException - in case of bad requestInterruptedExceptionApplicationBaseProtocol.renewDelegationToken(org.apache.hadoop.yarn.api.protocolrecords.RenewDelegationTokenRequest)public javax.ws.rs.core.Response cancelDelegationToken(@Context
                                                       javax.servlet.http.HttpServletRequest hsr)
                                                throws org.apache.hadoop.security.authorize.AuthorizationException,
                                                       IOException,
                                                       InterruptedException,
                                                       Exception
RMWebServiceProtocolRMWSConsts.DELEGATION_TOKEN.cancelDelegationToken in interface RMWebServiceProtocolhsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - if Kerberos auth failedIOException - if the delegation failedInterruptedException - if interruptedException - in case of bad requestApplicationBaseProtocol.cancelDelegationToken(org.apache.hadoop.yarn.api.protocolrecords.CancelDelegationTokenRequest)public javax.ws.rs.core.Response createNewReservation(@Context
                                                      javax.servlet.http.HttpServletRequest hsr)
                                               throws org.apache.hadoop.security.authorize.AuthorizationException,
                                                      IOException,
                                                      InterruptedException
RMWebServiceProtocolRMWSConsts.RESERVATION_NEW.createNewReservation in interface RMWebServiceProtocolhsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
           method.IOException - if creation failedInterruptedException - if interruptedApplicationClientProtocol.getNewReservation(org.apache.hadoop.yarn.api.protocolrecords.GetNewReservationRequest)public javax.ws.rs.core.Response submitReservation(ReservationSubmissionRequestInfo resContext, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocolRMWSConsts.RESERVATION_SUBMIT.submitReservation in interface RMWebServiceProtocolresContext - provides information to construct the
          ReservationSubmissionRequest. It is a content param.hsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
           methodIOException - if creation failedInterruptedException - if interruptedApplicationClientProtocol.submitReservation(org.apache.hadoop.yarn.api.protocolrecords.ReservationSubmissionRequest)public javax.ws.rs.core.Response updateReservation(ReservationUpdateRequestInfo resContext, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocolRMWSConsts.RESERVATION_UPDATE.updateReservation in interface RMWebServiceProtocolresContext - provides information to construct the
          ReservationUpdateRequest. It is a content param.hsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
           methodIOException - if the operation failedInterruptedException - if interruptedApplicationClientProtocol.updateReservation(org.apache.hadoop.yarn.api.protocolrecords.ReservationUpdateRequest)public javax.ws.rs.core.Response deleteReservation(ReservationDeleteRequestInfo resContext, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocolRMWSConsts.RESERVATION_DELETE.deleteReservation in interface RMWebServiceProtocolresContext - provides information to construct the
          ReservationDeleteRequest. It is a content param.hsr - the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException - when the user group information cannot be
           retrieved.IOException - when a ReservationDeleteRequest cannot be
           created from the ReservationDeleteRequestInfo. This
           exception is also thrown on
           ClientRMService.deleteReservation invokation failure.InterruptedException - if doAs action throws an InterruptedException.ApplicationClientProtocol.deleteReservation(org.apache.hadoop.yarn.api.protocolrecords.ReservationDeleteRequest)public javax.ws.rs.core.Response listReservation(String queue, String reservationId, long startTime, long endTime, boolean includeResourceAllocations, @Context javax.servlet.http.HttpServletRequest hsr) throws Exception
RMWebServiceProtocolRMWSConsts.RESERVATION_LIST.listReservation in interface RMWebServiceProtocolqueue - filter the result by queue. It is a QueryParam.reservationId - filter the result by reservationId. It is a
          QueryParam.startTime - filter the result by start time. It is a QueryParam.endTime - filter the result by end time. It is a QueryParam.includeResourceAllocations - true if the resource allocation should be
          in the result, false otherwise. It is a QueryParam.hsr - the servlet requestException - in case of bad requestApplicationClientProtocol.listReservations(org.apache.hadoop.yarn.api.protocolrecords.ReservationListRequest)public AppTimeoutInfo getAppTimeout(@Context javax.servlet.http.HttpServletRequest hsr, String appId, String type) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocolRMWSConsts.APPS_TIMEOUTS_TYPE.getAppTimeout in interface RMWebServiceProtocolhsr - the servlet requestappId - the application we want to get the timeout. It is a PathParam.type - the type of the timeouts. It is a PathParam.org.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorizedpublic AppTimeoutsInfo getAppTimeouts(@Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocolRMWSConsts.APPS_TIMEOUTS.getAppTimeouts in interface RMWebServiceProtocolhsr - the servlet requestappId - the application we want to get the timeouts. It is a
          PathParam.org.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorizedpublic javax.ws.rs.core.Response updateApplicationTimeout(AppTimeoutInfo appTimeout, @Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException, org.apache.hadoop.yarn.exceptions.YarnException, InterruptedException, IOException
RMWebServiceProtocolRMWSConsts.APPS_TIMEOUT.updateApplicationTimeout in interface RMWebServiceProtocolappTimeout - the appTimeoutInfo. It is a content param.hsr - the servlet requestappId - the application we want to update. It is a PathParam.org.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
           methodorg.apache.hadoop.yarn.exceptions.YarnException - in case of bad requestInterruptedException - if interruptedIOException - if the operation failedApplicationClientProtocol.updateApplicationTimeouts(org.apache.hadoop.yarn.api.protocolrecords.UpdateApplicationTimeoutsRequest)protected org.apache.hadoop.yarn.api.records.ApplicationReport getApplicationReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationReportRequest request)
                                                                             throws org.apache.hadoop.yarn.exceptions.YarnException,
                                                                                    IOException
getApplicationReport in class org.apache.hadoop.yarn.server.webapp.WebServicesorg.apache.hadoop.yarn.exceptions.YarnExceptionIOExceptionprotected List<org.apache.hadoop.yarn.api.records.ApplicationReport> getApplicationsReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getApplicationsReport in class org.apache.hadoop.yarn.server.webapp.WebServicesorg.apache.hadoop.yarn.exceptions.YarnExceptionIOExceptionprotected org.apache.hadoop.yarn.api.records.ApplicationAttemptReport getApplicationAttemptReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptReportRequest request)
                                                                                           throws org.apache.hadoop.yarn.exceptions.YarnException,
                                                                                                  IOException
getApplicationAttemptReport in class org.apache.hadoop.yarn.server.webapp.WebServicesorg.apache.hadoop.yarn.exceptions.YarnExceptionIOExceptionprotected List<org.apache.hadoop.yarn.api.records.ApplicationAttemptReport> getApplicationAttemptsReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptsRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getApplicationAttemptsReport in class org.apache.hadoop.yarn.server.webapp.WebServicesorg.apache.hadoop.yarn.exceptions.YarnExceptionIOExceptionprotected org.apache.hadoop.yarn.api.records.ContainerReport getContainerReport(org.apache.hadoop.yarn.api.protocolrecords.GetContainerReportRequest request)
                                                                         throws org.apache.hadoop.yarn.exceptions.YarnException,
                                                                                IOException
getContainerReport in class org.apache.hadoop.yarn.server.webapp.WebServicesorg.apache.hadoop.yarn.exceptions.YarnExceptionIOExceptionprotected List<org.apache.hadoop.yarn.api.records.ContainerReport> getContainersReport(org.apache.hadoop.yarn.api.protocolrecords.GetContainersRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getContainersReport in class org.apache.hadoop.yarn.server.webapp.WebServicesorg.apache.hadoop.yarn.exceptions.YarnExceptionIOExceptionpublic javax.ws.rs.core.Response formatSchedulerConfiguration(@Context
                                                              javax.servlet.http.HttpServletRequest hsr)
                                                       throws org.apache.hadoop.security.authorize.AuthorizationException
org.apache.hadoop.security.authorize.AuthorizationExceptionpublic javax.ws.rs.core.Response validateAndGetSchedulerConfiguration(org.apache.hadoop.yarn.webapp.dao.SchedConfUpdateInfo mutationInfo,
                                                                      @Context
                                                                      javax.servlet.http.HttpServletRequest hsr)
                                                               throws org.apache.hadoop.security.authorize.AuthorizationException
org.apache.hadoop.security.authorize.AuthorizationExceptionpublic javax.ws.rs.core.Response updateSchedulerConfiguration(org.apache.hadoop.yarn.webapp.dao.SchedConfUpdateInfo mutationInfo,
                                                              @Context
                                                              javax.servlet.http.HttpServletRequest hsr)
                                                       throws org.apache.hadoop.security.authorize.AuthorizationException,
                                                              InterruptedException
org.apache.hadoop.security.authorize.AuthorizationExceptionInterruptedExceptionpublic javax.ws.rs.core.Response getSchedulerConfiguration(@Context
                                                           javax.servlet.http.HttpServletRequest hsr)
                                                    throws org.apache.hadoop.security.authorize.AuthorizationException
org.apache.hadoop.security.authorize.AuthorizationExceptionpublic javax.ws.rs.core.Response getSchedulerConfigurationVersion(@Context
                                                                  javax.servlet.http.HttpServletRequest hsr)
                                                           throws org.apache.hadoop.security.authorize.AuthorizationException
org.apache.hadoop.security.authorize.AuthorizationExceptionpublic RMQueueAclInfo checkUserAccessToQueue(String queue, String username, String queueAclType, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocolcheckUserAccessToQueue in interface RMWebServiceProtocolqueue - queueusername - userqueueAclType - acl type of queue, it could be
                     SUBMIT_APPLICATIONS/ADMINISTER_QUEUEhsr - requestorg.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
                                method.public javax.ws.rs.core.Response signalToContainer(String containerId, String command, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocolsignalToContainer in interface RMWebServiceProtocolcontainerId - containerIdcommand - signal command, it could be OUTPUT_THREAD_DUMP/
                GRACEFUL_SHUTDOWN/FORCEFUL_SHUTDOWNhsr - requestorg.apache.hadoop.security.authorize.AuthorizationException - if the user is not authorized to invoke this
                                method.Copyright © 2008–2023 Apache Software Foundation. All rights reserved.