<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<HTML>
<HEAD>
<meta name="generator" content="JDiff v1.0.9">
<!-- Generated by the JDiff Javadoc doclet -->
<!-- (http://www.jdiff.org) -->
<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
<TITLE>
org.apache.hadoop.yarn.api.ApplicationClientProtocol
</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../stylesheet-jdiff.css" TITLE="Style">
</HEAD>
<BODY>
<!-- Start of nav bar -->
<TABLE summary="Navigation bar" BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
  <TR>
    <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
    <TABLE summary="Navigation bar" BORDER="0" CELLPADDING="0" CELLSPACING="3">
    <TR ALIGN="center" VALIGN="top">
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html" target="_top"><FONT CLASS="NavBarFont1"><B><tt>Apache Hadoop YARN API 3.3.1</tt></B></FONT></A>&nbsp;</TD>
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="changes-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="pkg_org.apache.hadoop.yarn.api.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
      <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="jdiff_statistics.html"><FONT CLASS="NavBarFont1"><B>Statistics</B></FONT></A>&nbsp;</TD>
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="jdiff_help.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
    </TR>
    </TABLE>
  </TD>
  <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM><b>Generated by<br><a href="http://www.jdiff.org" class="staysblack" target="_top">JDiff</a></b></EM></TD>
</TR>
<TR>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<B>PREV CLASS</B>&nbsp;
&nbsp;<A HREF="org.apache.hadoop.yarn.api.ApplicationConstants.html"><B>NEXT CLASS</B></A>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  <A HREF="../changes.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
  &nbsp;<A HREF="org.apache.hadoop.yarn.api.ApplicationClientProtocol.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: &nbsp;
CONSTRUCTORS&nbsp;|&nbsp;
<a href="#methods">METHODS</a>&nbsp;|&nbsp;
FIELDS
  </FONT></TD>
</TR>
</TABLE>
<HR>
<!-- End of nav bar -->
<H2>
Interface org.apache.hadoop.yarn.api.<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html" target="_top"><tt>ApplicationClientProtocol</tt></A>
</H2>
<a NAME="constructors"></a>
<a NAME="methods"></a>
<p>
<a NAME="Added"></a>
<TABLE summary="Added Methods" BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
  <TD VALIGN="TOP" COLSPAN=2><FONT SIZE="+1"><B>Added Methods</B></FONT></TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.failApplicationAttempt_added(org.apache.hadoop.yarn.api.protocolrecords.FailApplicationAttemptRequest)"></A>
  <nobr><code>FailApplicationAttemptResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#failApplicationAttempt(org.apache.hadoop.yarn.api.protocolrecords.FailApplicationAttemptRequest)" target="_top"><tt>failApplicationAttempt</tt></A>(<code>FailApplicationAttemptRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p>The interface used by clients to request the <code>ResourceManager</code> to fail an application attempt.</p> </TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.getAttributesToNodes_added(org.apache.hadoop.yarn.api.protocolrecords.GetAttributesToNodesRequest)"></A>
  <nobr><code>GetAttributesToNodesResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#getAttributesToNodes(org.apache.hadoop.yarn.api.protocolrecords.GetAttributesToNodesRequest)" target="_top"><tt>getAttributesToNodes</tt></A>(<code>GetAttributesToNodesRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface used by client to get attributes to nodes mappings available in ResourceManager.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.getClusterNodeAttributes_added(org.apache.hadoop.yarn.api.protocolrecords.GetClusterNodeAttributesRequest)"></A>
  <nobr><code>GetClusterNodeAttributesResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#getClusterNodeAttributes(org.apache.hadoop.yarn.api.protocolrecords.GetClusterNodeAttributesRequest)" target="_top"><tt>getClusterNodeAttributes</tt></A>(<code>GetClusterNodeAttributesRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface used by client to get node attributes available in ResourceManager.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.getNewReservation_added(org.apache.hadoop.yarn.api.protocolrecords.GetNewReservationRequest)"></A>
  <nobr><code>GetNewReservationResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#getNewReservation(org.apache.hadoop.yarn.api.protocolrecords.GetNewReservationRequest)" target="_top"><tt>getNewReservation</tt></A>(<code>GetNewReservationRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p>The interface used by clients to obtain a new <A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/ReservationId.html" target="_top">ReservationId</A> for submitting new reservations.</p> </TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.getNodesToAttributes_added(org.apache.hadoop.yarn.api.protocolrecords.GetNodesToAttributesRequest)"></A>
  <nobr><code>GetNodesToAttributesResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#getNodesToAttributes(org.apache.hadoop.yarn.api.protocolrecords.GetNodesToAttributesRequest)" target="_top"><tt>getNodesToAttributes</tt></A>(<code>GetNodesToAttributesRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface used by client to get node to attributes mappings.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.getResourceProfile_added(org.apache.hadoop.yarn.api.protocolrecords.GetResourceProfileRequest)"></A>
  <nobr><code>GetResourceProfileResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#getResourceProfile(org.apache.hadoop.yarn.api.protocolrecords.GetResourceProfileRequest)" target="_top"><tt>getResourceProfile</tt></A>(<code>GetResourceProfileRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface to get the details for a specific resource profile.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.getResourceProfiles_added(org.apache.hadoop.yarn.api.protocolrecords.GetAllResourceProfilesRequest)"></A>
  <nobr><code>GetAllResourceProfilesResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#getResourceProfiles(org.apache.hadoop.yarn.api.protocolrecords.GetAllResourceProfilesRequest)" target="_top"><tt>getResourceProfiles</tt></A>(<code>GetAllResourceProfilesRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface used by clients to get all the resource profiles that are available on the ResourceManager.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.getResourceTypeInfo_added(org.apache.hadoop.yarn.api.protocolrecords.GetAllResourceTypeInfoRequest)"></A>
  <nobr><code>GetAllResourceTypeInfoResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#getResourceTypeInfo(org.apache.hadoop.yarn.api.protocolrecords.GetAllResourceTypeInfoRequest)" target="_top"><tt>getResourceTypeInfo</tt></A>(<code>GetAllResourceTypeInfoRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface to get the details for a specific resource profile.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.listReservations_added(org.apache.hadoop.yarn.api.protocolrecords.ReservationListRequest)"></A>
  <nobr><code>ReservationListResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#listReservations(org.apache.hadoop.yarn.api.protocolrecords.ReservationListRequest)" target="_top"><tt>listReservations</tt></A>(<code>ReservationListRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface used by clients to get the list of reservations in a plan.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.signalToContainer_added(org.apache.hadoop.yarn.api.protocolrecords.SignalContainerRequest)"></A>
  <nobr><code>SignalContainerResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#signalToContainer(org.apache.hadoop.yarn.api.protocolrecords.SignalContainerRequest)" target="_top"><tt>signalToContainer</tt></A>(<code>SignalContainerRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p>The interface used by clients to request the <code>ResourceManager</code> to signal a container.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.updateApplicationPriority_added(org.apache.hadoop.yarn.api.protocolrecords.UpdateApplicationPriorityRequest)"></A>
  <nobr><code>UpdateApplicationPriorityResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#updateApplicationPriority(org.apache.hadoop.yarn.api.protocolrecords.UpdateApplicationPriorityRequest)" target="_top"><tt>updateApplicationPriority</tt></A>(<code>UpdateApplicationPriorityRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface used by client to set priority of an application.</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="org.apache.hadoop.yarn.api.ApplicationClientProtocol.updateApplicationTimeouts_added(org.apache.hadoop.yarn.api.protocolrecords.UpdateApplicationTimeoutsRequest)"></A>
  <nobr><code>UpdateApplicationTimeoutsResponse</code>&nbsp;<A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html#updateApplicationTimeouts(org.apache.hadoop.yarn.api.protocolrecords.UpdateApplicationTimeoutsRequest)" target="_top"><tt>updateApplicationTimeouts</tt></A>(<code>UpdateApplicationTimeoutsRequest</code>)</nobr>
  </TD>
  <TD VALIGN="TOP"><p> The interface used by client to set ApplicationTimeouts of an application.</TD>
</TR>
</TABLE>
&nbsp;
<a NAME="fields"></a>
<HR>
<!-- Start of nav bar -->
<TABLE summary="Navigation bar" BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
  <TR>
    <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
    <TABLE summary="Navigation bar" BORDER="0" CELLPADDING="0" CELLSPACING="3">
    <TR ALIGN="center" VALIGN="top">
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="/build/source/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/site/apidocs/org/apache/hadoop/yarn/api/ApplicationClientProtocol.html" target="_top"><FONT CLASS="NavBarFont1"><B><tt>Apache Hadoop YARN API 3.3.1</tt></B></FONT></A>&nbsp;</TD>
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="changes-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="pkg_org.apache.hadoop.yarn.api.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
      <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="jdiff_statistics.html"><FONT CLASS="NavBarFont1"><B>Statistics</B></FONT></A>&nbsp;</TD>
      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="jdiff_help.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
    </TR>
    </TABLE>
  </TD>
  <TD ALIGN="right" VALIGN="top" ROWSPAN=3></TD>
</TR>
<TR>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<B>PREV CLASS</B>&nbsp;
&nbsp;<A HREF="org.apache.hadoop.yarn.api.ApplicationConstants.html"><B>NEXT CLASS</B></A>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  <A HREF="../changes.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
  &nbsp;<A HREF="org.apache.hadoop.yarn.api.ApplicationClientProtocol.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
<TD BGCOLOR="0xFFFFFF" CLASS="NavBarCell3"></TD>
</TR>
</TABLE>
<HR>
<!-- End of nav bar -->
</BODY>
</HTML>
