<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!-- Generated by the JDiff Javadoc doclet -->
<!-- (http://www.jdiff.org) -->
<!-- on Mon Jul 06 20:13:55 UTC 2020 -->

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

<!--  Command line arguments =  -doclet org.apache.hadoop.classification.tools.IncludePublicAnnotationsJDiffDoclet -docletpath /build/source/hadoop-hdfs-project/hadoop-hdfs/target/hadoop-annotations.jar:/build/source/hadoop-hdfs-project/hadoop-hdfs/target/jdiff.jar -verbose -classpath /build/source/hadoop-hdfs-project/hadoop-hdfs/target/classes:/build/source/hadoop-common-project/hadoop-annotations/target/hadoop-annotations-3.3.0.jar:/usr/lib/jvm/java-8-openjdk-amd64/lib/tools.jar:/build/source/hadoop-common-project/hadoop-auth/target/hadoop-auth-3.3.0.jar:/maven/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/maven/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6.jar:/maven/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10.jar:/maven/com/nimbusds/nimbus-jose-jwt/7.9/nimbus-jose-jwt-7.9.jar:/maven/com/github/stephenc/jcip/jcip-annotations/1.0-1/jcip-annotations-1.0-1.jar:/maven/net/minidev/json-smart/2.3/json-smart-2.3.jar:/maven/net/minidev/accessors-smart/1.2/accessors-smart-1.2.jar:/maven/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar:/maven/org/apache/zookeeper/zookeeper/3.5.6/zookeeper-3.5.6.jar:/maven/org/apache/curator/curator-framework/4.2.0/curator-framework-4.2.0.jar:/maven/org/apache/kerby/kerb-simplekdc/1.0.1/kerb-simplekdc-1.0.1.jar:/maven/org/apache/kerby/kerb-client/1.0.1/kerb-client-1.0.1.jar:/maven/org/apache/kerby/kerby-config/1.0.1/kerby-config-1.0.1.jar:/maven/org/apache/kerby/kerb-common/1.0.1/kerb-common-1.0.1.jar:/maven/org/apache/kerby/kerb-crypto/1.0.1/kerb-crypto-1.0.1.jar:/maven/org/apache/kerby/kerb-util/1.0.1/kerb-util-1.0.1.jar:/maven/org/apache/kerby/token-provider/1.0.1/token-provider-1.0.1.jar:/maven/org/apache/kerby/kerb-admin/1.0.1/kerb-admin-1.0.1.jar:/maven/org/apache/kerby/kerb-server/1.0.1/kerb-server-1.0.1.jar:/maven/org/apache/kerby/kerb-identity/1.0.1/kerb-identity-1.0.1.jar:/maven/org/apache/kerby/kerby-xdr/1.0.1/kerby-xdr-1.0.1.jar:/build/source/hadoop-common-project/hadoop-common/target/hadoop-common-3.3.0.jar:/maven/org/apache/hadoop/thirdparty/hadoop-shaded-protobuf_3_7/1.0.0/hadoop-shaded-protobuf_3_7-1.0.0.jar:/maven/org/apache/commons/commons-math3/3.1.1/commons-math3-3.1.1.jar:/maven/commons-net/commons-net/3.6/commons-net-3.6.jar:/maven/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar:/maven/javax/activation/javax.activation-api/1.2.0/javax.activation-api-1.2.0.jar:/maven/org/eclipse/jetty/jetty-servlet/9.4.20.v20190813/jetty-servlet-9.4.20.v20190813.jar:/maven/org/eclipse/jetty/jetty-security/9.4.20.v20190813/jetty-security-9.4.20.v20190813.jar:/maven/org/eclipse/jetty/jetty-webapp/9.4.20.v20190813/jetty-webapp-9.4.20.v20190813.jar:/maven/org/eclipse/jetty/jetty-xml/9.4.20.v20190813/jetty-xml-9.4.20.v20190813.jar:/maven/javax/servlet/jsp/jsp-api/2.1/jsp-api-2.1.jar:/maven/com/sun/jersey/jersey-servlet/1.19/jersey-servlet-1.19.jar:/maven/com/sun/jersey/jersey-json/1.19/jersey-json-1.19.jar:/maven/org/codehaus/jettison/jettison/1.1/jettison-1.1.jar:/maven/com/sun/xml/bind/jaxb-impl/2.2.3-1/jaxb-impl-2.2.3-1.jar:/maven/javax/xml/bind/jaxb-api/2.2.11/jaxb-api-2.2.11.jar:/maven/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13.jar:/maven/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13.jar:/maven/org/codehaus/jackson/jackson-jaxrs/1.9.13/jackson-jaxrs-1.9.13.jar:/maven/org/codehaus/jackson/jackson-xc/1.9.13/jackson-xc-1.9.13.jar:/maven/commons-beanutils/commons-beanutils/1.9.4/commons-beanutils-1.9.4.jar:/maven/org/apache/commons/commons-configuration2/2.1.1/commons-configuration2-2.1.1.jar:/maven/org/apache/commons/commons-lang3/3.7/commons-lang3-3.7.jar:/maven/org/apache/commons/commons-text/1.4/commons-text-1.4.jar:/maven/org/apache/avro/avro/1.7.7/avro-1.7.7.jar:/maven/com/thoughtworks/paranamer/paranamer/2.3/paranamer-2.3.jar:/maven/org/xerial/snappy/snappy-java/1.0.5/snappy-java-1.0.5.jar:/maven/com/google/re2j/re2j/1.1/re2j-1.1.jar:/maven/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar:/maven/com/jcraft/jsch/0.1.55/jsch-0.1.55.jar:/maven/org/apache/curator/curator-client/4.2.0/curator-client-4.2.0.jar:/maven/org/apache/curator/curator-recipes/4.2.0/curator-recipes-4.2.0.jar:/maven/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar:/maven/org/apache/commons/commons-compress/1.19/commons-compress-1.19.jar:/maven/org/apache/kerby/kerb-core/1.0.1/kerb-core-1.0.1.jar:/maven/org/apache/kerby/kerby-pkix/1.0.1/kerby-pkix-1.0.1.jar:/maven/org/apache/kerby/kerby-asn1/1.0.1/kerby-asn1-1.0.1.jar:/maven/org/apache/kerby/kerby-util/1.0.1/kerby-util-1.0.1.jar:/maven/org/codehaus/woodstox/stax2-api/3.1.4/stax2-api-3.1.4.jar:/maven/com/fasterxml/woodstox/woodstox-core/5.0.3/woodstox-core-5.0.3.jar:/maven/dnsjava/dnsjava/2.1.7/dnsjava-2.1.7.jar:/build/source/hadoop-hdfs-project/hadoop-hdfs-client/target/hadoop-hdfs-client-3.3.0.jar:/maven/com/squareup/okhttp/okhttp/2.7.5/okhttp-2.7.5.jar:/maven/com/squareup/okio/okio/1.6.0/okio-1.6.0.jar:/maven/com/fasterxml/jackson/core/jackson-annotations/2.10.3/jackson-annotations-2.10.3.jar:/maven/org/apache/zookeeper/zookeeper-jute/3.5.6/zookeeper-jute-3.5.6.jar:/maven/org/apache/yetus/audience-annotations/0.5.0/audience-annotations-0.5.0.jar:/maven/com/google/guava/guava/27.0-jre/guava-27.0-jre.jar:/maven/com/google/guava/failureaccess/1.0/failureaccess-1.0.jar:/maven/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar:/maven/org/checkerframework/checker-qual/2.5.2/checker-qual-2.5.2.jar:/maven/com/google/j2objc/j2objc-annotations/1.1/j2objc-annotations-1.1.jar:/maven/org/codehaus/mojo/animal-sniffer-annotations/1.17/animal-sniffer-annotations-1.17.jar:/maven/org/eclipse/jetty/jetty-server/9.4.20.v20190813/jetty-server-9.4.20.v20190813.jar:/maven/org/eclipse/jetty/jetty-http/9.4.20.v20190813/jetty-http-9.4.20.v20190813.jar:/maven/org/eclipse/jetty/jetty-io/9.4.20.v20190813/jetty-io-9.4.20.v20190813.jar:/maven/org/eclipse/jetty/jetty-util/9.4.20.v20190813/jetty-util-9.4.20.v20190813.jar:/maven/org/eclipse/jetty/jetty-util-ajax/9.4.20.v20190813/jetty-util-ajax-9.4.20.v20190813.jar:/maven/com/sun/jersey/jersey-core/1.19/jersey-core-1.19.jar:/maven/javax/ws/rs/jsr311-api/1.1.1/jsr311-api-1.1.1.jar:/maven/com/sun/jersey/jersey-server/1.19/jersey-server-1.19.jar:/maven/commons-cli/commons-cli/1.2/commons-cli-1.2.jar:/maven/commons-codec/commons-codec/1.11/commons-codec-1.11.jar:/maven/commons-io/commons-io/2.5/commons-io-2.5.jar:/maven/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar:/maven/commons-daemon/commons-daemon/1.0.13/commons-daemon-1.0.13.jar:/maven/log4j/log4j/1.2.17/log4j-1.2.17.jar:/maven/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar:/maven/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0.jar:/maven/com/google/code/findbugs/findbugs/3.0.1/findbugs-3.0.1.jar:/maven/net/jcip/jcip-annotations/1.0/jcip-annotations-1.0.jar:/maven/com/google/code/findbugs/bcel-findbugs/6.0/bcel-findbugs-6.0.jar:/maven/com/google/code/findbugs/jFormatString/2.0.1/jFormatString-2.0.1.jar:/maven/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar:/maven/org/ow2/asm/asm-debug-all/5.0.2/asm-debug-all-5.0.2.jar:/maven/org/ow2/asm/asm-commons/5.0.2/asm-commons-5.0.2.jar:/maven/org/ow2/asm/asm-tree/5.0.2/asm-tree-5.0.2.jar:/maven/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/maven/com/apple/AppleJavaExtensions/1.4/AppleJavaExtensions-1.4.jar:/maven/jaxen/jaxen/1.1.6/jaxen-1.1.6.jar:/maven/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar:/maven/io/netty/netty/3.10.6.Final/netty-3.10.6.Final.jar:/maven/io/netty/netty-all/4.1.50.Final/netty-all-4.1.50.Final.jar:/maven/org/apache/htrace/htrace-core4/4.1.0-incubating/htrace-core4-4.1.0-incubating.jar:/maven/org/fusesource/leveldbjni/leveldbjni-all/1.8/leveldbjni-all-1.8.jar:/maven/com/fasterxml/jackson/core/jackson-databind/2.10.3/jackson-databind-2.10.3.jar:/maven/com/fasterxml/jackson/core/jackson-core/2.10.3/jackson-core-2.10.3.jar:/maven/xerces/xercesImpl/2.11.0/xercesImpl-2.11.0.jar:/maven/xml-apis/xml-apis/1.4.01/xml-apis-1.4.01.jar -sourcepath /build/source/hadoop-hdfs-project/hadoop-hdfs/src/main/java -doclet org.apache.hadoop.classification.tools.IncludePublicAnnotationsJDiffDoclet -docletpath /build/source/hadoop-hdfs-project/hadoop-hdfs/target/hadoop-annotations.jar:/build/source/hadoop-hdfs-project/hadoop-hdfs/target/jdiff.jar -apidir /build/source/hadoop-hdfs-project/hadoop-hdfs/target/site/jdiff/xml -apiname Apache Hadoop HDFS 3.3.0 -->
<package name="org.apache.hadoop.hdfs">
  <doc>
  <![CDATA[<p>A distributed implementation of {@link
org.apache.hadoop.fs.FileSystem}.  This is loosely modelled after
Google's <a href="http://research.google.com/archive/gfs.html">GFS</a>.</p>

<p>The most important difference is that unlike GFS, Hadoop DFS files 
have strictly one writer at any one time.  Bytes are always appended 
to the end of the writer's stream.  There is no notion of "record appends"
or "mutations" that are then checked or reordered.  Writers simply emit 
a byte stream.  That byte stream is guaranteed to be stored in the 
order written.</p>]]>
  </doc>
</package>
<package name="org.apache.hadoop.hdfs.net">
</package>
<package name="org.apache.hadoop.hdfs.protocol">
</package>
<package name="org.apache.hadoop.hdfs.protocol.datatransfer">
</package>
<package name="org.apache.hadoop.hdfs.protocol.datatransfer.sasl">
</package>
<package name="org.apache.hadoop.hdfs.protocolPB">
</package>
<package name="org.apache.hadoop.hdfs.qjournal.client">
</package>
<package name="org.apache.hadoop.hdfs.qjournal.protocol">
</package>
<package name="org.apache.hadoop.hdfs.qjournal.protocolPB">
</package>
<package name="org.apache.hadoop.hdfs.qjournal.server">
  <!-- start interface org.apache.hadoop.hdfs.qjournal.server.JournalNodeMXBean -->
  <interface name="JournalNodeMXBean"    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <method name="getJournalsStatus" return="java.lang.String"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <doc>
      <![CDATA[Get status information (e.g., whether formatted) of JournalNode's journals.
 
 @return A string presenting status for each journal]]>
      </doc>
    </method>
    <doc>
    <![CDATA[This is the JMX management interface for JournalNode information]]>
    </doc>
  </interface>
  <!-- end interface org.apache.hadoop.hdfs.qjournal.server.JournalNodeMXBean -->
</package>
<package name="org.apache.hadoop.hdfs.security.token.block">
</package>
<package name="org.apache.hadoop.hdfs.security.token.delegation">
</package>
<package name="org.apache.hadoop.hdfs.server.aliasmap">
  <!-- start class org.apache.hadoop.hdfs.server.aliasmap.InMemoryAliasMap -->
  <class name="InMemoryAliasMap" extends="java.lang.Object"
    abstract="false"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <implements name="org.apache.hadoop.hdfs.server.aliasmap.InMemoryAliasMapProtocol"/>
    <implements name="org.apache.hadoop.conf.Configurable"/>
    <method name="setConf"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="conf" type="org.apache.hadoop.conf.Configuration"/>
    </method>
    <method name="getConf" return="org.apache.hadoop.conf.Configuration"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="init" return="org.apache.hadoop.hdfs.server.aliasmap.InMemoryAliasMap"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="conf" type="org.apache.hadoop.conf.Configuration"/>
      <param name="blockPoolID" type="java.lang.String"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="list" return="org.apache.hadoop.hdfs.server.aliasmap.InMemoryAliasMapProtocol.IterationResult"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="marker" type="java.util.Optional"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="read" return="java.util.Optional"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="block" type="org.apache.hadoop.hdfs.protocol.Block"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="write"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="block" type="org.apache.hadoop.hdfs.protocol.Block"/>
      <param name="providedStorageLocation" type="org.apache.hadoop.hdfs.protocol.ProvidedStorageLocation"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="getBlockPoolId" return="java.lang.String"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="close"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="fromProvidedStorageLocationBytes" return="org.apache.hadoop.hdfs.protocol.ProvidedStorageLocation"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="providedStorageLocationDbFormat" type="byte[]"/>
      <exception name="InvalidProtocolBufferException" type="org.apache.hadoop.thirdparty.protobuf.InvalidProtocolBufferException"/>
    </method>
    <method name="fromBlockBytes" return="org.apache.hadoop.hdfs.protocol.Block"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="blockDbFormat" type="byte[]"/>
      <exception name="InvalidProtocolBufferException" type="org.apache.hadoop.thirdparty.protobuf.InvalidProtocolBufferException"/>
    </method>
    <method name="toProtoBufBytes" return="byte[]"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="providedStorageLocation" type="org.apache.hadoop.hdfs.protocol.ProvidedStorageLocation"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="toProtoBufBytes" return="byte[]"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="block" type="org.apache.hadoop.hdfs.protocol.Block"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="transferForBootstrap"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="response" type="javax.servlet.http.HttpServletResponse"/>
      <param name="conf" type="org.apache.hadoop.conf.Configuration"/>
      <param name="aliasMap" type="org.apache.hadoop.hdfs.server.aliasmap.InMemoryAliasMap"/>
      <exception name="IOException" type="java.io.IOException"/>
      <doc>
      <![CDATA[Transfer this aliasmap for bootstrapping standby Namenodes. The map is
 transferred as a tar.gz archive. This archive needs to be extracted on the
 standby Namenode.

 @param response http response.
 @param conf configuration to use.
 @param aliasMap aliasmap to transfer.
 @throws IOException]]>
      </doc>
    </method>
    <method name="completeBootstrapTransfer"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="aliasMap" type="java.io.File"/>
      <exception name="IOException" type="java.io.IOException"/>
      <doc>
      <![CDATA[Extract the aliasmap archive to complete the bootstrap process. This method
 has to be called after the aliasmap archive is transfered from the primary
 Namenode.

 @param aliasMap location of the aliasmap.
 @throws IOException]]>
      </doc>
    </method>
    <doc>
    <![CDATA[InMemoryAliasMap is an implementation of the InMemoryAliasMapProtocol for
 use with LevelDB.]]>
    </doc>
  </class>
  <!-- end class org.apache.hadoop.hdfs.server.aliasmap.InMemoryAliasMap -->
</package>
<package name="org.apache.hadoop.hdfs.server.balancer">
</package>
<package name="org.apache.hadoop.hdfs.server.blockmanagement">
</package>
<package name="org.apache.hadoop.hdfs.server.common">
  <!-- start interface org.apache.hadoop.hdfs.server.common.BlockAlias -->
  <interface name="BlockAlias"    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <method name="getBlock" return="org.apache.hadoop.hdfs.protocol.Block"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <doc>
    <![CDATA[Interface used to load provided blocks.]]>
    </doc>
  </interface>
  <!-- end interface org.apache.hadoop.hdfs.server.common.BlockAlias -->
  <!-- start class org.apache.hadoop.hdfs.server.common.FileRegion -->
  <class name="FileRegion" extends="java.lang.Object"
    abstract="false"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <implements name="org.apache.hadoop.hdfs.server.common.BlockAlias"/>
    <constructor name="FileRegion" type="long, org.apache.hadoop.fs.Path, long, long, long"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <constructor name="FileRegion" type="long, org.apache.hadoop.fs.Path, long, long, long, byte[]"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <constructor name="FileRegion" type="long, org.apache.hadoop.fs.Path, long, long"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <constructor name="FileRegion" type="org.apache.hadoop.hdfs.protocol.Block, org.apache.hadoop.hdfs.protocol.ProvidedStorageLocation"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <method name="getBlock" return="org.apache.hadoop.hdfs.protocol.Block"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="getProvidedStorageLocation" return="org.apache.hadoop.hdfs.protocol.ProvidedStorageLocation"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="equals" return="boolean"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="o" type="java.lang.Object"/>
    </method>
    <method name="hashCode" return="int"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <doc>
    <![CDATA[This class is used to represent provided blocks that are file regions,
 i.e., can be described using (path, offset, length).]]>
    </doc>
  </class>
  <!-- end class org.apache.hadoop.hdfs.server.common.FileRegion -->
</package>
<package name="org.apache.hadoop.hdfs.server.common.blockaliasmap">
  <!-- start class org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap -->
  <class name="BlockAliasMap" extends="java.lang.Object"
    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <constructor name="BlockAliasMap"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <method name="getReader" return="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Reader"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="opts" type="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Reader.Options"/>
      <param name="blockPoolID" type="java.lang.String"/>
      <exception name="IOException" type="java.io.IOException"/>
      <doc>
      <![CDATA[Returns a reader to the alias map.
 @param opts reader options
 @param blockPoolID block pool id to use
 @return {@link Reader} to the alias map. If a Reader for the blockPoolID
 cannot be created, this will return null.
 @throws IOException]]>
      </doc>
    </method>
    <method name="getWriter" return="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Writer"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="opts" type="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Writer.Options"/>
      <param name="blockPoolID" type="java.lang.String"/>
      <exception name="IOException" type="java.io.IOException"/>
      <doc>
      <![CDATA[Returns the writer for the alias map.
 @param opts writer options.
 @param blockPoolID block pool id to use
 @return {@link Writer} to the alias map.
 @throws IOException]]>
      </doc>
    </method>
    <method name="refresh"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <exception name="IOException" type="java.io.IOException"/>
      <doc>
      <![CDATA[Refresh the alias map.
 @throws IOException]]>
      </doc>
    </method>
    <method name="close"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <doc>
    <![CDATA[An abstract class used to read and write block maps for provided blocks.]]>
    </doc>
  </class>
  <!-- end class org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap -->
</package>
<package name="org.apache.hadoop.hdfs.server.common.blockaliasmap.impl">
  <!-- start class org.apache.hadoop.hdfs.server.common.blockaliasmap.impl.LevelDBFileRegionAliasMap -->
  <class name="LevelDBFileRegionAliasMap" extends="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap"
    abstract="false"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <implements name="org.apache.hadoop.conf.Configurable"/>
    <constructor name="LevelDBFileRegionAliasMap"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <method name="setConf"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="conf" type="org.apache.hadoop.conf.Configuration"/>
    </method>
    <method name="getConf" return="org.apache.hadoop.conf.Configuration"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="getReader" return="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Reader"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="opts" type="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Reader.Options"/>
      <param name="blockPoolID" type="java.lang.String"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="getWriter" return="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Writer"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="opts" type="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Writer.Options"/>
      <param name="blockPoolID" type="java.lang.String"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="refresh"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="close"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <field name="LOG" type="org.slf4j.Logger"
      transient="false" volatile="false"
      static="true" final="true" visibility="public"
      deprecated="not deprecated">
    </field>
    <doc>
    <![CDATA[A LevelDB based implementation of {@link BlockAliasMap}.]]>
    </doc>
  </class>
  <!-- end class org.apache.hadoop.hdfs.server.common.blockaliasmap.impl.LevelDBFileRegionAliasMap -->
  <!-- start class org.apache.hadoop.hdfs.server.common.blockaliasmap.impl.TextFileRegionAliasMap -->
  <class name="TextFileRegionAliasMap" extends="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap"
    abstract="false"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <implements name="org.apache.hadoop.conf.Configurable"/>
    <constructor name="TextFileRegionAliasMap"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <method name="setConf"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="conf" type="org.apache.hadoop.conf.Configuration"/>
    </method>
    <method name="getConf" return="org.apache.hadoop.conf.Configuration"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </method>
    <method name="getReader" return="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Reader"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="opts" type="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Reader.Options"/>
      <param name="blockPoolID" type="java.lang.String"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="getWriter" return="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Writer"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="opts" type="org.apache.hadoop.hdfs.server.common.blockaliasmap.BlockAliasMap.Writer.Options"/>
      <param name="blockPoolID" type="java.lang.String"/>
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="refresh"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="close"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <exception name="IOException" type="java.io.IOException"/>
    </method>
    <method name="blockPoolIDFromFileName" return="java.lang.String"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="file" type="org.apache.hadoop.fs.Path"/>
    </method>
    <method name="fileNameFromBlockPoolID" return="java.lang.String"
      abstract="false" native="false" synchronized="false"
      static="true" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="blockPoolID" type="java.lang.String"/>
    </method>
    <field name="LOG" type="org.slf4j.Logger"
      transient="false" volatile="false"
      static="true" final="true" visibility="public"
      deprecated="not deprecated">
    </field>
    <doc>
    <![CDATA[This class is used for block maps stored as text files,
 with a specified delimiter.]]>
    </doc>
  </class>
  <!-- end class org.apache.hadoop.hdfs.server.common.blockaliasmap.impl.TextFileRegionAliasMap -->
</package>
<package name="org.apache.hadoop.hdfs.server.datanode">
</package>
<package name="org.apache.hadoop.hdfs.server.datanode.fsdataset">
</package>
<package name="org.apache.hadoop.hdfs.server.datanode.fsdataset.impl">
</package>
<package name="org.apache.hadoop.hdfs.server.datanode.metrics">
</package>
<package name="org.apache.hadoop.hdfs.server.datanode.web">
</package>
<package name="org.apache.hadoop.hdfs.server.datanode.web.webhdfs">
</package>
<package name="org.apache.hadoop.hdfs.server.diskbalancer">
</package>
<package name="org.apache.hadoop.hdfs.server.diskbalancer.command">
</package>
<package name="org.apache.hadoop.hdfs.server.diskbalancer.connectors">
</package>
<package name="org.apache.hadoop.hdfs.server.diskbalancer.datamodel">
</package>
<package name="org.apache.hadoop.hdfs.server.diskbalancer.planner">
</package>
<package name="org.apache.hadoop.hdfs.server.mover">
</package>
<package name="org.apache.hadoop.hdfs.server.namenode">
  <!-- start interface org.apache.hadoop.hdfs.server.namenode.AuditLogger -->
  <interface name="AuditLogger"    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <method name="initialize"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="conf" type="org.apache.hadoop.conf.Configuration"/>
      <doc>
      <![CDATA[Called during initialization of the logger.

 @param conf The configuration object.]]>
      </doc>
    </method>
    <method name="logAuditEvent"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="succeeded" type="boolean"/>
      <param name="userName" type="java.lang.String"/>
      <param name="addr" type="java.net.InetAddress"/>
      <param name="cmd" type="java.lang.String"/>
      <param name="src" type="java.lang.String"/>
      <param name="dst" type="java.lang.String"/>
      <param name="stat" type="org.apache.hadoop.fs.FileStatus"/>
      <doc>
      <![CDATA[Called to log an audit event.
 <p>
 This method must return as quickly as possible, since it's called
 in a critical section of the NameNode's operation.

 @param succeeded Whether authorization succeeded.
 @param userName Name of the user executing the request.
 @param addr Remote address of the request.
 @param cmd The requested command.
 @param src Path of affected source file.
 @param dst Path of affected destination file (if any).
 @param stat File information for operations that change the file's
             metadata (permissions, owner, times, etc).]]>
      </doc>
    </method>
    <doc>
    <![CDATA[Interface defining an audit logger.]]>
    </doc>
  </interface>
  <!-- end interface org.apache.hadoop.hdfs.server.namenode.AuditLogger -->
  <!-- start class org.apache.hadoop.hdfs.server.namenode.DefaultAuditLogger -->
  <class name="DefaultAuditLogger" extends="org.apache.hadoop.hdfs.server.namenode.HdfsAuditLogger"
    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <constructor name="DefaultAuditLogger"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <method name="initialize"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="conf" type="org.apache.hadoop.conf.Configuration"/>
    </method>
    <method name="logAuditMessage"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="message" type="java.lang.String"/>
    </method>
    <method name="logAuditEvent"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="succeeded" type="boolean"/>
      <param name="userName" type="java.lang.String"/>
      <param name="addr" type="java.net.InetAddress"/>
      <param name="cmd" type="java.lang.String"/>
      <param name="src" type="java.lang.String"/>
      <param name="dst" type="java.lang.String"/>
      <param name="status" type="org.apache.hadoop.fs.FileStatus"/>
      <param name="ugi" type="org.apache.hadoop.security.UserGroupInformation"/>
      <param name="dtSecretManager" type="org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenSecretManager"/>
    </method>
    <method name="logAuditEvent"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="succeeded" type="boolean"/>
      <param name="userName" type="java.lang.String"/>
      <param name="addr" type="java.net.InetAddress"/>
      <param name="cmd" type="java.lang.String"/>
      <param name="src" type="java.lang.String"/>
      <param name="dst" type="java.lang.String"/>
      <param name="status" type="org.apache.hadoop.fs.FileStatus"/>
      <param name="callerContext" type="org.apache.hadoop.ipc.CallerContext"/>
      <param name="ugi" type="org.apache.hadoop.security.UserGroupInformation"/>
      <param name="dtSecretManager" type="org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenSecretManager"/>
    </method>
    <field name="STRING_BUILDER" type="java.lang.ThreadLocal"
      transient="false" volatile="false"
      static="true" final="true" visibility="protected"
      deprecated="not deprecated">
    </field>
    <field name="isCallerContextEnabled" type="boolean"
      transient="false" volatile="true"
      static="false" final="false" visibility="protected"
      deprecated="not deprecated">
    </field>
    <field name="callerContextMaxLen" type="int"
      transient="false" volatile="false"
      static="false" final="false" visibility="protected"
      deprecated="not deprecated">
      <doc>
      <![CDATA[The maximum bytes a caller context string can have.]]>
      </doc>
    </field>
    <field name="callerSignatureMaxLen" type="int"
      transient="false" volatile="false"
      static="false" final="false" visibility="protected"
      deprecated="not deprecated">
    </field>
    <field name="logTokenTrackingId" type="boolean"
      transient="false" volatile="false"
      static="false" final="false" visibility="protected"
      deprecated="not deprecated">
      <doc>
      <![CDATA[adds a tracking ID for all audit log events.]]>
      </doc>
    </field>
    <field name="debugCmdSet" type="java.util.Set"
      transient="false" volatile="false"
      static="false" final="false" visibility="protected"
      deprecated="not deprecated">
      <doc>
      <![CDATA[List of commands to provide debug messages.]]>
      </doc>
    </field>
    <doc>
    <![CDATA[This class provides an interface for Namenode and Router to Audit events
 information. This class can be extended and can be used when no access logger
 is defined in the config file.]]>
    </doc>
  </class>
  <!-- end class org.apache.hadoop.hdfs.server.namenode.DefaultAuditLogger -->
  <!-- start class org.apache.hadoop.hdfs.server.namenode.HdfsAuditLogger -->
  <class name="HdfsAuditLogger" extends="java.lang.Object"
    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <implements name="org.apache.hadoop.hdfs.server.namenode.AuditLogger"/>
    <constructor name="HdfsAuditLogger"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <method name="logAuditEvent"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="succeeded" type="boolean"/>
      <param name="userName" type="java.lang.String"/>
      <param name="addr" type="java.net.InetAddress"/>
      <param name="cmd" type="java.lang.String"/>
      <param name="src" type="java.lang.String"/>
      <param name="dst" type="java.lang.String"/>
      <param name="status" type="org.apache.hadoop.fs.FileStatus"/>
    </method>
    <method name="logAuditEvent"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="succeeded" type="boolean"/>
      <param name="userName" type="java.lang.String"/>
      <param name="addr" type="java.net.InetAddress"/>
      <param name="cmd" type="java.lang.String"/>
      <param name="src" type="java.lang.String"/>
      <param name="dst" type="java.lang.String"/>
      <param name="stat" type="org.apache.hadoop.fs.FileStatus"/>
      <param name="callerContext" type="org.apache.hadoop.ipc.CallerContext"/>
      <param name="ugi" type="org.apache.hadoop.security.UserGroupInformation"/>
      <param name="dtSecretManager" type="org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenSecretManager"/>
      <doc>
      <![CDATA[Same as
 {@link #logAuditEvent(boolean, String, InetAddress, String, String, String,
 FileStatus)} with additional parameters related to logging delegation token
 tracking IDs.
 
 @param succeeded Whether authorization succeeded.
 @param userName Name of the user executing the request.
 @param addr Remote address of the request.
 @param cmd The requested command.
 @param src Path of affected source file.
 @param dst Path of affected destination file (if any).
 @param stat File information for operations that change the file's metadata
          (permissions, owner, times, etc).
 @param callerContext Context information of the caller
 @param ugi UserGroupInformation of the current user, or null if not logging
          token tracking information
 @param dtSecretManager The token secret manager, or null if not logging
          token tracking information]]>
      </doc>
    </method>
    <method name="logAuditEvent"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="succeeded" type="boolean"/>
      <param name="userName" type="java.lang.String"/>
      <param name="addr" type="java.net.InetAddress"/>
      <param name="cmd" type="java.lang.String"/>
      <param name="src" type="java.lang.String"/>
      <param name="dst" type="java.lang.String"/>
      <param name="stat" type="org.apache.hadoop.fs.FileStatus"/>
      <param name="ugi" type="org.apache.hadoop.security.UserGroupInformation"/>
      <param name="dtSecretManager" type="org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenSecretManager"/>
      <doc>
      <![CDATA[Same as
 {@link #logAuditEvent(boolean, String, InetAddress, String, String,
 String, FileStatus, CallerContext, UserGroupInformation,
 DelegationTokenSecretManager)} without {@link CallerContext} information.]]>
      </doc>
    </method>
    <doc>
    <![CDATA[Extension of {@link AuditLogger}.]]>
    </doc>
  </class>
  <!-- end class org.apache.hadoop.hdfs.server.namenode.HdfsAuditLogger -->
  <!-- start class org.apache.hadoop.hdfs.server.namenode.INodeAttributeProvider -->
  <class name="INodeAttributeProvider" extends="java.lang.Object"
    abstract="true"
    static="false" final="false" visibility="public"
    deprecated="not deprecated">
    <constructor name="INodeAttributeProvider"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
    </constructor>
    <method name="start"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <doc>
      <![CDATA[Initialize the provider. This method is called at NameNode startup
 time.]]>
      </doc>
    </method>
    <method name="stop"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <doc>
      <![CDATA[Shutdown the provider. This method is called at NameNode shutdown time.]]>
      </doc>
    </method>
    <method name="getAttributes" return="org.apache.hadoop.hdfs.server.namenode.INodeAttributes"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="fullPath" type="java.lang.String"/>
      <param name="inode" type="org.apache.hadoop.hdfs.server.namenode.INodeAttributes"/>
    </method>
    <method name="getAttributes" return="org.apache.hadoop.hdfs.server.namenode.INodeAttributes"
      abstract="true" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="pathElements" type="java.lang.String[]"/>
      <param name="inode" type="org.apache.hadoop.hdfs.server.namenode.INodeAttributes"/>
    </method>
    <method name="getAttributes" return="org.apache.hadoop.hdfs.server.namenode.INodeAttributes"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="components" type="byte[][]"/>
      <param name="inode" type="org.apache.hadoop.hdfs.server.namenode.INodeAttributes"/>
    </method>
    <method name="getExternalAccessControlEnforcer" return="org.apache.hadoop.hdfs.server.namenode.INodeAttributeProvider.AccessControlEnforcer"
      abstract="false" native="false" synchronized="false"
      static="false" final="false" visibility="public"
      deprecated="not deprecated">
      <param name="defaultEnforcer" type="org.apache.hadoop.hdfs.server.namenode.INodeAttributeProvider.AccessControlEnforcer"/>
      <doc>
      <![CDATA[Can be over-ridden by implementations to provide a custom Access Control
 Enforcer that can provide an alternate implementation of the
 default permission checking logic.
 @param defaultEnforcer The Default AccessControlEnforcer
 @return The AccessControlEnforcer to use]]>
      </doc>
    </method>
  </class>
  <!-- end class org.apache.hadoop.hdfs.server.namenode.INodeAttributeProvider -->
</package>
<package name="org.apache.hadoop.hdfs.server.namenode.ha">
</package>
<package name="org.apache.hadoop.hdfs.server.namenode.metrics">
</package>
<package name="org.apache.hadoop.hdfs.server.namenode.snapshot">
</package>
<package name="org.apache.hadoop.hdfs.server.namenode.top">
</package>
<package name="org.apache.hadoop.hdfs.server.namenode.top.metrics">
</package>
<package name="org.apache.hadoop.hdfs.server.namenode.top.window">
</package>
<package name="org.apache.hadoop.hdfs.server.namenode.web.resources">
</package>
<package name="org.apache.hadoop.hdfs.tools">
</package>
<package name="org.apache.hadoop.hdfs.tools.offlineEditsViewer">
</package>
<package name="org.apache.hadoop.hdfs.tools.offlineImageViewer">
</package>
<package name="org.apache.hadoop.hdfs.tools.snapshot">
</package>
<package name="org.apache.hadoop.hdfs.util">
</package>
<package name="org.apache.hadoop.hdfs.web">
</package>
<package name="org.apache.hadoop.hdfs.web.resources">
</package>

</api>
