<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!-- Generated by the JDiff Javadoc doclet -->
<!-- (http://www.jdiff.org) -->
<!-- on Tue Oct 29 19:55:13 PDT 2019 -->

<api
  xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
  xsi:noNamespaceSchemaLocation='api.xsd'
  name="Apache Hadoop MapReduce Common 2.10.0"
  jdversion="1.0.9">

<!--  Command line arguments =  -doclet org.apache.hadoop.classification.tools.IncludePublicAnnotationsJDiffDoclet -docletpath /home/jhung/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/target/hadoop-annotations.jar:/home/jhung/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/target/jdiff.jar -verbose -classpath /home/jhung/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/target/classes:/home/jhung/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/target/hadoop-yarn-common-2.10.0.jar:/home/jhung/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/target/hadoop-yarn-api-2.10.0.jar:/home/jhung/.m2/repository/javax/xml/bind/jaxb-api/2.2.2/jaxb-api-2.2.2.jar:/home/jhung/.m2/repository/javax/xml/stream/stax-api/1.0-2/stax-api-1.0-2.jar:/home/jhung/.m2/repository/javax/activation/activation/1.1/activation-1.1.jar:/home/jhung/.m2/repository/org/apache/commons/commons-compress/1.19/commons-compress-1.19.jar:/home/jhung/.m2/repository/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar:/home/jhung/.m2/repository/org/mortbay/jetty/jetty-util/6.1.26/jetty-util-6.1.26.jar:/home/jhung/.m2/repository/com/sun/jersey/jersey-core/1.9/jersey-core-1.9.jar:/home/jhung/.m2/repository/com/sun/jersey/jersey-client/1.9/jersey-client-1.9.jar:/home/jhung/.m2/repository/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13.jar:/home/jhung/.m2/repository/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13.jar:/home/jhung/.m2/repository/org/codehaus/jackson/jackson-jaxrs/1.9.13/jackson-jaxrs-1.9.13.jar:/home/jhung/.m2/repository/org/codehaus/jackson/jackson-xc/1.9.13/jackson-xc-1.9.13.jar:/home/jhung/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar:/home/jhung/.m2/repository/com/google/inject/guice/3.0/guice-3.0.jar:/home/jhung/.m2/repository/javax/inject/javax.inject/1/javax.inject-1.jar:/home/jhung/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar:/home/jhung/.m2/repository/com/sun/jersey/jersey-server/1.9/jersey-server-1.9.jar:/home/jhung/.m2/repository/asm/asm/3.2/asm-3.2.jar:/home/jhung/.m2/repository/com/sun/jersey/jersey-json/1.9/jersey-json-1.9.jar:/home/jhung/.m2/repository/org/codehaus/jettison/jettison/1.1/jettison-1.1.jar:/home/jhung/.m2/repository/com/sun/xml/bind/jaxb-impl/2.2.3-1/jaxb-impl-2.2.3-1.jar:/home/jhung/.m2/repository/com/sun/jersey/contribs/jersey-guice/1.9/jersey-guice-1.9.jar:/home/jhung/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar:/home/jhung/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/target/hadoop-yarn-client-2.10.0.jar:/home/jhung/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/target/hadoop-mapreduce-client-core-2.10.0.jar:/home/jhung/.m2/repository/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar:/home/jhung/.m2/repository/org/apache/avro/avro/1.7.7/avro-1.7.7.jar:/home/jhung/.m2/repository/com/thoughtworks/paranamer/paranamer/2.3/paranamer-2.3.jar:/home/jhung/.m2/repository/org/xerial/snappy/snappy-java/1.0.5/snappy-java-1.0.5.jar:/home/jhung/hadoop/hadoop-common-project/hadoop-common/target/hadoop-common-2.10.0.jar:/home/jhung/.m2/repository/org/apache/commons/commons-math3/3.1.1/commons-math3-3.1.1.jar:/home/jhung/.m2/repository/xmlenc/xmlenc/0.52/xmlenc-0.52.jar:/home/jhung/.m2/repository/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2.jar:/home/jhung/.m2/repository/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4.jar:/home/jhung/.m2/repository/commons-net/commons-net/3.1/commons-net-3.1.jar:/home/jhung/.m2/repository/org/mortbay/jetty/jetty/6.1.26/jetty-6.1.26.jar:/home/jhung/.m2/repository/org/mortbay/jetty/jetty-sslengine/6.1.26/jetty-sslengine-6.1.26.jar:/home/jhung/.m2/repository/javax/servlet/jsp/jsp-api/2.1/jsp-api-2.1.jar:/home/jhung/.m2/repository/net/java/dev/jets3t/jets3t/0.9.0/jets3t-0.9.0.jar:/home/jhung/.m2/repository/com/jamesmurty/utils/java-xmlbuilder/0.4/java-xmlbuilder-0.4.jar:/home/jhung/.m2/repository/commons-configuration/commons-configuration/1.6/commons-configuration-1.6.jar:/home/jhung/.m2/repository/commons-digester/commons-digester/1.8/commons-digester-1.8.jar:/home/jhung/.m2/repository/commons-beanutils/commons-beanutils/1.9.4/commons-beanutils-1.9.4.jar:/home/jhung/.m2/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar:/home/jhung/.m2/repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar:/home/jhung/hadoop/hadoop-common-project/hadoop-auth/target/hadoop-auth-2.10.0.jar:/home/jhung/.m2/repository/com/nimbusds/nimbus-jose-jwt/4.41.1/nimbus-jose-jwt-4.41.1.jar:/home/jhung/.m2/repository/com/github/stephenc/jcip/jcip-annotations/1.0-1/jcip-annotations-1.0-1.jar:/home/jhung/.m2/repository/net/minidev/json-smart/1.3.1/json-smart-1.3.1.jar:/home/jhung/.m2/repository/org/apache/directory/server/apacheds-kerberos-codec/2.0.0-M15/apacheds-kerberos-codec-2.0.0-M15.jar:/home/jhung/.m2/repository/org/apache/directory/server/apacheds-i18n/2.0.0-M15/apacheds-i18n-2.0.0-M15.jar:/home/jhung/.m2/repository/org/apache/directory/api/api-asn1-api/1.0.0-M20/api-asn1-api-1.0.0-M20.jar:/home/jhung/.m2/repository/org/apache/directory/api/api-util/1.0.0-M20/api-util-1.0.0-M20.jar:/home/jhung/.m2/repository/org/apache/curator/curator-framework/2.7.1/curator-framework-2.7.1.jar:/home/jhung/.m2/repository/com/jcraft/jsch/0.1.54/jsch-0.1.54.jar:/home/jhung/.m2/repository/org/apache/curator/curator-client/2.7.1/curator-client-2.7.1.jar:/home/jhung/.m2/repository/org/apache/curator/curator-recipes/2.7.1/curator-recipes-2.7.1.jar:/home/jhung/.m2/repository/com/google/code/findbugs/jsr305/3.0.0/jsr305-3.0.0.jar:/home/jhung/.m2/repository/org/apache/htrace/htrace-core4/4.1.0-incubating/htrace-core4-4.1.0-incubating.jar:/home/jhung/.m2/repository/org/apache/zookeeper/zookeeper/3.4.9/zookeeper-3.4.9.jar:/home/jhung/.m2/repository/org/codehaus/woodstox/stax2-api/3.1.4/stax2-api-3.1.4.jar:/home/jhung/.m2/repository/com/fasterxml/woodstox/woodstox-core/5.0.3/woodstox-core-5.0.3.jar:/home/jhung/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/home/jhung/.m2/repository/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar:/home/jhung/hadoop/hadoop-common-project/hadoop-annotations/target/hadoop-annotations-2.10.0.jar:/export/apps/jdk/JDK-1_7_0_51/lib/tools.jar:/home/jhung/.m2/repository/com/google/inject/extensions/guice-servlet/3.0/guice-servlet-3.0.jar:/home/jhung/.m2/repository/io/netty/netty/3.10.6.Final/netty-3.10.6.Final.jar:/home/jhung/.m2/repository/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar:/home/jhung/.m2/repository/com/google/guava/guava/11.0.2/guava-11.0.2.jar:/home/jhung/.m2/repository/commons-codec/commons-codec/1.4/commons-codec-1.4.jar:/home/jhung/.m2/repository/commons-cli/commons-cli/1.2/commons-cli-1.2.jar:/home/jhung/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/home/jhung/.m2/repository/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar -sourcepath /home/jhung/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/src/main/java -apidir /home/jhung/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/target/site/jdiff/xml -apiname Apache Hadoop MapReduce Common 2.10.0 -->
<package name="org.apache.hadoop.mapred">
</package>
<package name="org.apache.hadoop.mapreduce">
</package>
<package name="org.apache.hadoop.mapreduce.v2.api.protocolrecords">
  <!-- start interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.CancelDelegationTokenRequest -->
  <interface name="CancelDelegationTokenRequest"    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <method name="getDelegationToken" return="org.apache.hadoop.yarn.api.records.Token"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="setDelegationToken"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="dToken" type="org.apache.hadoop.yarn.api.records.Token"/>
    </method>
    <doc>
    <![CDATA[The request issued by the client to the {@code ResourceManager} to cancel a
 delegation token.]]>
    </doc>
  </interface>
  <!-- end interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.CancelDelegationTokenRequest -->
  <!-- start interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.CancelDelegationTokenResponse -->
  <interface name="CancelDelegationTokenResponse"    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <doc>
    <![CDATA[The response from the {@code ResourceManager} to a cancelDelegationToken
 request.]]>
    </doc>
  </interface>
  <!-- end interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.CancelDelegationTokenResponse -->
  <!-- start interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.GetDelegationTokenRequest -->
  <interface name="GetDelegationTokenRequest"    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <method name="getRenewer" return="java.lang.String"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="setRenewer"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="renewer" type="java.lang.String"/>
    </method>
  </interface>
  <!-- end interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.GetDelegationTokenRequest -->
  <!-- start interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.RenewDelegationTokenRequest -->
  <interface name="RenewDelegationTokenRequest"    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <method name="getDelegationToken" return="org.apache.hadoop.yarn.api.records.Token"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="setDelegationToken"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="dToken" type="org.apache.hadoop.yarn.api.records.Token"/>
    </method>
    <doc>
    <![CDATA[The request issued by the client to renew a delegation token from
 the {@code ResourceManager}.]]>
    </doc>
  </interface>
  <!-- end interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.RenewDelegationTokenRequest -->
  <!-- start interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.RenewDelegationTokenResponse -->
  <interface name="RenewDelegationTokenResponse"    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <method name="getNextExpirationTime" return="long"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="setNextExpirationTime"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="expTime" type="long"/>
    </method>
    <doc>
    <![CDATA[The response to a renewDelegationToken call to the {@code ResourceManager}.]]>
    </doc>
  </interface>
  <!-- end interface org.apache.hadoop.mapreduce.v2.api.protocolrecords.RenewDelegationTokenResponse -->
</package>
<package name="org.apache.hadoop.mapreduce.v2.security">
</package>
<package name="org.apache.hadoop.yarn.proto">
</package>

</api>
