里面放着两个注解类:InterfaceAudience和InterfaceStability。

InterfaceAudience 类包含三个注解类型,用来被说明被他们注解的类型的潜在的使用范围(audience)。
         @InterfaceAudience.Public: 对所有工程和应用可用
         @InterfaceAudience.LimitedPrivate: 仅限于某些特定工程,如Comomn,HDFS等
         @InterfaceAudience.Private: 仅限于Hadoop

InterfaceStability 类包含三个注解,用于说明被他们注解的类型的稳定性。
         @InterfaceStability.Stable: 主版本是稳定的,不同主版本间可能不兼容
         @InterfaceStability.Evolving: 不断变化,不同次版本间可能不兼容
         @InterfaceStability.Unstable: 没有任何可靠性和健壮性保证


 /**
*注释省略...
**/
package org.apache.hadoop.classification; import java.lang.annotation.Documented;
//只引入了JDK的注释包中的Documented接口,即没有其他hadoop类级联
/**
* Annotation to inform users of a package, class or method's intended audience.
*/
//这里面也是注解类,用来向用户表明一个包、类或者方法的潜在的使用范围
@InterfaceAudience.Public
@InterfaceStability.Evolving
//自注解(自己起的名字)。第一个注解就用到了这个类中的第一个内部注解。第二个是同包下的第二个类(不解释)。
public class InterfaceAudience {
/**
* Intended for use by any project or application.
*/
@Documented public @interface Public {};
//@Doccumented 是元注解(就是注解注解的注解),作用是指示某一类型的注释将通过 javadoc 和类似的默认工具进行文档化。
//这个注解是标识适用任何工程或者应用
/**
* Intended only for the project(s) specified in the annotation.
* For example, "Common", "HDFS", "MapReduce", "ZooKeeper", "HBase".
*/
@Documented public @interface LimitedPrivate {
String[] value();
};
//标识适用于某些特殊的工程。比如HDFS、Mapreduce等
//它的值是个字符串数组,表示可以是多个工程 /**
* Intended for use only within Hadoop itself.
*/
@Documented public @interface Private {};
//只适用于hadoop自己
private InterfaceAudience() {} // Audience can't exist on its own
//构造方法,私有的。已有注释
}

关于元注解和自定义注解 http://www.cnblogs.com/peida/archive/2013/04/24/3036689.html


 package org.apache.hadoop.classification;

 import java.lang.annotation.Documented;

 /**
* Annotation to inform users of how much to rely on a particular package,
* class or method not changing over time.
*/
//说明被他们注解的类型的稳定性
@InterfaceAudience.Public
@InterfaceStability.Evolving
public class InterfaceStability {
/**
* Can evolve while retaining compatibility for minor release boundaries.;
* can break compatibility only at major release (ie. at m.0).
*/
@Documented
public @interface Stable {};
//主版本是稳定的,不同主版本间可能不兼容
/**
* Evolving, but can break compatibility at minor release (i.e. m.x)
*/
@Documented
public @interface Evolving {};
//不断变化,不同次版本间可能不兼容
/**
* No guarantee is provided as to reliability or stability across any
* level of release granularity.
*/
@Documented
public @interface Unstable {};
//没有任何可靠性和健壮性保证
}

源码-hadoop1.1.0-core-org.apache.hadoop.classification的更多相关文章

  1. 【转】Win 7 下源码运行OpenERP7.0

    原文地址:Win 7 下源码运行OpenERP7.0 安装Python2.7 下载地址:http://www.python.org/getit/注:OpenERP7.0支持的Python版本最高为2. ...

  2. CentOS7源码安装Redis5.0.4非关系型数据库

    源码安装redis-5.0.4 一. 下载redis 1. 需要连接网络 二. 案例(另一种安装方法) [root@localhost ~]# wget http://download.redis.i ...

  3. 源码安装 qemu-2.0.0 及其依赖 glib-2.12.12

    源码安装qemu-2.0.0 下载源代码并解压 http://wiki.qemu-project.org/download/qemu-2.0.0.tar.bz2 .tar.gz 编译及安装: cd q ...

  4. 源码-hadoop1.1.0-core-org.apache.hadoop

    按包的顺序类的顺序来吧,因为我不懂hadoop类的具体体系和类之间的联系,如果有一定知识积累的可以看下别人写的hadoop源码解读类的书,类似的有 http://pan.baidu.com/s/1i3 ...

  5. CentOS下源码安装vsftpd-3.0.0,并设置指定用户访问指定目录(附带完整配置文件)

    1.卸载系统已经存在的ftp服务器 因为是源码安装,所以不能通过rpm -qa的方式查看是否已经安装ftp服务器,可以通过find / | grep vsftp*方式查看系统中存在哪些与vsftpd相 ...

  6. ubuntu16.04下源码安装onos1.0.2

    由于工作需要,下载安装onos1.0.2的版本,大家看需求可以下载安装更高级的版本 参考链接:http://www.sdnlab.com/14650.html 1.系统环境 Ubuntu16.04 L ...

  7. 源码搭建Zabbix4.0.23LTS监控系统

    实验环境 centos 7.5 主机名 IP地址 配置 应用 controlnode 172.16.1.120/24 4核/8G/60G java-1.8.0-openjdk zabbix serve ...

  8. 烂泥:Linux源码包制作RPM包之Apache

    本文由秀依林枫提供友情赞助,首发于烂泥行天下 公司服务器比较多,需要把apache源码包制作成rpm包,然后放到公司内网yum源上进行下载安装.apache的rpm包安装方式比源码安装方式比较快,这能 ...

  9. 解决从源码编译ncurses6.0编译lib_gen.c报错的问题

    直接从官网的源码编译时,会提示报错: gcc -DHAVE_CONFIG_H -I. -I../include -D_GNU_SOURCE -DNDEBUG -O2 --param max-inlin ...

随机推荐

  1. postsharp初体验

    首先,有必要先介绍下,什么叫做AOP(Aspect-Oriented Programming,面向切面编程).下图是百度的词条解释 用图来解释可能更直接了当些: ps:图片来自http://www.c ...

  2. 第二百一十一天 how can i 坚持

    参与感.做项目要有激情. 睡觉.

  3. 一、 使用存储过程实现数据分页(Sql Server 2008 R2)

    1.废话不多说了,直接上代码.调用这个存储过程只需要传递 表名,排序字段,搜索字段,以及页码,页码数量,搜索值(可空) create PROCEDURE NewPage --通用的分页存储过程,百万数 ...

  4. HDU 2516 取石子游戏(FIB博弈)

    取石子游戏 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  5. Problems running django-admin

    “command not found: django-admin”¶ django-admin should be on your system path if you installed Djang ...

  6. mssql 用户只能查看授权的数据库

    问题背景:公司的一台数据库服务器上放在多个数据库,每个数据库都使用不同的登录名称,但在将项目文件发布到Ftp时,有些Ftp的信息是在客户那边的 一旦客户那边使用配置文件中的数据库信息连接到数据库他就能 ...

  7. Decode放在where条件后的新用法

    今天遇到一种特殊情况的查询,在查询某表时,要通过判断其中一个字段的值再用其他字段作为条件查询,比如有3个字段 columnA,columnBm,columnC,columnA的值由两个——分别是0和1 ...

  8. php涉及数据库操作时响应很慢。

    症状描述: 网站是php开发的,大部分页面响应很慢. 本地开发时响应速度很快,但是部署到生产环境后大部分响应很慢. 通过谷歌浏览调试发现PHP页面加载很慢,有个别的php请求的响应时间甚至超过10秒, ...

  9. Hadoop on Mac with IntelliJ IDEA - 7 解决failed to report status for 600 seconds. Killing!问题

    本文讲述作业在Hadoop 1.2.1完成map后ruduce阶段遇到failed to report status for 600 seconds. Killing!问题的解决过程. 环境:Mac ...

  10. VPW协议解析

    http://www.dpfdoctor.net/content/?220.html SAE J1850 VPW协议也是OBD II标准中的一种,通常应用于GM车系中. VPW英文全称是Variabl ...