Mon, 21 Jun 2010 22:09:18 -0700
Merge
1.1 --- a/make/Makefile Thu Jun 17 16:28:21 2010 -0700 1.2 +++ b/make/Makefile Mon Jun 21 22:09:18 2010 -0700 1.3 @@ -26,9 +26,9 @@ 1.4 # Makefile for langtools: wrapper around Ant build.xml file 1.5 1.6 # 1.7 -# On Solaris, the 'make' utility from Sun will not work with these makefiles. 1.8 -# This little rule is only understood by Sun's make, and is harmless 1.9 -# when seen by the GNU make tool. If using Sun's make, this causes the 1.10 +# On Solaris, the standard 'make' utility will not work with these makefiles. 1.11 +# This little rule is only understood by Solaris make, and is harmless 1.12 +# when seen by the GNU make tool. If using Solaris make, this causes the 1.13 # make command to fail. 1.14 # 1.15 SUN_MAKE_TEST:sh = @echo "ERROR: PLEASE USE GNU VERSION OF MAKE"; exit 33 1.16 @@ -40,15 +40,16 @@ 1.17 1.18 SYSTEM_UNAME := $(shell uname) 1.19 1.20 +# Where is unwanted output to be delivered? 1.21 +# On Windows, MKS uses the special file "NUL", cygwin uses the customary unix file. 1.22 ifeq ($(SYSTEM_UNAME), Windows_NT) 1.23 DEV_NULL = NUL 1.24 else 1.25 +DEV_NULL = /dev/null 1.26 +endif 1.27 + 1.28 ifneq (,$(findstring CYGWIN,$(SYSTEM_UNAME))) 1.29 -DEV_NULL = NUL 1.30 USING_CYGWIN = true 1.31 -else 1.32 -DEV_NULL = /dev/null 1.33 -endif 1.34 endif 1.35 1.36 ifdef USING_CYGWIN 1.37 @@ -202,7 +203,7 @@ 1.38 1.39 #------------------------------------------------------------------- 1.40 # 1.41 -# Targets for Sun's internal JPRT build system 1.42 +# Targets for Oracle's internal JPRT build system 1.43 1.44 CD = cd 1.45 ZIP = zip
2.1 --- a/make/Makefile-classic Thu Jun 17 16:28:21 2010 -0700 2.2 +++ b/make/Makefile-classic Mon Jun 21 22:09:18 2010 -0700 2.3 @@ -28,9 +28,9 @@ 2.4 # 2.5 2.6 # 2.7 -# On Solaris, the 'make' utility from Sun will not work with these makefiles. 2.8 -# This little rule is only understood by Sun's make, and is harmless 2.9 -# when seen by the GNU make tool. If using Sun's make, this causes the 2.10 +# On Solaris, the standard 'make' utility will not work with these makefiles. 2.11 +# This little rule is only understood by Solaris make, and is harmless 2.12 +# when seen by the GNU make tool. If using Solaris make, this causes the 2.13 # make command to fail. 2.14 # 2.15 SUN_MAKE_TEST:sh = @echo "ERROR: PLEASE USE GNU VERSION OF MAKE"; exit 33
3.1 --- a/make/build.properties Thu Jun 17 16:28:21 2010 -0700 3.2 +++ b/make/build.properties Mon Jun 21 22:09:18 2010 -0700 3.3 @@ -76,17 +76,27 @@ 3.4 javadoc.jls3.option=-tag "jls3:a:See <cite>${javadoc.jls3.cite}</cite>:" 3.5 3.6 # jtreg, used to run the JDK regression tests 3.7 +# See http://openjdk.java.net/jtreg/ 3.8 # Override this path as needed, either on the command line or in 3.9 # one of the standard user build.properties files (see build.xml) 3.10 3.11 -# jtreg.home = /opt/jtreg/3.2.2_02 3.12 +# jtreg.home = /opt/jtreg/4.1 3.13 3.14 # findbugs 3.15 +# See http://findbugs.sourceforge.net/ 3.16 # Override this path as needed, either on the command line or in 3.17 # one of the standard user build.properties files (see build.xml) 3.18 3.19 # findbugs.home = /opt/findbugs/1.2.1 3.20 3.21 +# vizant (graph visualization tool for Ant) 3.22 +# See http://vizant.sourceforge.net/ 3.23 +# Override this path as needed, either on the command line or in 3.24 +# one of the standard user build.properties files (see build.xml) 3.25 + 3.26 +# vizant.jar = /opt/vizant/0.1.2/vizant-0.1.2.jar 3.27 +# dot = dot 3.28 + 3.29 #------------------------------------------------------------ 3.30 3.31 # The following properties define the packages for each of the tools. 3.32 @@ -148,12 +158,14 @@ 3.33 3.34 # 3.35 3.36 -# The following files require the import JDK to be available 3.37 -require.import.jdk.files = \ 3.38 +# The following files require the latest JDK to be available. 3.39 +# The API can be provided by using a suitable boot.java.home 3.40 +# or by setting import.jdk 3.41 +require.latest.jdk.files = \ 3.42 com/sun/tools/javac/nio/*.java 3.43 3.44 # The following files in the import jdk source directory are required 3.45 -# in order to compile the files defined in ${require.import.jdk.files} 3.46 +# in order to compile the files defined in ${require.latest.jdk.files} 3.47 # 3.48 # For NIO, the list of stub files is defined by the contents of the primary 3.49 # API packages, together with such types that may be required in order to
4.1 --- a/make/build.xml Thu Jun 17 16:28:21 2010 -0700 4.2 +++ b/make/build.xml Mon Jun 21 22:09:18 2010 -0700 4.3 @@ -25,12 +25,79 @@ 4.4 --> 4.5 4.6 <!-- 4.7 - This is the main build file for the complete langtools workspace. 4.8 - It is used both when working on the tools in NetBeans, and when building 4.9 - JDK itself, in which case it is invoked from the wrapper Makefile. 4.10 + This is the main build file for the complete langtools repository. 4.11 + It is used when building JDK (in which case it is invoked from the 4.12 + Makefile), and it can be used when working on the tools themselves, 4.13 + in an IDE such as NetBeans. 4.14 + 4.15 + External dependencies are specified via properties. These can be given 4.16 + on the command line, or by providing a local build.properties file. 4.17 + (They can also be edited into make/build.properties, although that is not 4.18 + recommended.) At a minimum, boot.java.home must be set to the installed 4.19 + location of the version of JDK used to build this repository. Additional 4.20 + properties may be required, depending on the targets that are built. 4.21 + For example, to run any of the jtreg tests you must set jtreg.home, 4.22 + to run findbugs on the code you must set findbugs.home, and so on. 4.23 + 4.24 + For the most part, javac can be built using the previous version of JDK. 4.25 + However, a small number of javac files require access to the latest JDK, 4.26 + which may not yet have been compiled. To compile these files, you can do 4.27 + one of the following: 4.28 + - Set boot.java.home to a recent build of the latest version of JDK. 4.29 + - Set import.jdk to either a recent build (containing jre/lib/rt.jar) 4.30 + or to jdk source repository. In the latter case, stub files will 4.31 + automatically be generated and used for the required API, to avoid 4.32 + unnecessary compilation of the source repository. 4.33 + If you do neither, the relevant files will not be built. 4.34 + 4.35 + The main build happens in two phases: 4.36 + - First, javac and other tools as needed are built using ${boot.java.home}. 4.37 + (This implies a constraint on the source code that they can be compiled 4.38 + with the previous version of JDK. 4.39 + - Second, all required classes are compiled with the latest javac, created 4.40 + in the previous step. 4.41 + The first phase is called the bootstrap phase. All targets, properties and 4.42 + tasks that are specific to that phase have "bootstrap" in their name. 4.43 + 4.44 + For more details on the JDK build, see 4.45 + http://blogs.sun.com/kto/entry/anatomy_of_the_jdk_build 4.46 + http://openjdk.java.net/groups/build/ 4.47 + For more details on the stub generator, see 4.48 + http://blogs.sun.com/jjg/entry/building_javac_for_jdk7 4.49 + 4.50 + Internal details ... 4.51 + 4.52 + Interim build products are created in the build/ directory. 4.53 + Final build products are created in the dist/ directory. 4.54 + When building JDK, the dist/directory will contain: 4.55 + - A bootstrap compiler suitable for running with ${boot.java.home} 4.56 + suitable for compiling downstream parts of JDK 4.57 + - Source files and class files for inclusion in the JDK being built 4.58 + When building standalone, the dist/directory will contain: 4.59 + - Separate jar files for each of the separate langtools components 4.60 + - Simple scripts to invoke the tools by executing the corresponding 4.61 + jar files. 4.62 + These jar files and scripts are "for developer use only". 4.63 + 4.64 + This file is organized into sections as follows: 4.65 + - global property definitions 4.66 + - general top level targets 4.67 + - general diagnostic/debugging targets 4.68 + - groups of targets for each tool: javac, javadoc, doclets, javah, javap, apt 4.69 + Within each group, the following targets are provided, where applicable 4.70 + build-bootstrap-TOOL build the bootstrap version of the tool 4.71 + build-classes-TOOL build the classes for the tool 4.72 + build-TOOL build the jar file and script for the tool 4.73 + jtreg-TOOL build the tool and run the appropriate tests 4.74 + findbugs-TOOL run findbugs on the tool's source oode 4.75 + TOOL build the tool, run the tests, and run findbugs 4.76 + - utility definitions 4.77 --> 4.78 4.79 <project name="langtools" default="build" basedir=".."> 4.80 + <!-- 4.81 + **** Global property definitions. 4.82 + --> 4.83 4.84 <!-- Force full debuginfo for javac if the debug.classfiles 4.85 property is set. This must be BEFORE the include of 4.86 @@ -107,35 +174,55 @@ 4.87 ignoresystemclasses="true" 4.88 classpath="${import.jdk}/jre/lib/rt.jar" classname="java.nio.file.Path"/> 4.89 4.90 - <!-- Set the default value of the sourcepath used for javac. --> 4.91 - <condition property="javac.sourcepath" value="${build.genstubs.dir}" else=""> 4.92 - <isset property="import.jdk.src.dir"/> 4.93 - </condition> 4.94 - 4.95 - <!-- Set the default value of the classpath used for javac. --> 4.96 - <property name="javac.classpath" value=""/> 4.97 - 4.98 - <!-- Set the default bootclasspath option used for javac. 4.99 - Note that different variants of the option are used, meaning we can't just 4.100 - define the value for the option. 4.101 - Note the explicit use of the standard property ${path.separator} in the following. 4.102 - This is because Ant is not clever enough to handle direct use of : or ; --> 4.103 + <!-- Set the default bootclasspath option used for javac. 4.104 + Note that different variants of the option are used, meaning we can't just 4.105 + define the value for the option. 4.106 + Note the explicit use of the standard property ${path.separator} in the following. 4.107 + This is because Ant is not clever enough to handle direct use of : or ; --> 4.108 <condition property="javac.bootclasspath.opt" 4.109 value="-Xbootclasspath:${build.classes.dir}${path.separator}${import.jdk.jar}" 4.110 else="-Xbootclasspath/p:${build.classes.dir}"> 4.111 <isset property="import.jdk.jar"/> 4.112 </condition> 4.113 4.114 - <condition property="exclude.files" value="" else="${require.import.jdk.files}"> 4.115 - <isset property="import.jdk"/> 4.116 + <condition property="boot.java.provides.latest.jdk"> 4.117 + <available 4.118 + ignoresystemclasses="true" 4.119 + classpath="${boot.java.home}/jre/lib/rt.jar" classname="java.nio.file.Path"/> 4.120 </condition> 4.121 4.122 - <!-- for debugging --> 4.123 - <target name="check-import.jdk"> 4.124 - <echo message="import.jdk: ${import.jdk}"/> 4.125 - <echo message="import.jdk.jar: ${import.jdk.jar}"/> 4.126 - <echo message="import.jdk.src.dir: ${import.jdk.src.dir}"/> 4.127 - </target> 4.128 + <condition property="bootstrap.exclude.files" value="" else="${require.latest.jdk.files}"> 4.129 + <isset property="boot.java.provides.latest.jdk"/> 4.130 + </condition> 4.131 + 4.132 + <condition property="exclude.files" value="" else="${require.latest.jdk.files}"> 4.133 + <or> 4.134 + <isset property="boot.java.provides.latest.jdk"/> 4.135 + <isset property="import.jdk"/> 4.136 + </or> 4.137 + </condition> 4.138 + 4.139 + <condition property="require.import.jdk.stubs"> 4.140 + <and> 4.141 + <not> 4.142 + <isset property="boot.java.provides.latest.jdk"/> 4.143 + </not> 4.144 + <isset property="import.jdk.src.dir"/> 4.145 + </and> 4.146 + </condition> 4.147 + 4.148 + <!-- Set the default value of the sourcepath used for javac. --> 4.149 + <condition property="javac.sourcepath" value="${build.genstubs.dir}" else=""> 4.150 + <isset property="require.import.jdk.stubs"/> 4.151 + </condition> 4.152 + 4.153 + <!-- Set the default value of the classpath used for javac. --> 4.154 + <property name="javac.classpath" value=""/> 4.155 + 4.156 + 4.157 + <!-- 4.158 + **** General top level targets. 4.159 + --> 4.160 4.161 <!-- Standard target to build deliverables for JDK build. --> 4.162 4.163 @@ -235,7 +322,61 @@ 4.164 datafile="${build.coverage.dir}/cobertura.ser"/> 4.165 </target> 4.166 4.167 - <!-- javac targets --> 4.168 + 4.169 + <!-- 4.170 + **** Debugging/diagnostic targets. 4.171 + --> 4.172 + 4.173 + <!-- standard JDK target --> 4.174 + <target name="sanity" 4.175 + description="display settings of configuration values"> 4.176 + <echo level="info">ant.home = ${ant.home}</echo> 4.177 + <echo level="info">boot.java.home = ${boot.java.home}</echo> 4.178 + <echo level="info">target.java.home = ${target.java.home}</echo> 4.179 + <echo level="info">jtreg.home = ${jtreg.home}</echo> 4.180 + <echo level="info">findbugs.home = ${findbugs.home}</echo> 4.181 + </target> 4.182 + 4.183 + <target name="post-sanity" depends="-def-jtreg,sanity,build" 4.184 + description="perform basic validation after a standard build"> 4.185 + <jtreg 4.186 + dir="make/test" 4.187 + workDir="${build.jtreg.dir}/post-sanity/work" 4.188 + reportDir="${build.jtreg.dir}/post-sanity/report" 4.189 + jdk="${target.java.home}" 4.190 + verbose="summary" 4.191 + failonerror="false" resultproperty="jtreg.post-sanity.result"> 4.192 + </jtreg> 4.193 + </target> 4.194 + 4.195 + <!-- use vizant tool to generate graphical image of this Ant file.--> 4.196 + <target name="vizant" depends="-def-vizant"> 4.197 + <mkdir dir="${build.dir}"/> 4.198 + <echo message="Generating ${build.dir}/build.dot"/> 4.199 + <vizant antfile="${make.dir}/build.xml" outfile="${build.dir}/build.dot"/> 4.200 + <echo message="Generating ${build.dir}/build.png"/> 4.201 + <exec executable="${dot}" > 4.202 + <arg value="-Tpng"/> 4.203 + <arg value="-o"/> 4.204 + <arg file="${build.dir}/build.png"/> 4.205 + <arg file="${build.dir}/build.dot"/> 4.206 + </exec> 4.207 + </target> 4.208 + 4.209 + <target name="check-import.jdk"> 4.210 + <echo message="import.jdk: ${import.jdk}"/> 4.211 + <echo message="import.jdk.jar: ${import.jdk.jar}"/> 4.212 + <echo message="import.jdk.src.dir: ${import.jdk.src.dir}"/> 4.213 + </target> 4.214 + 4.215 + <target name="diagnostics"> 4.216 + <diagnostics/> 4.217 + </target> 4.218 + 4.219 + 4.220 + <!-- 4.221 + **** javac targets. 4.222 + --> 4.223 4.224 <target name="build-bootstrap-javac" 4.225 depends="-def-build-bootstrap-classes,-def-build-bootstrap-jar,-def-build-bootstrap-tool"> 4.226 @@ -267,7 +408,10 @@ 4.227 4.228 <target name="javac" depends="build-javac,jtreg-javac,findbugs-javac"/> 4.229 4.230 - <!-- javadoc targets --> 4.231 + 4.232 + <!-- 4.233 + **** javadoc targets. 4.234 + --> 4.235 4.236 <target name="build-bootstrap-javadoc" depends="build-bootstrap-javac"> 4.237 <build-bootstrap-classes includes="${javadoc.includes}"/> 4.238 @@ -300,7 +444,10 @@ 4.239 4.240 <target name="javadoc" depends="build-javadoc,jtreg-javadoc,findbugs-javadoc"/> 4.241 4.242 - <!-- doclets targets --> 4.243 + 4.244 + <!-- 4.245 + **** doclets targets. 4.246 + --> 4.247 4.248 <target name="build-bootstrap-doclets" depends="build-bootstrap-javadoc,-def-build-bootstrap-jar"> 4.249 <build-bootstrap-classes includes="${doclets.includes}"/> 4.250 @@ -330,7 +477,10 @@ 4.251 4.252 <target name="doclets" depends="build-doclets,jtreg-doclets,findbugs-doclets"/> 4.253 4.254 - <!-- javah targets --> 4.255 + 4.256 + <!-- 4.257 + **** javah targets. 4.258 + --> 4.259 4.260 <target name="build-bootstrap-javah" depends="build-bootstrap-javadoc"> 4.261 <build-bootstrap-classes includes="${javah.includes}"/> 4.262 @@ -360,7 +510,10 @@ 4.263 4.264 <target name="javah" depends="build-javah,jtreg-javah,findbugs-javah"/> 4.265 4.266 - <!-- javap targets --> 4.267 + 4.268 + <!-- 4.269 + **** javap targets. 4.270 + --> 4.271 4.272 <target name="build-bootstrap-javap" 4.273 depends="-def-build-bootstrap-classes,-def-build-bootstrap-jar,-def-build-bootstrap-tool"> 4.274 @@ -393,7 +546,10 @@ 4.275 4.276 <target name="javap" depends="build-javap,jtreg-javap,findbugs-javap"/> 4.277 4.278 - <!-- apt targets --> 4.279 + 4.280 + <!-- 4.281 + **** apt targets. 4.282 + --> 4.283 4.284 <target name="build-bootstrap-apt" depends="build-bootstrap-javac"> 4.285 <build-bootstrap-classes includes="${apt.includes}"/> 4.286 @@ -426,9 +582,12 @@ 4.287 4.288 <target name="apt" depends="build-apt,jtreg-apt,findbugs-apt"/> 4.289 4.290 - <!-- Create import JDK stubs --> 4.291 4.292 - <target name="-create-import-jdk-stubs" depends="-def-genstubs" if="import.jdk.src.dir"> 4.293 + <!-- 4.294 + **** Create import JDK stubs. 4.295 + --> 4.296 + 4.297 + <target name="-create-import-jdk-stubs" depends="-def-genstubs" if="require.import.jdk.stubs"> 4.298 <mkdir dir="${build.genstubs.dir}"/> 4.299 <genstubs 4.300 srcdir="${import.jdk.src.dir}" destdir="${build.genstubs.dir}" 4.301 @@ -437,7 +596,12 @@ 4.302 /> 4.303 </target> 4.304 4.305 - <!-- Check targets --> 4.306 + 4.307 + <!-- 4.308 + **** Check targets. 4.309 + **** "-check-*" targets check that a required property is set, and set to a reasonable value. 4.310 + **** A user friendly message is generated if not, and the build exits. 4.311 + --> 4.312 4.313 <target name="-check-boot.java.home" depends="-def-check"> 4.314 <check name="bootstrap java" property="boot.java.home" marker="${java.marker}"/> 4.315 @@ -459,7 +623,15 @@ 4.316 <check name="jtreg" property="jtreg.home" marker="lib/jtreg.jar"/> 4.317 </target> 4.318 4.319 - <!-- Ant macro and preset defs --> 4.320 + <target name="-check-vizant" depends="-def-check"> 4.321 + <check name="vizant" property="vizant.jar"/> 4.322 + <check name="dot" property="dot"/> 4.323 + </target> 4.324 + 4.325 + 4.326 + <!-- 4.327 + **** Targets for Ant macro and task definitions. 4.328 + --> 4.329 4.330 <target name="-def-build-tool"> 4.331 <macrodef name="build-tool"> 4.332 @@ -599,7 +771,7 @@ 4.333 sourcepath="" 4.334 release="${bootstrap.release}" 4.335 full.version="${bootstrap.full.version}" 4.336 - excludes="${require.import.jdk.files} **/package-info.java"/> 4.337 + excludes="${bootstrap.exclude.files} **/package-info.java"/> 4.338 </presetdef> 4.339 </target> 4.340 4.341 @@ -617,7 +789,7 @@ 4.342 classpath="${build.toolclasses.dir}/"/> 4.343 </target> 4.344 4.345 - <target name="-def-genstubs" depends="build-bootstrap-javac"> 4.346 + <target name="-def-genstubs" depends="build-bootstrap-javac" if="require.import.jdk.stubs"> 4.347 <mkdir dir="${build.toolclasses.dir}"/> 4.348 <javac fork="true" 4.349 source="${boot.javac.source}" 4.350 @@ -640,7 +812,7 @@ 4.351 <sequential> 4.352 <property name="javadoc.options" value=""/> <!-- default, can be overridden per user or per project --> 4.353 <!-- Note: even with this default value, includes 4.354 - from src.classes.dir get javadoc'd; see packageset below --> 4.355 + from src.classes.dir get javadoc'd; see packageset below --> 4.356 <property name="javadoc.packagenames" value="none"/> <!-- default, can be overridden per user or per project --> 4.357 <javadoc 4.358 executable="${target.java.home}/bin/javadoc" 4.359 @@ -691,13 +863,15 @@ 4.360 <attribute name="tests"/> 4.361 <attribute name="jdk" default="${target.java.home}"/> 4.362 <attribute name="samevm" default="true"/> 4.363 - <attribute name="verbose" default="summary"/> 4.364 - <attribute name="options" default=""/> 4.365 + <attribute name="verbose" default="${default.jtreg.verbose}"/> 4.366 + <attribute name="options" default="${other.jtreg.options}"/> 4.367 <attribute name="keywords" default="-keywords:!ignore"/> 4.368 <attribute name="jpda.jvmargs" default=""/> 4.369 <sequential> 4.370 - <property name="coverage.options" value=""/> <!-- default --> 4.371 - <property name="coverage.classpath" value=""/> <!-- default --> 4.372 + <property name="coverage.options" value=""/> <!-- default --> 4.373 + <property name="coverage.classpath" value=""/> <!-- default --> 4.374 + <property name="default.jtreg.verbose" value="summary"/> <!-- default --> 4.375 + <property name="other.jtreg.options" value=""/> <!-- default --> 4.376 <jtreg 4.377 dir="${test.dir}" 4.378 workDir="${build.jtreg.dir}/@{name}/work" 4.379 @@ -766,11 +940,16 @@ 4.380 <property name="findbugs.defined" value="true"/> 4.381 </target> 4.382 4.383 + <target name="-def-vizant" unless="vizant.defined" depends="-check-vizant"> 4.384 + <taskdef name="vizant" classname="net.sourceforge.vizant.Vizant" classpath="${vizant.jar}"/> 4.385 + <property name="vizant.defined" value="true"/> 4.386 + </target> 4.387 + 4.388 <target name="-def-check"> 4.389 <macrodef name="check"> 4.390 <attribute name="name"/> 4.391 <attribute name="property"/> 4.392 - <attribute name="marker"/> 4.393 + <attribute name="marker" default=""/> 4.394 <sequential> 4.395 <fail message="Cannot locate @{name}: please set @{property} to its location"> 4.396 <condition> 4.397 @@ -781,41 +960,19 @@ 4.398 </fail> 4.399 <fail message="@{name} is not installed in ${@{property}}"> 4.400 <condition> 4.401 - <not> 4.402 - <available file="${@{property}}/@{marker}"/> 4.403 - </not> 4.404 + <and> 4.405 + <not> 4.406 + <equals arg1="@{marker}" arg2=""/> 4.407 + </not> 4.408 + <not> 4.409 + <available file="${@{property}}/@{marker}"/> 4.410 + </not> 4.411 + </and> 4.412 </condition> 4.413 </fail> 4.414 </sequential> 4.415 </macrodef> 4.416 </target> 4.417 4.418 - <!-- standard JDK target --> 4.419 - <target name="sanity" 4.420 - description="display settings of configuration values"> 4.421 - <echo level="info">ant.home = ${ant.home}</echo> 4.422 - <echo level="info">boot.java.home = ${boot.java.home}</echo> 4.423 - <echo level="info">target.java.home = ${target.java.home}</echo> 4.424 - <echo level="info">jtreg.home = ${jtreg.home}</echo> 4.425 - <echo level="info">findbugs.home = ${findbugs.home}</echo> 4.426 - </target> 4.427 - 4.428 - <!-- useful debugging targets --> 4.429 - <target name="diagnostics"> 4.430 - <diagnostics/> 4.431 - </target> 4.432 - 4.433 - <target name="post-sanity" depends="-def-jtreg,sanity,build" 4.434 - description="perform basic validation after a standard build"> 4.435 - <jtreg 4.436 - dir="make/test" 4.437 - workDir="${build.jtreg.dir}/post-sanity/work" 4.438 - reportDir="${build.jtreg.dir}/post-sanity/report" 4.439 - jdk="${target.java.home}" 4.440 - verbose="summary" 4.441 - failonerror="false" resultproperty="jtreg.post-sanity.result"> 4.442 - </jtreg> 4.443 - 4.444 - </target> 4.445 </project> 4.446
5.1 --- a/src/share/classes/com/sun/source/tree/Tree.java Thu Jun 17 16:28:21 2010 -0700 5.2 +++ b/src/share/classes/com/sun/source/tree/Tree.java Mon Jun 21 22:09:18 2010 -0700 5.3 @@ -30,7 +30,7 @@ 5.4 * 5.5 * <p><b>WARNING:</b> This interface and its sub-interfaces are 5.6 * subject to change as the Java™ programming language evolves. 5.7 - * These interfaces are implemented by Sun's Java compiler (javac) 5.8 + * These interfaces are implemented by the JDK Java compiler (javac) 5.9 * and should not be implemented either directly or indirectly by 5.10 * other applications. 5.11 *
6.1 --- a/src/share/classes/com/sun/source/util/JavacTask.java Thu Jun 17 16:28:21 2010 -0700 6.2 +++ b/src/share/classes/com/sun/source/util/JavacTask.java Mon Jun 21 22:09:18 2010 -0700 6.3 @@ -36,7 +36,7 @@ 6.4 import javax.tools.JavaFileObject; 6.5 6.6 /** 6.7 - * Provides access to functionality specific to the Sun Java Compiler, javac. 6.8 + * Provides access to functionality specific to the JDK Java Compiler, javac. 6.9 * 6.10 * @author Peter von der Ahé 6.11 * @author Jonathan Gibbons
7.1 --- a/src/share/classes/com/sun/source/util/TaskEvent.java Thu Jun 17 16:28:21 2010 -0700 7.2 +++ b/src/share/classes/com/sun/source/util/TaskEvent.java Mon Jun 21 22:09:18 2010 -0700 7.3 @@ -30,7 +30,7 @@ 7.4 import javax.tools.JavaFileObject; 7.5 7.6 /** 7.7 - * Provides details about work that has been done by the Sun Java Compiler, javac. 7.8 + * Provides details about work that has been done by the JDK Java Compiler, javac. 7.9 * 7.10 * @author Jonathan Gibbons 7.11 * @since 1.6
8.1 --- a/src/share/classes/com/sun/source/util/TaskListener.java Thu Jun 17 16:28:21 2010 -0700 8.2 +++ b/src/share/classes/com/sun/source/util/TaskListener.java Mon Jun 21 22:09:18 2010 -0700 8.3 @@ -27,7 +27,7 @@ 8.4 8.5 8.6 /** 8.7 - * Provides a listener to monitor the activity of the Sun Java Compiler, javac. 8.8 + * Provides a listener to monitor the activity of the JDK Java Compiler, javac. 8.9 * 8.10 * @author Jonathan Gibbons 8.11 * @since 1.6
9.1 --- a/src/share/classes/com/sun/tools/apt/comp/Apt.java Thu Jun 17 16:28:21 2010 -0700 9.2 +++ b/src/share/classes/com/sun/tools/apt/comp/Apt.java Mon Jun 21 22:09:18 2010 -0700 9.3 @@ -60,7 +60,7 @@ 9.4 /** 9.5 * Apt compiler phase. 9.6 * 9.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 9.8 + * <p><b>This is NOT part of any supported API. 9.9 * If you write code that depends on this, you do so at your own 9.10 * risk. This code and its internal interfaces are subject to change 9.11 * or deletion without notice.</b>
10.1 --- a/src/share/classes/com/sun/tools/apt/main/CommandLine.java Thu Jun 17 16:28:21 2010 -0700 10.2 +++ b/src/share/classes/com/sun/tools/apt/main/CommandLine.java Mon Jun 21 22:09:18 2010 -0700 10.3 @@ -35,8 +35,8 @@ 10.4 /** 10.5 * Various utility methods for processing Java tool command line arguments. 10.6 * 10.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 10.8 - * you write code that depends on this, you do so at your own risk. 10.9 + * <p><b>This is NOT part of any supported API. 10.10 + * If you write code that depends on this, you do so at your own risk. 10.11 * This code and its internal interfaces are subject to change or 10.12 * deletion without notice.</b> 10.13 */
11.1 --- a/src/share/classes/com/sun/tools/apt/main/JavaCompiler.java Thu Jun 17 16:28:21 2010 -0700 11.2 +++ b/src/share/classes/com/sun/tools/apt/main/JavaCompiler.java Mon Jun 21 22:09:18 2010 -0700 11.3 @@ -45,7 +45,7 @@ 11.4 import com.sun.tools.javac.parser.DocCommentScanner; 11.5 11.6 /** 11.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 11.8 + * <p><b>This is NOT part of any supported API. 11.9 * If you write code that depends on this, you do so at your own 11.10 * risk. This code and its internal interfaces are subject to change 11.11 * or deletion without notice.</b>
12.1 --- a/src/share/classes/com/sun/tools/apt/main/Main.java Thu Jun 17 16:28:21 2010 -0700 12.2 +++ b/src/share/classes/com/sun/tools/apt/main/Main.java Mon Jun 21 22:09:18 2010 -0700 12.3 @@ -61,7 +61,7 @@ 12.4 /** This class provides a commandline interface to the apt build-time 12.5 * tool. 12.6 * 12.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 12.8 + * <p><b>This is NOT part of any supported API. 12.9 * If you write code that depends on this, you do so at your own 12.10 * risk. This code and its internal interfaces are subject to change 12.11 * or deletion without notice.</b>
13.1 --- a/src/share/classes/com/sun/tools/apt/util/Bark.java Thu Jun 17 16:28:21 2010 -0700 13.2 +++ b/src/share/classes/com/sun/tools/apt/util/Bark.java Mon Jun 21 22:09:18 2010 -0700 13.3 @@ -34,8 +34,8 @@ 13.4 13.5 /** A subtype of Log for use in APT. 13.6 * 13.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 13.8 - * you write code that depends on this, you do so at your own risk. 13.9 + * <p><b>This is NOT part of any supported API. 13.10 + * If you write code that depends on this, you do so at your own risk. 13.11 * This code and its internal interfaces are subject to change or 13.12 * deletion without notice.</b> 13.13 */
14.1 --- a/src/share/classes/com/sun/tools/classfile/AccessFlags.java Thu Jun 17 16:28:21 2010 -0700 14.2 +++ b/src/share/classes/com/sun/tools/classfile/AccessFlags.java Mon Jun 21 22:09:18 2010 -0700 14.3 @@ -32,8 +32,8 @@ 14.4 /** 14.5 * See JVMS3, sections 4.2, 4.6, 4.7. 14.6 * 14.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 14.8 - * you write code that depends on this, you do so at your own risk. 14.9 + * <p><b>This is NOT part of any supported API. 14.10 + * If you write code that depends on this, you do so at your own risk. 14.11 * This code and its internal interfaces are subject to change or 14.12 * deletion without notice.</b> 14.13 */
15.1 --- a/src/share/classes/com/sun/tools/classfile/Annotation.java Thu Jun 17 16:28:21 2010 -0700 15.2 +++ b/src/share/classes/com/sun/tools/classfile/Annotation.java Mon Jun 21 22:09:18 2010 -0700 15.3 @@ -30,8 +30,8 @@ 15.4 /** 15.5 * See JVMS3, section 4.8.16. 15.6 * 15.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 15.8 - * you write code that depends on this, you do so at your own risk. 15.9 + * <p><b>This is NOT part of any supported API. 15.10 + * If you write code that depends on this, you do so at your own risk. 15.11 * This code and its internal interfaces are subject to change or 15.12 * deletion without notice.</b> 15.13 */
16.1 --- a/src/share/classes/com/sun/tools/classfile/AnnotationDefault_attribute.java Thu Jun 17 16:28:21 2010 -0700 16.2 +++ b/src/share/classes/com/sun/tools/classfile/AnnotationDefault_attribute.java Mon Jun 21 22:09:18 2010 -0700 16.3 @@ -30,8 +30,8 @@ 16.4 /** 16.5 * See JVMS3, section 4.8.15. 16.6 * 16.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 16.8 - * you write code that depends on this, you do so at your own risk. 16.9 + * <p><b>This is NOT part of any supported API. 16.10 + * If you write code that depends on this, you do so at your own risk. 16.11 * This code and its internal interfaces are subject to change or 16.12 * deletion without notice.</b> 16.13 */
17.1 --- a/src/share/classes/com/sun/tools/classfile/Attribute.java Thu Jun 17 16:28:21 2010 -0700 17.2 +++ b/src/share/classes/com/sun/tools/classfile/Attribute.java Mon Jun 21 22:09:18 2010 -0700 17.3 @@ -31,8 +31,8 @@ 17.4 import java.util.Map; 17.5 17.6 /** 17.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 17.8 - * you write code that depends on this, you do so at your own risk. 17.9 + * <p><b>This is NOT part of any supported API. 17.10 + * If you write code that depends on this, you do so at your own risk. 17.11 * This code and its internal interfaces are subject to change or 17.12 * deletion without notice.</b> 17.13 */
18.1 --- a/src/share/classes/com/sun/tools/classfile/AttributeException.java Thu Jun 17 16:28:21 2010 -0700 18.2 +++ b/src/share/classes/com/sun/tools/classfile/AttributeException.java Mon Jun 21 22:09:18 2010 -0700 18.3 @@ -26,8 +26,8 @@ 18.4 package com.sun.tools.classfile; 18.5 18.6 /* 18.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 18.8 - * you write code that depends on this, you do so at your own risk. 18.9 + * <p><b>This is NOT part of any supported API. 18.10 + * If you write code that depends on this, you do so at your own risk. 18.11 * This code and its internal interfaces are subject to change or 18.12 * deletion without notice.</b> 18.13 */
19.1 --- a/src/share/classes/com/sun/tools/classfile/Attributes.java Thu Jun 17 16:28:21 2010 -0700 19.2 +++ b/src/share/classes/com/sun/tools/classfile/Attributes.java Mon Jun 21 22:09:18 2010 -0700 19.3 @@ -32,8 +32,8 @@ 19.4 import java.util.Map; 19.5 19.6 /* 19.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 19.8 - * you write code that depends on this, you do so at your own risk. 19.9 + * <p><b>This is NOT part of any supported API. 19.10 + * If you write code that depends on this, you do so at your own risk. 19.11 * This code and its internal interfaces are subject to change or 19.12 * deletion without notice.</b> 19.13 */
20.1 --- a/src/share/classes/com/sun/tools/classfile/CharacterRangeTable_attribute.java Thu Jun 17 16:28:21 2010 -0700 20.2 +++ b/src/share/classes/com/sun/tools/classfile/CharacterRangeTable_attribute.java Mon Jun 21 22:09:18 2010 -0700 20.3 @@ -28,8 +28,8 @@ 20.4 import java.io.IOException; 20.5 20.6 /** 20.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 20.8 - * you write code that depends on this, you do so at your own risk. 20.9 + * <p><b>This is NOT part of any supported API. 20.10 + * If you write code that depends on this, you do so at your own risk. 20.11 * This code and its internal interfaces are subject to change or 20.12 * deletion without notice.</b> 20.13 */
21.1 --- a/src/share/classes/com/sun/tools/classfile/ClassFile.java Thu Jun 17 16:28:21 2010 -0700 21.2 +++ b/src/share/classes/com/sun/tools/classfile/ClassFile.java Mon Jun 21 22:09:18 2010 -0700 21.3 @@ -35,8 +35,8 @@ 21.4 /** 21.5 * See JVMS3, section 4.2. 21.6 * 21.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 21.8 - * you write code that depends on this, you do so at your own risk. 21.9 + * <p><b>This is NOT part of any supported API. 21.10 + * If you write code that depends on this, you do so at your own risk. 21.11 * This code and its internal interfaces are subject to change or 21.12 * deletion without notice.</b> 21.13 */
22.1 --- a/src/share/classes/com/sun/tools/classfile/ClassReader.java Thu Jun 17 16:28:21 2010 -0700 22.2 +++ b/src/share/classes/com/sun/tools/classfile/ClassReader.java Mon Jun 21 22:09:18 2010 -0700 22.3 @@ -32,8 +32,8 @@ 22.4 import java.io.InputStream; 22.5 22.6 /** 22.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 22.8 - * you write code that depends on this, you do so at your own risk. 22.9 + * <p><b>This is NOT part of any supported API. 22.10 + * If you write code that depends on this, you do so at your own risk. 22.11 * This code and its internal interfaces are subject to change or 22.12 * deletion without notice.</b> 22.13 */
23.1 --- a/src/share/classes/com/sun/tools/classfile/ClassTranslator.java Thu Jun 17 16:28:21 2010 -0700 23.2 +++ b/src/share/classes/com/sun/tools/classfile/ClassTranslator.java Mon Jun 21 22:09:18 2010 -0700 23.3 @@ -42,8 +42,8 @@ 23.4 /** 23.5 * Rewrites a class file using a map of translations. 23.6 * 23.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 23.8 - * you write code that depends on this, you do so at your own risk. 23.9 + * <p><b>This is NOT part of any supported API. 23.10 + * If you write code that depends on this, you do so at your own risk. 23.11 * This code and its internal interfaces are subject to change or 23.12 * deletion without notice.</b> 23.13 */
24.1 --- a/src/share/classes/com/sun/tools/classfile/ClassWriter.java Thu Jun 17 16:28:21 2010 -0700 24.2 +++ b/src/share/classes/com/sun/tools/classfile/ClassWriter.java Mon Jun 21 22:09:18 2010 -0700 24.3 @@ -41,8 +41,8 @@ 24.4 /** 24.5 * Write a ClassFile data structure to a file or stream. 24.6 * 24.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 24.8 - * you write code that depends on this, you do so at your own risk. 24.9 + * <p><b>This is NOT part of any supported API. 24.10 + * If you write code that depends on this, you do so at your own risk. 24.11 * This code and its internal interfaces are subject to change or 24.12 * deletion without notice.</b> 24.13 */
25.1 --- a/src/share/classes/com/sun/tools/classfile/Code_attribute.java Thu Jun 17 16:28:21 2010 -0700 25.2 +++ b/src/share/classes/com/sun/tools/classfile/Code_attribute.java Mon Jun 21 22:09:18 2010 -0700 25.3 @@ -32,8 +32,8 @@ 25.4 /** 25.5 * See JVMS3, section 4.8.3. 25.6 * 25.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 25.8 - * you write code that depends on this, you do so at your own risk. 25.9 + * <p><b>This is NOT part of any supported API. 25.10 + * If you write code that depends on this, you do so at your own risk. 25.11 * This code and its internal interfaces are subject to change or 25.12 * deletion without notice.</b> 25.13 */
26.1 --- a/src/share/classes/com/sun/tools/classfile/CompilationID_attribute.java Thu Jun 17 16:28:21 2010 -0700 26.2 +++ b/src/share/classes/com/sun/tools/classfile/CompilationID_attribute.java Mon Jun 21 22:09:18 2010 -0700 26.3 @@ -27,8 +27,8 @@ 26.4 import java.io.IOException; 26.5 26.6 /** 26.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 26.8 - * you write code that depends on this, you do so at your own risk. 26.9 + * <p><b>This is NOT part of any supported API. 26.10 + * If you write code that depends on this, you do so at your own risk. 26.11 * This code and its internal interfaces are subject to change or 26.12 * deletion without notice.</b> 26.13 */
27.1 --- a/src/share/classes/com/sun/tools/classfile/ConstantPool.java Thu Jun 17 16:28:21 2010 -0700 27.2 +++ b/src/share/classes/com/sun/tools/classfile/ConstantPool.java Mon Jun 21 22:09:18 2010 -0700 27.3 @@ -33,8 +33,8 @@ 27.4 /** 27.5 * See JVMS3, section 4.5. 27.6 * 27.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 27.8 - * you write code that depends on this, you do so at your own risk. 27.9 + * <p><b>This is NOT part of any supported API. 27.10 + * If you write code that depends on this, you do so at your own risk. 27.11 * This code and its internal interfaces are subject to change or 27.12 * deletion without notice.</b> 27.13 */
28.1 --- a/src/share/classes/com/sun/tools/classfile/ConstantPoolException.java Thu Jun 17 16:28:21 2010 -0700 28.2 +++ b/src/share/classes/com/sun/tools/classfile/ConstantPoolException.java Mon Jun 21 22:09:18 2010 -0700 28.3 @@ -27,8 +27,8 @@ 28.4 package com.sun.tools.classfile; 28.5 28.6 /* 28.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 28.8 - * you write code that depends on this, you do so at your own risk. 28.9 + * <p><b>This is NOT part of any supported API. 28.10 + * If you write code that depends on this, you do so at your own risk. 28.11 * This code and its internal interfaces are subject to change or 28.12 * deletion without notice.</b> 28.13 */
29.1 --- a/src/share/classes/com/sun/tools/classfile/ConstantValue_attribute.java Thu Jun 17 16:28:21 2010 -0700 29.2 +++ b/src/share/classes/com/sun/tools/classfile/ConstantValue_attribute.java Mon Jun 21 22:09:18 2010 -0700 29.3 @@ -30,8 +30,8 @@ 29.4 /** 29.5 * See JVMS3, section 4.8.2. 29.6 * 29.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 29.8 - * you write code that depends on this, you do so at your own risk. 29.9 + * <p><b>This is NOT part of any supported API. 29.10 + * If you write code that depends on this, you do so at your own risk. 29.11 * This code and its internal interfaces are subject to change or 29.12 * deletion without notice.</b> 29.13 */
30.1 --- a/src/share/classes/com/sun/tools/classfile/DefaultAttribute.java Thu Jun 17 16:28:21 2010 -0700 30.2 +++ b/src/share/classes/com/sun/tools/classfile/DefaultAttribute.java Mon Jun 21 22:09:18 2010 -0700 30.3 @@ -26,8 +26,8 @@ 30.4 package com.sun.tools.classfile; 30.5 30.6 /* 30.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 30.8 - * you write code that depends on this, you do so at your own risk. 30.9 + * <p><b>This is NOT part of any supported API. 30.10 + * If you write code that depends on this, you do so at your own risk. 30.11 * This code and its internal interfaces are subject to change or 30.12 * deletion without notice.</b> 30.13 */
31.1 --- a/src/share/classes/com/sun/tools/classfile/Deprecated_attribute.java Thu Jun 17 16:28:21 2010 -0700 31.2 +++ b/src/share/classes/com/sun/tools/classfile/Deprecated_attribute.java Mon Jun 21 22:09:18 2010 -0700 31.3 @@ -30,8 +30,8 @@ 31.4 /** 31.5 * See JVMS3, section 4.8.15. 31.6 * 31.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 31.8 - * you write code that depends on this, you do so at your own risk. 31.9 + * <p><b>This is NOT part of any supported API. 31.10 + * If you write code that depends on this, you do so at your own risk. 31.11 * This code and its internal interfaces are subject to change or 31.12 * deletion without notice.</b> 31.13 */
32.1 --- a/src/share/classes/com/sun/tools/classfile/Descriptor.java Thu Jun 17 16:28:21 2010 -0700 32.2 +++ b/src/share/classes/com/sun/tools/classfile/Descriptor.java Mon Jun 21 22:09:18 2010 -0700 32.3 @@ -31,8 +31,8 @@ 32.4 /** 32.5 * See JVMS3, section 4.4. 32.6 * 32.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 32.8 - * you write code that depends on this, you do so at your own risk. 32.9 + * <p><b>This is NOT part of any supported API. 32.10 + * If you write code that depends on this, you do so at your own risk. 32.11 * This code and its internal interfaces are subject to change or 32.12 * deletion without notice.</b> 32.13 */
33.1 --- a/src/share/classes/com/sun/tools/classfile/DescriptorException.java Thu Jun 17 16:28:21 2010 -0700 33.2 +++ b/src/share/classes/com/sun/tools/classfile/DescriptorException.java Mon Jun 21 22:09:18 2010 -0700 33.3 @@ -27,8 +27,8 @@ 33.4 package com.sun.tools.classfile; 33.5 33.6 /* 33.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 33.8 - * you write code that depends on this, you do so at your own risk. 33.9 + * <p><b>This is NOT part of any supported API. 33.10 + * If you write code that depends on this, you do so at your own risk. 33.11 * This code and its internal interfaces are subject to change or 33.12 * deletion without notice.</b> 33.13 */
34.1 --- a/src/share/classes/com/sun/tools/classfile/EnclosingMethod_attribute.java Thu Jun 17 16:28:21 2010 -0700 34.2 +++ b/src/share/classes/com/sun/tools/classfile/EnclosingMethod_attribute.java Mon Jun 21 22:09:18 2010 -0700 34.3 @@ -31,8 +31,8 @@ 34.4 /** 34.5 * See JVMS3, section 4.8.7. 34.6 * 34.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 34.8 - * you write code that depends on this, you do so at your own risk. 34.9 + * <p><b>This is NOT part of any supported API. 34.10 + * If you write code that depends on this, you do so at your own risk. 34.11 * This code and its internal interfaces are subject to change or 34.12 * deletion without notice.</b> 34.13 */
35.1 --- a/src/share/classes/com/sun/tools/classfile/Exceptions_attribute.java Thu Jun 17 16:28:21 2010 -0700 35.2 +++ b/src/share/classes/com/sun/tools/classfile/Exceptions_attribute.java Mon Jun 21 22:09:18 2010 -0700 35.3 @@ -30,8 +30,8 @@ 35.4 /** 35.5 * See JVMS3, section 4.8.5. 35.6 * 35.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 35.8 - * you write code that depends on this, you do so at your own risk. 35.9 + * <p><b>This is NOT part of any supported API. 35.10 + * If you write code that depends on this, you do so at your own risk. 35.11 * This code and its internal interfaces are subject to change or 35.12 * deletion without notice.</b> 35.13 */
36.1 --- a/src/share/classes/com/sun/tools/classfile/ExtendedAnnotation.java Thu Jun 17 16:28:21 2010 -0700 36.2 +++ b/src/share/classes/com/sun/tools/classfile/ExtendedAnnotation.java Mon Jun 21 22:09:18 2010 -0700 36.3 @@ -36,8 +36,8 @@ 36.4 /** 36.5 * See JSR 308 specification, section 4.1 36.6 * 36.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 36.8 - * you write code that depends on this, you do so at your own risk. 36.9 + * <p><b>This is NOT part of any supported API. 36.10 + * If you write code that depends on this, you do so at your own risk. 36.11 * This code and its internal interfaces are subject to change or 36.12 * deletion without notice.</b> 36.13 */
37.1 --- a/src/share/classes/com/sun/tools/classfile/Field.java Thu Jun 17 16:28:21 2010 -0700 37.2 +++ b/src/share/classes/com/sun/tools/classfile/Field.java Mon Jun 21 22:09:18 2010 -0700 37.3 @@ -28,8 +28,8 @@ 37.4 import java.io.IOException; 37.5 37.6 /* 37.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 37.8 - * you write code that depends on this, you do so at your own risk. 37.9 + * <p><b>This is NOT part of any supported API. 37.10 + * If you write code that depends on this, you do so at your own risk. 37.11 * This code and its internal interfaces are subject to change or 37.12 * deletion without notice.</b> 37.13 */
38.1 --- a/src/share/classes/com/sun/tools/classfile/InnerClasses_attribute.java Thu Jun 17 16:28:21 2010 -0700 38.2 +++ b/src/share/classes/com/sun/tools/classfile/InnerClasses_attribute.java Mon Jun 21 22:09:18 2010 -0700 38.3 @@ -32,8 +32,8 @@ 38.4 /** 38.5 * See JVMS3, section 4.8.6. 38.6 * 38.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 38.8 - * you write code that depends on this, you do so at your own risk. 38.9 + * <p><b>This is NOT part of any supported API. 38.10 + * If you write code that depends on this, you do so at your own risk. 38.11 * This code and its internal interfaces are subject to change or 38.12 * deletion without notice.</b> 38.13 */
39.1 --- a/src/share/classes/com/sun/tools/classfile/Instruction.java Thu Jun 17 16:28:21 2010 -0700 39.2 +++ b/src/share/classes/com/sun/tools/classfile/Instruction.java Mon Jun 21 22:09:18 2010 -0700 39.3 @@ -28,8 +28,8 @@ 39.4 /** 39.5 * See JVMS3, chapter 6. 39.6 * 39.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 39.8 - * you write code that depends on this, you do so at your own risk. 39.9 + * <p><b>This is NOT part of any supported API. 39.10 + * If you write code that depends on this, you do so at your own risk. 39.11 * This code and its internal interfaces are subject to change or 39.12 * deletion without notice.</b> 39.13 *
40.1 --- a/src/share/classes/com/sun/tools/classfile/LineNumberTable_attribute.java Thu Jun 17 16:28:21 2010 -0700 40.2 +++ b/src/share/classes/com/sun/tools/classfile/LineNumberTable_attribute.java Mon Jun 21 22:09:18 2010 -0700 40.3 @@ -30,8 +30,8 @@ 40.4 /** 40.5 * See JVMS3, section 4.8.12. 40.6 * 40.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 40.8 - * you write code that depends on this, you do so at your own risk. 40.9 + * <p><b>This is NOT part of any supported API. 40.10 + * If you write code that depends on this, you do so at your own risk. 40.11 * This code and its internal interfaces are subject to change or 40.12 * deletion without notice.</b> 40.13 */
41.1 --- a/src/share/classes/com/sun/tools/classfile/LocalVariableTable_attribute.java Thu Jun 17 16:28:21 2010 -0700 41.2 +++ b/src/share/classes/com/sun/tools/classfile/LocalVariableTable_attribute.java Mon Jun 21 22:09:18 2010 -0700 41.3 @@ -30,8 +30,8 @@ 41.4 /** 41.5 * See JVMS3, section 4.8.13. 41.6 * 41.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 41.8 - * you write code that depends on this, you do so at your own risk. 41.9 + * <p><b>This is NOT part of any supported API. 41.10 + * If you write code that depends on this, you do so at your own risk. 41.11 * This code and its internal interfaces are subject to change or 41.12 * deletion without notice.</b> 41.13 */
42.1 --- a/src/share/classes/com/sun/tools/classfile/LocalVariableTypeTable_attribute.java Thu Jun 17 16:28:21 2010 -0700 42.2 +++ b/src/share/classes/com/sun/tools/classfile/LocalVariableTypeTable_attribute.java Mon Jun 21 22:09:18 2010 -0700 42.3 @@ -30,8 +30,8 @@ 42.4 /** 42.5 * See JVMS3, section 4.8.14. 42.6 * 42.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 42.8 - * you write code that depends on this, you do so at your own risk. 42.9 + * <p><b>This is NOT part of any supported API. 42.10 + * If you write code that depends on this, you do so at your own risk. 42.11 * This code and its internal interfaces are subject to change or 42.12 * deletion without notice.</b> 42.13 */
43.1 --- a/src/share/classes/com/sun/tools/classfile/Method.java Thu Jun 17 16:28:21 2010 -0700 43.2 +++ b/src/share/classes/com/sun/tools/classfile/Method.java Mon Jun 21 22:09:18 2010 -0700 43.3 @@ -28,8 +28,8 @@ 43.4 import java.io.IOException; 43.5 43.6 /* 43.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 43.8 - * you write code that depends on this, you do so at your own risk. 43.9 + * <p><b>This is NOT part of any supported API. 43.10 + * If you write code that depends on this, you do so at your own risk. 43.11 * This code and its internal interfaces are subject to change or 43.12 * deletion without notice.</b> 43.13 */
44.1 --- a/src/share/classes/com/sun/tools/classfile/Opcode.java Thu Jun 17 16:28:21 2010 -0700 44.2 +++ b/src/share/classes/com/sun/tools/classfile/Opcode.java Mon Jun 21 22:09:18 2010 -0700 44.3 @@ -34,8 +34,8 @@ 44.4 * <p>In addition to providing all the standard opcodes defined in JVMS, 44.5 * this class also provides legacy support for the PicoJava extensions. 44.6 * 44.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 44.8 - * you write code that depends on this, you do so at your own risk. 44.9 + * <p><b>This is NOT part of any supported API. 44.10 + * If you write code that depends on this, you do so at your own risk. 44.11 * This code and its internal interfaces are subject to change or 44.12 * deletion without notice.</b> 44.13 */
45.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 45.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 45.3 @@ -30,8 +30,8 @@ 45.4 /** 45.5 * See JVMS3, section 4.8.16 and 4.8.17. 45.6 * 45.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 45.8 - * you write code that depends on this, you do so at your own risk. 45.9 + * <p><b>This is NOT part of any supported API. 45.10 + * If you write code that depends on this, you do so at your own risk. 45.11 * This code and its internal interfaces are subject to change or 45.12 * deletion without notice.</b> 45.13 */
46.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeInvisibleAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 46.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeInvisibleAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 46.3 @@ -30,8 +30,8 @@ 46.4 /** 46.5 * See JVMS3, section 4.8.17. 46.6 * 46.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 46.8 - * you write code that depends on this, you do so at your own risk. 46.9 + * <p><b>This is NOT part of any supported API. 46.10 + * If you write code that depends on this, you do so at your own risk. 46.11 * This code and its internal interfaces are subject to change or 46.12 * deletion without notice.</b> 46.13 */
47.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeInvisibleParameterAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 47.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeInvisibleParameterAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 47.3 @@ -30,8 +30,8 @@ 47.4 /** 47.5 * See JVMS3, section 4.8.18. 47.6 * 47.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 47.8 - * you write code that depends on this, you do so at your own risk. 47.9 + * <p><b>This is NOT part of any supported API. 47.10 + * If you write code that depends on this, you do so at your own risk. 47.11 * This code and its internal interfaces are subject to change or 47.12 * deletion without notice.</b> 47.13 */
48.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeInvisibleTypeAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 48.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeInvisibleTypeAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 48.3 @@ -30,8 +30,8 @@ 48.4 /** 48.5 * See JSR 308 specification, section 4.1 48.6 * 48.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 48.8 - * you write code that depends on this, you do so at your own risk. 48.9 + * <p><b>This is NOT part of any supported API. 48.10 + * If you write code that depends on this, you do so at your own risk. 48.11 * This code and its internal interfaces are subject to change or 48.12 * deletion without notice.</b> 48.13 */
49.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeParameterAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 49.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeParameterAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 49.3 @@ -30,8 +30,8 @@ 49.4 /** 49.5 * See JVMS3, section 4.8.18 and 4.8.19. 49.6 * 49.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 49.8 - * you write code that depends on this, you do so at your own risk. 49.9 + * <p><b>This is NOT part of any supported API. 49.10 + * If you write code that depends on this, you do so at your own risk. 49.11 * This code and its internal interfaces are subject to change or 49.12 * deletion without notice.</b> 49.13 */
50.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeTypeAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 50.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeTypeAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 50.3 @@ -30,8 +30,8 @@ 50.4 /** 50.5 * See JSR 308 specification, section 4 50.6 * 50.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 50.8 - * you write code that depends on this, you do so at your own risk. 50.9 + * <p><b>This is NOT part of any supported API. 50.10 + * If you write code that depends on this, you do so at your own risk. 50.11 * This code and its internal interfaces are subject to change or 50.12 * deletion without notice.</b> 50.13 */
51.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeVisibleAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 51.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeVisibleAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 51.3 @@ -30,8 +30,8 @@ 51.4 /** 51.5 * See JVMS3, section 4.8.16. 51.6 * 51.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 51.8 - * you write code that depends on this, you do so at your own risk. 51.9 + * <p><b>This is NOT part of any supported API. 51.10 + * If you write code that depends on this, you do so at your own risk. 51.11 * This code and its internal interfaces are subject to change or 51.12 * deletion without notice.</b> 51.13 */
52.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeVisibleParameterAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 52.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeVisibleParameterAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 52.3 @@ -30,8 +30,8 @@ 52.4 /** 52.5 * See JVMS3, section 4.8.18. 52.6 * 52.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 52.8 - * you write code that depends on this, you do so at your own risk. 52.9 + * <p><b>This is NOT part of any supported API. 52.10 + * If you write code that depends on this, you do so at your own risk. 52.11 * This code and its internal interfaces are subject to change or 52.12 * deletion without notice.</b> 52.13 */
53.1 --- a/src/share/classes/com/sun/tools/classfile/RuntimeVisibleTypeAnnotations_attribute.java Thu Jun 17 16:28:21 2010 -0700 53.2 +++ b/src/share/classes/com/sun/tools/classfile/RuntimeVisibleTypeAnnotations_attribute.java Mon Jun 21 22:09:18 2010 -0700 53.3 @@ -30,8 +30,8 @@ 53.4 /** 53.5 * See JSR 308 specification, section 4.1 53.6 * 53.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 53.8 - * you write code that depends on this, you do so at your own risk. 53.9 + * <p><b>This is NOT part of any supported API. 53.10 + * If you write code that depends on this, you do so at your own risk. 53.11 * This code and its internal interfaces are subject to change or 53.12 * deletion without notice.</b> 53.13 */
54.1 --- a/src/share/classes/com/sun/tools/classfile/Signature.java Thu Jun 17 16:28:21 2010 -0700 54.2 +++ b/src/share/classes/com/sun/tools/classfile/Signature.java Mon Jun 21 22:09:18 2010 -0700 54.3 @@ -32,8 +32,8 @@ 54.4 /** 54.5 * See JVMS3 4.4.4. 54.6 * 54.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 54.8 - * you write code that depends on this, you do so at your own risk. 54.9 + * <p><b>This is NOT part of any supported API. 54.10 + * If you write code that depends on this, you do so at your own risk. 54.11 * This code and its internal interfaces are subject to change or 54.12 * deletion without notice.</b> 54.13 */
55.1 --- a/src/share/classes/com/sun/tools/classfile/Signature_attribute.java Thu Jun 17 16:28:21 2010 -0700 55.2 +++ b/src/share/classes/com/sun/tools/classfile/Signature_attribute.java Mon Jun 21 22:09:18 2010 -0700 55.3 @@ -30,8 +30,8 @@ 55.4 /** 55.5 * See JVMS3, section 4.8.9. 55.6 * 55.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 55.8 - * you write code that depends on this, you do so at your own risk. 55.9 + * <p><b>This is NOT part of any supported API. 55.10 + * If you write code that depends on this, you do so at your own risk. 55.11 * This code and its internal interfaces are subject to change or 55.12 * deletion without notice.</b> 55.13 */
56.1 --- a/src/share/classes/com/sun/tools/classfile/SourceDebugExtension_attribute.java Thu Jun 17 16:28:21 2010 -0700 56.2 +++ b/src/share/classes/com/sun/tools/classfile/SourceDebugExtension_attribute.java Mon Jun 21 22:09:18 2010 -0700 56.3 @@ -32,8 +32,8 @@ 56.4 /** 56.5 * See JVMS3, section 4.8.15. 56.6 * 56.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 56.8 - * you write code that depends on this, you do so at your own risk. 56.9 + * <p><b>This is NOT part of any supported API. 56.10 + * If you write code that depends on this, you do so at your own risk. 56.11 * This code and its internal interfaces are subject to change or 56.12 * deletion without notice.</b> 56.13 */
57.1 --- a/src/share/classes/com/sun/tools/classfile/SourceFile_attribute.java Thu Jun 17 16:28:21 2010 -0700 57.2 +++ b/src/share/classes/com/sun/tools/classfile/SourceFile_attribute.java Mon Jun 21 22:09:18 2010 -0700 57.3 @@ -30,8 +30,8 @@ 57.4 /** 57.5 * See JVMS3, section 4.8.10. 57.6 * 57.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 57.8 - * you write code that depends on this, you do so at your own risk. 57.9 + * <p><b>This is NOT part of any supported API. 57.10 + * If you write code that depends on this, you do so at your own risk. 57.11 * This code and its internal interfaces are subject to change or 57.12 * deletion without notice.</b> 57.13 */
58.1 --- a/src/share/classes/com/sun/tools/classfile/SourceID_attribute.java Thu Jun 17 16:28:21 2010 -0700 58.2 +++ b/src/share/classes/com/sun/tools/classfile/SourceID_attribute.java Mon Jun 21 22:09:18 2010 -0700 58.3 @@ -27,8 +27,8 @@ 58.4 import java.io.IOException; 58.5 58.6 /** 58.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 58.8 - * you write code that depends on this, you do so at your own risk. 58.9 + * <p><b>This is NOT part of any supported API. 58.10 + * If you write code that depends on this, you do so at your own risk. 58.11 * This code and its internal interfaces are subject to change or 58.12 * deletion without notice.</b> 58.13 */
59.1 --- a/src/share/classes/com/sun/tools/classfile/StackMapTable_attribute.java Thu Jun 17 16:28:21 2010 -0700 59.2 +++ b/src/share/classes/com/sun/tools/classfile/StackMapTable_attribute.java Mon Jun 21 22:09:18 2010 -0700 59.3 @@ -30,8 +30,8 @@ 59.4 /** 59.5 * See JVMS3, section 4.8.4. 59.6 * 59.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 59.8 - * you write code that depends on this, you do so at your own risk. 59.9 + * <p><b>This is NOT part of any supported API. 59.10 + * If you write code that depends on this, you do so at your own risk. 59.11 * This code and its internal interfaces are subject to change or 59.12 * deletion without notice.</b> 59.13 */
60.1 --- a/src/share/classes/com/sun/tools/classfile/StackMap_attribute.java Thu Jun 17 16:28:21 2010 -0700 60.2 +++ b/src/share/classes/com/sun/tools/classfile/StackMap_attribute.java Mon Jun 21 22:09:18 2010 -0700 60.3 @@ -28,8 +28,8 @@ 60.4 import java.io.IOException; 60.5 60.6 /** 60.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 60.8 - * you write code that depends on this, you do so at your own risk. 60.9 + * <p><b>This is NOT part of any supported API. 60.10 + * If you write code that depends on this, you do so at your own risk. 60.11 * This code and its internal interfaces are subject to change or 60.12 * deletion without notice.</b> 60.13 */
61.1 --- a/src/share/classes/com/sun/tools/classfile/Synthetic_attribute.java Thu Jun 17 16:28:21 2010 -0700 61.2 +++ b/src/share/classes/com/sun/tools/classfile/Synthetic_attribute.java Mon Jun 21 22:09:18 2010 -0700 61.3 @@ -30,8 +30,8 @@ 61.4 /** 61.5 * See JVMS3, section 4.8.8. 61.6 * 61.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 61.8 - * you write code that depends on this, you do so at your own risk. 61.9 + * <p><b>This is NOT part of any supported API. 61.10 + * If you write code that depends on this, you do so at your own risk. 61.11 * This code and its internal interfaces are subject to change or 61.12 * deletion without notice.</b> 61.13 */
62.1 --- a/src/share/classes/com/sun/tools/classfile/Type.java Thu Jun 17 16:28:21 2010 -0700 62.2 +++ b/src/share/classes/com/sun/tools/classfile/Type.java Mon Jun 21 22:09:18 2010 -0700 62.3 @@ -34,8 +34,8 @@ 62.4 * Family of classes used to represent the parsed form of a {@link Descriptor} 62.5 * or {@link Signature}. 62.6 * 62.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 62.8 - * you write code that depends on this, you do so at your own risk. 62.9 + * <p><b>This is NOT part of any supported API. 62.10 + * If you write code that depends on this, you do so at your own risk. 62.11 * This code and its internal interfaces are subject to change or 62.12 * deletion without notice.</b> 62.13 */
63.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/package.html Thu Jun 17 16:28:21 2010 -0700 63.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/package.html Mon Jun 21 22:09:18 2010 -0700 63.3 @@ -28,8 +28,7 @@ 63.4 <title>com.sun.tools.doclets.formats.html package</title> 63.5 </head> 63.6 <body bgcolor="white"> 63.7 - This is the default doclet provided by doclet provided by 63.8 - Sun<font size="-2"><sup>TM</sup></font> that produces Javadoc's 63.9 + This is the default doclet provided with JDK that produces Javadoc's 63.10 default HTML-formatted API output. For more documentation 63.11 on this doclet, please refer to the link below. 63.12
64.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java Thu Jun 17 16:28:21 2010 -0700 64.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java Mon Jun 21 22:09:18 2010 -0700 64.3 @@ -92,44 +92,42 @@ 64.4 public abstract void build() throws IOException; 64.5 64.6 /** 64.7 - * Build the documentation, as specified by the given XML elements. 64.8 + * Build the documentation, as specified by the given XML element. 64.9 * 64.10 - * @param elements the XML elements that specify which components to 64.11 - * document. 64.12 + * @param node the XML element that specifies which component to document. 64.13 */ 64.14 - protected void build(List<?> elements) { 64.15 - for (int i = 0; i < elements.size(); i++ ) { 64.16 - Object element = elements.get(i); 64.17 - String component = (String) 64.18 - ((element instanceof String) ? 64.19 - element : 64.20 - ((List<?>) element).get(0)); 64.21 - try { 64.22 - invokeMethod("build" + component, 64.23 - element instanceof String ? 64.24 - new Class<?>[] {} : 64.25 - new Class<?>[] {List.class}, 64.26 - element instanceof String ? 64.27 - new Object[] {} : 64.28 - new Object[] {((List<?>) element).subList(1, 64.29 - ((List<?>) element).size())}); 64.30 - } catch (NoSuchMethodException e) { 64.31 - e.printStackTrace(); 64.32 - configuration.root.printError("Unknown element: " + component); 64.33 - throw new DocletAbortException(); 64.34 - } catch (InvocationTargetException e) { 64.35 - e.getCause().printStackTrace(); 64.36 - } catch (Exception e) { 64.37 - e.printStackTrace(); 64.38 - configuration.root.printError("Exception " + 64.39 - e.getClass().getName() + 64.40 - " thrown while processing element: " + component); 64.41 - throw new DocletAbortException(); 64.42 - } 64.43 + protected void build(XMLNode node) { 64.44 + String component = node.name; 64.45 + try { 64.46 + invokeMethod("build" + component, 64.47 + new Class<?>[] { XMLNode.class }, 64.48 + new Object[] { node }); 64.49 + } catch (NoSuchMethodException e) { 64.50 + e.printStackTrace(); 64.51 + configuration.root.printError("Unknown element: " + component); 64.52 + throw new DocletAbortException(); 64.53 + } catch (InvocationTargetException e) { 64.54 + e.getCause().printStackTrace(); 64.55 + } catch (Exception e) { 64.56 + e.printStackTrace(); 64.57 + configuration.root.printError("Exception " + 64.58 + e.getClass().getName() + 64.59 + " thrown while processing element: " + component); 64.60 + throw new DocletAbortException(); 64.61 } 64.62 } 64.63 64.64 /** 64.65 + * Build the documentation, as specified by the children of the given XML element. 64.66 + * 64.67 + * @param node the XML element that specifies which components to document. 64.68 + */ 64.69 + protected void buildChildren(XMLNode node) { 64.70 + for (XMLNode child: node.children) 64.71 + build(child); 64.72 + } 64.73 + 64.74 + /** 64.75 * Given the name and parameters, invoke the method in the builder. This 64.76 * method is required to invoke the appropriate build method as instructed 64.77 * by the builder XML file. 64.78 @@ -138,7 +136,14 @@ 64.79 * @param paramClasses the types for each parameter. 64.80 * @param params the parameters of the method. 64.81 */ 64.82 - protected abstract void invokeMethod(String methodName, Class<?>[] paramClasses, 64.83 + protected void invokeMethod(String methodName, Class<?>[] paramClasses, 64.84 Object[] params) 64.85 - throws Exception; 64.86 + throws Exception { 64.87 + if (DEBUG) { 64.88 + configuration.root.printError("DEBUG: " + this.getClass().getName() 64.89 + + "." + methodName); 64.90 + } 64.91 + Method method = this.getClass().getMethod(methodName, paramClasses); 64.92 + method.invoke(this, params); 64.93 + } 64.94 }
65.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractMemberBuilder.java Thu Jun 17 16:28:21 2010 -0700 65.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractMemberBuilder.java Mon Jun 21 22:09:18 2010 -0700 65.3 @@ -27,7 +27,6 @@ 65.4 65.5 import com.sun.tools.doclets.internal.toolkit.*; 65.6 import com.sun.tools.doclets.internal.toolkit.util.*; 65.7 -import java.util.*; 65.8 65.9 /** 65.10 * The superclass for all member builders. Member builders are only executed 65.11 @@ -69,9 +68,10 @@ 65.12 * 65.13 * @param elements {@inheritDoc} 65.14 */ 65.15 - public void build(List<?> elements) { 65.16 + @Override 65.17 + public void build(XMLNode node) { 65.18 if (hasMembersToDocument()) { 65.19 - super.build(elements); 65.20 + super.build(node); 65.21 } 65.22 } 65.23
66.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeBuilder.java Thu Jun 17 16:28:21 2010 -0700 66.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeBuilder.java Mon Jun 21 22:09:18 2010 -0700 66.3 @@ -30,7 +30,6 @@ 66.4 import com.sun.javadoc.*; 66.5 import java.io.*; 66.6 import java.util.*; 66.7 -import java.lang.reflect.*; 66.8 66.9 /** 66.10 * Builds the summary for a given annotation type. 66.11 @@ -92,20 +91,6 @@ 66.12 /** 66.13 * {@inheritDoc} 66.14 */ 66.15 - public void invokeMethod(String methodName, Class<?>[] paramClasses, 66.16 - Object[] params) 66.17 - throws Exception { 66.18 - if (DEBUG) { 66.19 - configuration.root.printError("DEBUG: " + this.getClass().getName() 66.20 - + "." + methodName); 66.21 - } 66.22 - Method method = this.getClass().getMethod(methodName, paramClasses); 66.23 - method.invoke(this, params); 66.24 - } 66.25 - 66.26 - /** 66.27 - * {@inheritDoc} 66.28 - */ 66.29 public void build() throws IOException { 66.30 build(LayoutParser.getInstance(configuration).parseXML(ROOT)); 66.31 } 66.32 @@ -122,8 +107,8 @@ 66.33 * 66.34 * @param elements the XML elements that specify how to document a class. 66.35 */ 66.36 - public void buildAnnotationTypeDoc(List<?> elements) throws Exception { 66.37 - build(elements); 66.38 + public void buildAnnotationTypeDoc(XMLNode node) throws Exception { 66.39 + buildChildren(node); 66.40 writer.close(); 66.41 copyDocFiles(); 66.42 } 66.43 @@ -154,7 +139,7 @@ 66.44 /** 66.45 * Build the header of the page. 66.46 */ 66.47 - public void buildAnnotationTypeHeader() { 66.48 + public void buildAnnotationTypeHeader(XMLNode node) { 66.49 writer.writeHeader(configuration.getText("doclet.AnnotationType") + 66.50 " " + annotationTypeDoc.name()); 66.51 } 66.52 @@ -162,14 +147,14 @@ 66.53 /** 66.54 * If this class is deprecated, print the appropriate information. 66.55 */ 66.56 - public void buildDeprecationInfo () { 66.57 + public void buildDeprecationInfo (XMLNode node) { 66.58 writer.writeAnnotationTypeDeprecationInfo(); 66.59 } 66.60 66.61 /** 66.62 * Build the signature of the current annotation type. 66.63 */ 66.64 - public void buildAnnotationTypeSignature() { 66.65 + public void buildAnnotationTypeSignature(XMLNode node) { 66.66 StringBuffer modifiers = new StringBuffer( 66.67 annotationTypeDoc.modifiers() + " "); 66.68 writer.writeAnnotationTypeSignature( 66.69 @@ -180,14 +165,14 @@ 66.70 /** 66.71 * Build the class description. 66.72 */ 66.73 - public void buildAnnotationTypeDescription() { 66.74 + public void buildAnnotationTypeDescription(XMLNode node) { 66.75 writer.writeAnnotationTypeDescription(); 66.76 } 66.77 66.78 /** 66.79 * Build the tag information for the current class. 66.80 */ 66.81 - public void buildAnnotationTypeTagInfo() { 66.82 + public void buildAnnotationTypeTagInfo(XMLNode node) { 66.83 writer.writeAnnotationTypeTagInfo(); 66.84 } 66.85 66.86 @@ -197,9 +182,9 @@ 66.87 * @param elements the XML elements that specify how a member summary is 66.88 * documented. 66.89 */ 66.90 - public void buildMemberSummary(List<?> elements) throws Exception { 66.91 + public void buildMemberSummary(XMLNode node) throws Exception { 66.92 configuration.getBuilderFactory(). 66.93 - getMemberSummaryBuilder(writer).build(elements); 66.94 + getMemberSummaryBuilder(writer).buildChildren(node); 66.95 writer.completeMemberSummaryBuild(); 66.96 } 66.97 66.98 @@ -209,10 +194,10 @@ 66.99 * @param elements the XML elements that specify how a annotation type 66.100 * members are documented. 66.101 */ 66.102 - public void buildAnnotationTypeOptionalMemberDetails(List<?> elements) 66.103 + public void buildAnnotationTypeOptionalMemberDetails(XMLNode node) 66.104 throws Exception { 66.105 configuration.getBuilderFactory(). 66.106 - getAnnotationTypeOptionalMemberBuilder(writer).build(elements); 66.107 + getAnnotationTypeOptionalMemberBuilder(writer).buildChildren(node); 66.108 } 66.109 66.110 /** 66.111 @@ -221,17 +206,17 @@ 66.112 * @param elements the XML elements that specify how a annotation type 66.113 * members are documented. 66.114 */ 66.115 - public void buildAnnotationTypeRequiredMemberDetails(List<?> elements) 66.116 + public void buildAnnotationTypeRequiredMemberDetails(XMLNode node) 66.117 throws Exception { 66.118 configuration.getBuilderFactory(). 66.119 - getAnnotationTypeRequiredMemberBuilder(writer).build(elements); 66.120 + getAnnotationTypeRequiredMemberBuilder(writer).buildChildren(node); 66.121 } 66.122 66.123 66.124 /** 66.125 * Build the footer of the page. 66.126 */ 66.127 - public void buildAnnotationTypeFooter() { 66.128 + public void buildAnnotationTypeFooter(XMLNode node) { 66.129 writer.writeFooter(); 66.130 } 66.131 }
67.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeOptionalMemberBuilder.java Thu Jun 17 16:28:21 2010 -0700 67.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeOptionalMemberBuilder.java Mon Jun 21 22:09:18 2010 -0700 67.3 @@ -30,7 +30,6 @@ 67.4 import com.sun.tools.doclets.internal.toolkit.*; 67.5 import com.sun.javadoc.*; 67.6 import java.util.*; 67.7 -import java.lang.reflect.*; 67.8 67.9 /** 67.10 * Builds documentation for optional annotation type members. 67.11 @@ -85,6 +84,7 @@ 67.12 /** 67.13 * {@inheritDoc} 67.14 */ 67.15 + @Override 67.16 public String getName() { 67.17 return "AnnotationTypeOptionalMemberDetails"; 67.18 } 67.19 @@ -95,34 +95,20 @@ 67.20 * @param elements the XML elements that specify how to construct this 67.21 * documentation. 67.22 */ 67.23 - public void buildAnnotationTypeOptionalMember(List<?> elements) { 67.24 + public void buildAnnotationTypeOptionalMember(XMLNode node) { 67.25 if (writer == null) { 67.26 return; 67.27 } 67.28 for (currentMemberIndex = 0; currentMemberIndex < members.size(); 67.29 currentMemberIndex++) { 67.30 - build(elements); 67.31 + buildChildren(node); 67.32 } 67.33 } 67.34 67.35 /** 67.36 - * {@inheritDoc} 67.37 - */ 67.38 - public void invokeMethod(String methodName, Class<?>[] paramClasses, 67.39 - Object[] params) 67.40 - throws Exception { 67.41 - if (DEBUG) { 67.42 - configuration.root.printError("DEBUG: " + this.getClass().getName() 67.43 - + "." + methodName); 67.44 - } 67.45 - Method method = this.getClass().getMethod(methodName, paramClasses); 67.46 - method.invoke(this, params); 67.47 - } 67.48 - 67.49 - /** 67.50 * Document the default value for this optional member. 67.51 */ 67.52 - public void buildDefaultValueInfo() { 67.53 + public void buildDefaultValueInfo(XMLNode node) { 67.54 ((AnnotationTypeOptionalMemberWriter) writer).writeDefaultValueInfo( 67.55 (MemberDoc) members.get(currentMemberIndex)); 67.56 } 67.57 @@ -130,6 +116,7 @@ 67.58 /** 67.59 * {@inheritDoc} 67.60 */ 67.61 + @Override 67.62 public AnnotationTypeRequiredMemberWriter getWriter() { 67.63 return writer; 67.64 }
68.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java Thu Jun 17 16:28:21 2010 -0700 68.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java Mon Jun 21 22:09:18 2010 -0700 68.3 @@ -30,7 +30,6 @@ 68.4 import com.sun.tools.doclets.internal.toolkit.*; 68.5 import com.sun.javadoc.*; 68.6 import java.util.*; 68.7 -import java.lang.reflect.*; 68.8 68.9 /** 68.10 * Builds documentation for required annotation type members. 68.11 @@ -114,20 +113,6 @@ 68.12 } 68.13 68.14 /** 68.15 - * {@inheritDoc} 68.16 - */ 68.17 - public void invokeMethod(String methodName, Class<?>[] paramClasses, 68.18 - Object[] params) 68.19 - throws Exception { 68.20 - if (DEBUG) { 68.21 - configuration.root.printError("DEBUG: " + this.getClass().getName() 68.22 - + "." + methodName); 68.23 - } 68.24 - Method method = this.getClass().getMethod(methodName, paramClasses); 68.25 - method.invoke(this, params); 68.26 - } 68.27 - 68.28 - /** 68.29 * Returns a list of members that will be documented for the given class. 68.30 * This information can be used for doclet specific documentation 68.31 * generation. 68.32 @@ -161,20 +146,20 @@ 68.33 * @param elements the XML elements that specify how to construct this 68.34 * documentation. 68.35 */ 68.36 - public void buildAnnotationTypeRequiredMember(List<?> elements) { 68.37 + public void buildAnnotationTypeRequiredMember(XMLNode node) { 68.38 if (writer == null) { 68.39 return; 68.40 } 68.41 for (currentMemberIndex = 0; currentMemberIndex < members.size(); 68.42 currentMemberIndex++) { 68.43 - build(elements); 68.44 + buildChildren(node); 68.45 } 68.46 } 68.47 68.48 /** 68.49 * Build the overall header. 68.50 */ 68.51 - public void buildHeader() { 68.52 + public void buildHeader(XMLNode node) { 68.53 writer.writeHeader(classDoc, 68.54 configuration.getText("doclet.Annotation_Type_Member_Detail")); 68.55 } 68.56 @@ -182,7 +167,7 @@ 68.57 /** 68.58 * Build the header for the individual members. 68.59 */ 68.60 - public void buildMemberHeader() { 68.61 + public void buildMemberHeader(XMLNode node) { 68.62 writer.writeMemberHeader((MemberDoc) members.get( 68.63 currentMemberIndex), 68.64 currentMemberIndex == 0); 68.65 @@ -191,14 +176,14 @@ 68.66 /** 68.67 * Build the signature. 68.68 */ 68.69 - public void buildSignature() { 68.70 + public void buildSignature(XMLNode node) { 68.71 writer.writeSignature((MemberDoc) members.get(currentMemberIndex)); 68.72 } 68.73 68.74 /** 68.75 * Build the deprecation information. 68.76 */ 68.77 - public void buildDeprecationInfo() { 68.78 + public void buildDeprecationInfo(XMLNode node) { 68.79 writer.writeDeprecated((MemberDoc) members.get(currentMemberIndex)); 68.80 } 68.81 68.82 @@ -206,7 +191,7 @@ 68.83 * Build the comments for the member. Do nothing if 68.84 * {@link Configuration#nocomment} is set to true. 68.85 */ 68.86 - public void buildMemberComments() { 68.87 + public void buildMemberComments(XMLNode node) { 68.88 if(! configuration.nocomment){ 68.89 writer.writeComments((MemberDoc) members.get(currentMemberIndex)); 68.90 } 68.91 @@ -215,21 +200,21 @@ 68.92 /** 68.93 * Build the tag information. 68.94 */ 68.95 - public void buildTagInfo() { 68.96 + public void buildTagInfo(XMLNode node) { 68.97 writer.writeTags((MemberDoc) members.get(currentMemberIndex)); 68.98 } 68.99 68.100 /** 68.101 * Build the footer for the individual member. 68.102 */ 68.103 - public void buildMemberFooter() { 68.104 + public void buildMemberFooter(XMLNode node) { 68.105 writer.writeMemberFooter(); 68.106 } 68.107 68.108 /** 68.109 * Build the overall footer. 68.110 */ 68.111 - public void buildFooter() { 68.112 + public void buildFooter(XMLNode node) { 68.113 writer.writeFooter(classDoc); 68.114 } 68.115
69.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ClassBuilder.java Thu Jun 17 16:28:21 2010 -0700 69.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ClassBuilder.java Mon Jun 21 22:09:18 2010 -0700 69.3 @@ -30,7 +30,6 @@ 69.4 import com.sun.javadoc.*; 69.5 import java.io.*; 69.6 import java.util.*; 69.7 -import java.lang.reflect.*; 69.8 69.9 /** 69.10 * Builds the summary for a given class. 69.11 @@ -108,20 +107,6 @@ 69.12 /** 69.13 * {@inheritDoc} 69.14 */ 69.15 - public void invokeMethod(String methodName, Class<?>[] paramClasses, 69.16 - Object[] params) 69.17 - throws Exception { 69.18 - if (DEBUG) { 69.19 - configuration.root.printError("DEBUG: " + this.getClass().getName() 69.20 - + "." + methodName); 69.21 - } 69.22 - Method method = this.getClass().getMethod(methodName, paramClasses); 69.23 - method.invoke(this, params); 69.24 - } 69.25 - 69.26 - /** 69.27 - * {@inheritDoc} 69.28 - */ 69.29 public void build() throws IOException { 69.30 build(LayoutParser.getInstance(configuration).parseXML(ROOT)); 69.31 } 69.32 @@ -138,8 +123,8 @@ 69.33 * 69.34 * @param elements the XML elements that specify how to document a class. 69.35 */ 69.36 - public void buildClassDoc(List<?> elements) throws Exception { 69.37 - build(elements); 69.38 + public void buildClassDoc(XMLNode node) throws Exception { 69.39 + buildChildren(node); 69.40 writer.close(); 69.41 copyDocFiles(); 69.42 } 69.43 @@ -169,7 +154,7 @@ 69.44 /** 69.45 * Build the header of the page. 69.46 */ 69.47 - public void buildClassHeader() { 69.48 + public void buildClassHeader(XMLNode node) { 69.49 String key; 69.50 if (isInterface) { 69.51 key = "doclet.Interface"; 69.52 @@ -185,7 +170,7 @@ 69.53 /** 69.54 * Build the class tree documentation. 69.55 */ 69.56 - public void buildClassTree() { 69.57 + public void buildClassTree(XMLNode node) { 69.58 writer.writeClassTree(); 69.59 } 69.60 69.61 @@ -193,42 +178,42 @@ 69.62 * If this is a class, list all interfaces 69.63 * implemented by this class. 69.64 */ 69.65 - public void buildImplementedInterfacesInfo() { 69.66 + public void buildImplementedInterfacesInfo(XMLNode node) { 69.67 writer.writeImplementedInterfacesInfo(); 69.68 } 69.69 69.70 /** 69.71 * If this is an interface, list all super interfaces. 69.72 */ 69.73 - public void buildSuperInterfacesInfo() { 69.74 + public void buildSuperInterfacesInfo(XMLNode node) { 69.75 writer.writeSuperInterfacesInfo(); 69.76 } 69.77 69.78 /** 69.79 * List the parameters of this class. 69.80 */ 69.81 - public void buildTypeParamInfo() { 69.82 + public void buildTypeParamInfo(XMLNode node) { 69.83 writer.writeTypeParamInfo(); 69.84 } 69.85 69.86 /** 69.87 * List all the classes extend this one. 69.88 */ 69.89 - public void buildSubClassInfo() { 69.90 + public void buildSubClassInfo(XMLNode node) { 69.91 writer.writeSubClassInfo(); 69.92 } 69.93 69.94 /** 69.95 * List all the interfaces that extend this one. 69.96 */ 69.97 - public void buildSubInterfacesInfo() { 69.98 + public void buildSubInterfacesInfo(XMLNode node) { 69.99 writer.writeSubInterfacesInfo(); 69.100 } 69.101 69.102 /** 69.103 * If this is an interface, list all classes that implement this interface. 69.104 */ 69.105 - public void buildInterfaceUsageInfo () { 69.106 + public void buildInterfaceUsageInfo (XMLNode node) { 69.107 writer.writeInterfaceUsageInfo(); 69.108 } 69.109 69.110 @@ -236,21 +221,21 @@ 69.111 * If this is an inner class or interface, list the enclosing class or 69.112 * interface. 69.113 */ 69.114 - public void buildNestedClassInfo () { 69.115 + public void buildNestedClassInfo (XMLNode node) { 69.116 writer.writeNestedClassInfo(); 69.117 } 69.118 69.119 /** 69.120 * If this class is deprecated, print the appropriate information. 69.121 */ 69.122 - public void buildDeprecationInfo () { 69.123 + public void buildDeprecationInfo (XMLNode node) { 69.124 writer.writeClassDeprecationInfo(); 69.125 } 69.126 69.127 /** 69.128 * Build the signature of the current class. 69.129 */ 69.130 - public void buildClassSignature() { 69.131 + public void buildClassSignature(XMLNode node) { 69.132 StringBuffer modifiers = new StringBuffer(classDoc.modifiers() + " "); 69.133 if (isEnum) { 69.134 modifiers.append("enum "); 69.135 @@ -276,14 +261,14 @@ 69.136 /** 69.137 * Build the class description. 69.138 */ 69.139 - public void buildClassDescription() { 69.140 + public void buildClassDescription(XMLNode node) { 69.141 writer.writeClassDescription(); 69.142 } 69.143 69.144 /** 69.145 * Build the tag information for the current class. 69.146 */ 69.147 - public void buildClassTagInfo() { 69.148 + public void buildClassTagInfo(XMLNode node) { 69.149 writer.writeClassTagInfo(); 69.150 } 69.151 69.152 @@ -293,9 +278,9 @@ 69.153 * @param elements the XML elements that specify how a member summary is 69.154 * documented. 69.155 */ 69.156 - public void buildMemberSummary(List<?> elements) throws Exception { 69.157 + public void buildMemberSummary(XMLNode node) throws Exception { 69.158 configuration.getBuilderFactory(). 69.159 - getMemberSummaryBuilder(writer).build(elements); 69.160 + getMemberSummaryBuilder(writer).buildChildren(node); 69.161 writer.completeMemberSummaryBuild(); 69.162 } 69.163 69.164 @@ -305,9 +290,9 @@ 69.165 * @param elements the XML elements that specify how a enum constants are 69.166 * documented. 69.167 */ 69.168 - public void buildEnumConstantsDetails(List<?> elements) throws Exception { 69.169 + public void buildEnumConstantsDetails(XMLNode node) throws Exception { 69.170 configuration.getBuilderFactory(). 69.171 - getEnumConstantsBuilder(writer).build(elements); 69.172 + getEnumConstantsBuilder(writer).buildChildren(node); 69.173 } 69.174 69.175 /** 69.176 @@ -315,9 +300,9 @@ 69.177 * 69.178 * @param elements the XML elements that specify how a field is documented. 69.179 */ 69.180 - public void buildFieldDetails(List<?> elements) throws Exception { 69.181 + public void buildFieldDetails(XMLNode node) throws Exception { 69.182 configuration.getBuilderFactory(). 69.183 - getFieldBuilder(writer).build(elements); 69.184 + getFieldBuilder(writer).buildChildren(node); 69.185 } 69.186 69.187 /** 69.188 @@ -326,9 +311,9 @@ 69.189 * @param elements the XML elements that specify how to document a 69.190 * constructor. 69.191 */ 69.192 - public void buildConstructorDetails(List<?> elements) throws Exception { 69.193 + public void buildConstructorDetails(XMLNode node) throws Exception { 69.194 configuration.getBuilderFactory(). 69.195 - getConstructorBuilder(writer).build(elements); 69.196 + getConstructorBuilder(writer).buildChildren(node); 69.197 } 69.198 69.199 /** 69.200 @@ -336,15 +321,15 @@ 69.201 * 69.202 * @param elements the XML elements that specify how a method is documented. 69.203 */ 69.204 - public void buildMethodDetails(List<?> elements) throws Exception { 69.205 + public void buildMethodDetails(XMLNode node) throws Exception { 69.206 configuration.getBuilderFactory(). 69.207 - getMethodBuilder(writer).build(elements); 69.208 + getMethodBuilder(writer).buildChildren(node); 69.209 } 69.210 69.211 /** 69.212 * Build the footer of the page. 69.213 */ 69.214 - public void buildClassFooter() { 69.215 + public void buildClassFooter(XMLNode node) { 69.216 writer.writeFooter(); 69.217 } 69.218 }
70.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstantsSummaryBuilder.java Thu Jun 17 16:28:21 2010 -0700 70.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstantsSummaryBuilder.java Mon Jun 21 22:09:18 2010 -0700 70.3 @@ -30,7 +30,6 @@ 70.4 import com.sun.javadoc.*; 70.5 import java.io.*; 70.6 import java.util.*; 70.7 -import java.lang.reflect.*; 70.8 70.9 /** 70.10 * Builds the Constants Summary Page. 70.11 @@ -109,20 +108,6 @@ 70.12 /** 70.13 * {@inheritDoc} 70.14 */ 70.15 - public void invokeMethod(String methodName, Class<?>[] paramClasses, 70.16 - Object[] params) 70.17 - throws Exception { 70.18 - if (DEBUG) { 70.19 - configuration.root.printError("DEBUG: " + this.getClass().getName() 70.20 - + "." + methodName); 70.21 - } 70.22 - Method method = this.getClass().getMethod(methodName, paramClasses); 70.23 - method.invoke(this, params); 70.24 - } 70.25 - 70.26 - /** 70.27 - * {@inheritDoc} 70.28 - */ 70.29 public void build() throws IOException { 70.30 if (writer == null) { 70.31 //Doclet does not support this output. 70.32 @@ -144,29 +129,29 @@ 70.33 * @param elements the list of elements describing constant summary 70.34 * documentation. 70.35 */ 70.36 - public void buildConstantSummary(List<?> elements) throws Exception { 70.37 - build(elements); 70.38 + public void buildConstantSummary(XMLNode node) throws Exception { 70.39 + buildChildren(node); 70.40 writer.close(); 70.41 } 70.42 70.43 /** 70.44 * Build the header. 70.45 */ 70.46 - public void buildHeader() { 70.47 + public void buildHeader(XMLNode node) { 70.48 writer.writeHeader(); 70.49 } 70.50 70.51 /** 70.52 * Build the footer. 70.53 */ 70.54 - public void buildFooter() { 70.55 + public void buildFooter(XMLNode node) { 70.56 writer.writeFooter(); 70.57 } 70.58 70.59 /** 70.60 * Build the table of contents. 70.61 */ 70.62 - public void buildContents() { 70.63 + public void buildContents(XMLNode node) { 70.64 writer.writeContentsHeader(); 70.65 PackageDoc[] packages = configuration.packages; 70.66 printedPackageHeaders = new HashSet<String>(); 70.67 @@ -186,14 +171,14 @@ 70.68 * @param elements the XML elements that represent the components 70.69 * of documentation for each package. 70.70 */ 70.71 - public void buildConstantSummaries(List<?> elements) { 70.72 + public void buildConstantSummaries(XMLNode node) { 70.73 PackageDoc[] packages = configuration.packages; 70.74 printedPackageHeaders = new HashSet<String>(); 70.75 for (int i = 0; i < packages.length; i++) { 70.76 if (hasConstantField(packages[i])) { 70.77 currentPackage = packages[i]; 70.78 //Build the documentation for the current package. 70.79 - build(elements); 70.80 + buildChildren(node); 70.81 } 70.82 } 70.83 } 70.84 @@ -204,8 +189,8 @@ 70.85 * @param elements the list of XML elements that make up package 70.86 * documentation. 70.87 */ 70.88 - public void buildPackageConstantSummary(List<?> elements) { 70.89 - build(elements); 70.90 + public void buildPackageConstantSummary(XMLNode node) { 70.91 + buildChildren(node); 70.92 } 70.93 70.94 /** 70.95 @@ -214,7 +199,7 @@ 70.96 * @param elements the list of XML elements that make up the class 70.97 * constant summary. 70.98 */ 70.99 - public void buildClassConstantSummary(List<?> elements) { 70.100 + public void buildClassConstantSummary(XMLNode node) { 70.101 ClassDoc[] classes = currentPackage.name().length() > 0 ? 70.102 currentPackage.allClasses() : 70.103 configuration.classDocCatalog.allClasses( 70.104 @@ -227,14 +212,14 @@ 70.105 } 70.106 currentClass = classes[i]; 70.107 //Build the documentation for the current class. 70.108 - build(elements); 70.109 + buildChildren(node); 70.110 } 70.111 } 70.112 70.113 /** 70.114 * Build the header for the given class. 70.115 */ 70.116 - public void buildPackageHeader() { 70.117 + public void buildPackageHeader(XMLNode node) { 70.118 String parsedPackageName = parsePackageName(currentPackage.name()); 70.119 if (! printedPackageHeaders.contains(parsedPackageName)) { 70.120 writer.writePackageName(currentPackage, 70.121 @@ -246,7 +231,7 @@ 70.122 /** 70.123 * Build the header for the given class. 70.124 */ 70.125 - public void buildClassHeader() { 70.126 + public void buildClassHeader(XMLNode node) { 70.127 writer.writeConstantMembersHeader(currentClass); 70.128 } 70.129 70.130 @@ -254,14 +239,14 @@ 70.131 * Print summary of constant members in the 70.132 * class. 70.133 */ 70.134 - public void buildConstantMembers() { 70.135 - new ConstantFieldBuilder(currentClass).buildMembersSummary(); 70.136 + public void buildConstantMembers(XMLNode node) { 70.137 + new ConstantFieldBuilder(currentClass).buildMembersSummary(node); 70.138 } 70.139 70.140 /** 70.141 * Build the footer for the given class. 70.142 */ 70.143 - public void buildClassFooter() { 70.144 + public void buildClassFooter(XMLNode node) { 70.145 writer.writeConstantMembersFooter(currentClass); 70.146 } 70.147 70.148 @@ -362,7 +347,7 @@ 70.149 /** 70.150 * Builds the table of constants for a given class. 70.151 */ 70.152 - protected void buildMembersSummary() { 70.153 + protected void buildMembersSummary(XMLNode node) { 70.154 List<FieldDoc> members = new ArrayList<FieldDoc>(members()); 70.155 if (members.size() > 0) { 70.156 Collections.sort(members);
71.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstructorBuilder.java Thu Jun 17 16:28:21 2010 -0700 71.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstructorBuilder.java Mon Jun 21 22:09:18 2010 -0700 71.3 @@ -28,7 +28,6 @@ 71.4 import com.sun.tools.doclets.internal.toolkit.util.*; 71.5 import com.sun.tools.doclets.internal.toolkit.*; 71.6 import com.sun.javadoc.*; 71.7 -import java.lang.reflect.*; 71.8 import java.util.*; 71.9 71.10 /** 71.11 @@ -134,22 +133,6 @@ 71.12 } 71.13 71.14 /** 71.15 - * {@inheritDoc} 71.16 - */ 71.17 - public void invokeMethod( 71.18 - String methodName, 71.19 - Class<?>[] paramClasses, 71.20 - Object[] params) 71.21 - throws Exception { 71.22 - if (DEBUG) { 71.23 - configuration.root.printError( 71.24 - "DEBUG: " + this.getClass().getName() + "." + methodName); 71.25 - } 71.26 - Method method = this.getClass().getMethod(methodName, paramClasses); 71.27 - method.invoke(this, params); 71.28 - } 71.29 - 71.30 - /** 71.31 * Returns a list of constructors that will be documented for the given class. 71.32 * This information can be used for doclet specific documentation 71.33 * generation. 71.34 @@ -175,21 +158,21 @@ 71.35 * @param elements the XML elements that specify how to construct this 71.36 * documentation. 71.37 */ 71.38 - public void buildConstructorDoc(List<?> elements) { 71.39 + public void buildConstructorDoc(XMLNode node) { 71.40 if (writer == null) { 71.41 return; 71.42 } 71.43 for (currentMethodIndex = 0; 71.44 currentMethodIndex < constructors.size(); 71.45 currentMethodIndex++) { 71.46 - build(elements); 71.47 + buildChildren(node); 71.48 } 71.49 } 71.50 71.51 /** 71.52 * Build the overall header. 71.53 */ 71.54 - public void buildHeader() { 71.55 + public void buildHeader(XMLNode node) { 71.56 writer.writeHeader( 71.57 classDoc, 71.58 configuration.getText("doclet.Constructor_Detail")); 71.59 @@ -198,7 +181,7 @@ 71.60 /** 71.61 * Build the header for the individual constructor. 71.62 */ 71.63 - public void buildConstructorHeader() { 71.64 + public void buildConstructorHeader(XMLNode node) { 71.65 writer.writeConstructorHeader( 71.66 (ConstructorDoc) constructors.get(currentMethodIndex), 71.67 currentMethodIndex == 0); 71.68 @@ -207,7 +190,7 @@ 71.69 /** 71.70 * Build the signature. 71.71 */ 71.72 - public void buildSignature() { 71.73 + public void buildSignature(XMLNode node) { 71.74 writer.writeSignature( 71.75 (ConstructorDoc) constructors.get(currentMethodIndex)); 71.76 } 71.77 @@ -215,7 +198,7 @@ 71.78 /** 71.79 * Build the deprecation information. 71.80 */ 71.81 - public void buildDeprecationInfo() { 71.82 + public void buildDeprecationInfo(XMLNode node) { 71.83 writer.writeDeprecated( 71.84 (ConstructorDoc) constructors.get(currentMethodIndex)); 71.85 } 71.86 @@ -224,7 +207,7 @@ 71.87 * Build the comments for the constructor. Do nothing if 71.88 * {@link Configuration#nocomment} is set to true. 71.89 */ 71.90 - public void buildConstructorComments() { 71.91 + public void buildConstructorComments(XMLNode node) { 71.92 if (!configuration.nocomment) { 71.93 writer.writeComments( 71.94 (ConstructorDoc) constructors.get(currentMethodIndex)); 71.95 @@ -234,21 +217,21 @@ 71.96 /** 71.97 * Build the tag information. 71.98 */ 71.99 - public void buildTagInfo() { 71.100 + public void buildTagInfo(XMLNode node) { 71.101 writer.writeTags((ConstructorDoc) constructors.get(currentMethodIndex)); 71.102 } 71.103 71.104 /** 71.105 * Build the footer for the individual constructor. 71.106 */ 71.107 - public void buildConstructorFooter() { 71.108 + public void buildConstructorFooter(XMLNode node) { 71.109 writer.writeConstructorFooter(); 71.110 } 71.111 71.112 /** 71.113 * Build the overall footer. 71.114 */ 71.115 - public void buildFooter() { 71.116 + public void buildFooter(XMLNode node) { 71.117 writer.writeFooter(classDoc); 71.118 } 71.119 }
72.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/EnumConstantBuilder.java Thu Jun 17 16:28:21 2010 -0700 72.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/EnumConstantBuilder.java Mon Jun 21 22:09:18 2010 -0700 72.3 @@ -29,7 +29,6 @@ 72.4 import com.sun.tools.doclets.internal.toolkit.*; 72.5 import com.sun.javadoc.*; 72.6 import java.util.*; 72.7 -import java.lang.reflect.*; 72.8 72.9 /** 72.10 * Builds documentation for a enum constants. 72.11 @@ -116,22 +115,6 @@ 72.12 } 72.13 72.14 /** 72.15 - * {@inheritDoc} 72.16 - */ 72.17 - public void invokeMethod( 72.18 - String methodName, 72.19 - Class<?>[] paramClasses, 72.20 - Object[] params) 72.21 - throws Exception { 72.22 - if (DEBUG) { 72.23 - configuration.root.printError( 72.24 - "DEBUG: " + this.getClass().getName() + "." + methodName); 72.25 - } 72.26 - Method method = this.getClass().getMethod(methodName, paramClasses); 72.27 - method.invoke(this, params); 72.28 - } 72.29 - 72.30 - /** 72.31 * Returns a list of enum constants that will be documented for the given class. 72.32 * This information can be used for doclet specific documentation 72.33 * generation. 72.34 @@ -165,21 +148,21 @@ 72.35 * @param elements the XML elements that specify how to construct this 72.36 * documentation. 72.37 */ 72.38 - public void buildEnumConstant(List<?> elements) { 72.39 + public void buildEnumConstant(XMLNode node) { 72.40 if (writer == null) { 72.41 return; 72.42 } 72.43 for (currentEnumConstantsIndex = 0; 72.44 currentEnumConstantsIndex < enumConstants.size(); 72.45 currentEnumConstantsIndex++) { 72.46 - build(elements); 72.47 + buildChildren(node); 72.48 } 72.49 } 72.50 72.51 /** 72.52 * Build the overall header. 72.53 */ 72.54 - public void buildHeader() { 72.55 + public void buildHeader(XMLNode node) { 72.56 writer.writeHeader( 72.57 classDoc, 72.58 configuration.getText("doclet.Enum_Constant_Detail")); 72.59 @@ -188,7 +171,7 @@ 72.60 /** 72.61 * Build the header for the individual enum constants. 72.62 */ 72.63 - public void buildEnumConstantHeader() { 72.64 + public void buildEnumConstantHeader(XMLNode node) { 72.65 writer.writeEnumConstantHeader( 72.66 (FieldDoc) enumConstants.get(currentEnumConstantsIndex), 72.67 currentEnumConstantsIndex == 0); 72.68 @@ -197,7 +180,7 @@ 72.69 /** 72.70 * Build the signature. 72.71 */ 72.72 - public void buildSignature() { 72.73 + public void buildSignature(XMLNode node) { 72.74 writer.writeSignature( 72.75 (FieldDoc) enumConstants.get(currentEnumConstantsIndex)); 72.76 } 72.77 @@ -205,7 +188,7 @@ 72.78 /** 72.79 * Build the deprecation information. 72.80 */ 72.81 - public void buildDeprecationInfo() { 72.82 + public void buildDeprecationInfo(XMLNode node) { 72.83 writer.writeDeprecated( 72.84 (FieldDoc) enumConstants.get(currentEnumConstantsIndex)); 72.85 } 72.86 @@ -214,7 +197,7 @@ 72.87 * Build the comments for the enum constant. Do nothing if 72.88 * {@link Configuration#nocomment} is set to true. 72.89 */ 72.90 - public void buildEnumConstantComments() { 72.91 + public void buildEnumConstantComments(XMLNode node) { 72.92 if (!configuration.nocomment) { 72.93 writer.writeComments( 72.94 (FieldDoc) enumConstants.get(currentEnumConstantsIndex)); 72.95 @@ -224,7 +207,7 @@ 72.96 /** 72.97 * Build the tag information. 72.98 */ 72.99 - public void buildTagInfo() { 72.100 + public void buildTagInfo(XMLNode node) { 72.101 writer.writeTags( 72.102 (FieldDoc) enumConstants.get(currentEnumConstantsIndex)); 72.103 } 72.104 @@ -232,14 +215,14 @@ 72.105 /** 72.106 * Build the footer for the individual enum constants. 72.107 */ 72.108 - public void buildEnumConstantFooter() { 72.109 + public void buildEnumConstantFooter(XMLNode node) { 72.110 writer.writeEnumConstantFooter(); 72.111 } 72.112 72.113 /** 72.114 * Build the overall footer. 72.115 */ 72.116 - public void buildFooter() { 72.117 + public void buildFooter(XMLNode node) { 72.118 writer.writeFooter(classDoc); 72.119 } 72.120
73.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/FieldBuilder.java Thu Jun 17 16:28:21 2010 -0700 73.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/FieldBuilder.java Mon Jun 21 22:09:18 2010 -0700 73.3 @@ -29,7 +29,6 @@ 73.4 import com.sun.tools.doclets.internal.toolkit.*; 73.5 import com.sun.javadoc.*; 73.6 import java.util.*; 73.7 -import java.lang.reflect.*; 73.8 73.9 /** 73.10 * Builds documentation for a field. 73.11 @@ -117,22 +116,6 @@ 73.12 } 73.13 73.14 /** 73.15 - * {@inheritDoc} 73.16 - */ 73.17 - public void invokeMethod( 73.18 - String methodName, 73.19 - Class<?>[] paramClasses, 73.20 - Object[] params) 73.21 - throws Exception { 73.22 - if (DEBUG) { 73.23 - configuration.root.printError( 73.24 - "DEBUG: " + this.getClass().getName() + "." + methodName); 73.25 - } 73.26 - Method method = this.getClass().getMethod(methodName, paramClasses); 73.27 - method.invoke(this, params); 73.28 - } 73.29 - 73.30 - /** 73.31 * Returns a list of fields that will be documented for the given class. 73.32 * This information can be used for doclet specific documentation 73.33 * generation. 73.34 @@ -166,21 +149,21 @@ 73.35 * @param elements the XML elements that specify how to construct this 73.36 * documentation. 73.37 */ 73.38 - public void buildFieldDoc(List<?> elements) { 73.39 + public void buildFieldDoc(XMLNode node) { 73.40 if (writer == null) { 73.41 return; 73.42 } 73.43 for (currentFieldIndex = 0; 73.44 currentFieldIndex < fields.size(); 73.45 currentFieldIndex++) { 73.46 - build(elements); 73.47 + buildChildren(node); 73.48 } 73.49 } 73.50 73.51 /** 73.52 * Build the overall header. 73.53 */ 73.54 - public void buildHeader() { 73.55 + public void buildHeader(XMLNode node) { 73.56 writer.writeHeader( 73.57 classDoc, 73.58 configuration.getText("doclet.Field_Detail")); 73.59 @@ -189,7 +172,7 @@ 73.60 /** 73.61 * Build the header for the individual field. 73.62 */ 73.63 - public void buildFieldHeader() { 73.64 + public void buildFieldHeader(XMLNode node) { 73.65 writer.writeFieldHeader( 73.66 (FieldDoc) fields.get(currentFieldIndex), 73.67 currentFieldIndex == 0); 73.68 @@ -198,14 +181,14 @@ 73.69 /** 73.70 * Build the signature. 73.71 */ 73.72 - public void buildSignature() { 73.73 + public void buildSignature(XMLNode node) { 73.74 writer.writeSignature((FieldDoc) fields.get(currentFieldIndex)); 73.75 } 73.76 73.77 /** 73.78 * Build the deprecation information. 73.79 */ 73.80 - public void buildDeprecationInfo() { 73.81 + public void buildDeprecationInfo(XMLNode node) { 73.82 writer.writeDeprecated((FieldDoc) fields.get(currentFieldIndex)); 73.83 } 73.84 73.85 @@ -213,7 +196,7 @@ 73.86 * Build the comments for the field. Do nothing if 73.87 * {@link Configuration#nocomment} is set to true. 73.88 */ 73.89 - public void buildFieldComments() { 73.90 + public void buildFieldComments(XMLNode node) { 73.91 if (!configuration.nocomment) { 73.92 writer.writeComments((FieldDoc) fields.get(currentFieldIndex)); 73.93 } 73.94 @@ -222,21 +205,21 @@ 73.95 /** 73.96 * Build the tag information. 73.97 */ 73.98 - public void buildTagInfo() { 73.99 + public void buildTagInfo(XMLNode node) { 73.100 writer.writeTags((FieldDoc) fields.get(currentFieldIndex)); 73.101 } 73.102 73.103 /** 73.104 * Build the footer for the individual field. 73.105 */ 73.106 - public void buildFieldFooter() { 73.107 + public void buildFieldFooter(XMLNode node) { 73.108 writer.writeFieldFooter(); 73.109 } 73.110 73.111 /** 73.112 * Build the overall footer. 73.113 */ 73.114 - public void buildFooter() { 73.115 + public void buildFooter(XMLNode node) { 73.116 writer.writeFooter(classDoc); 73.117 } 73.118
74.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/LayoutParser.java Thu Jun 17 16:28:21 2010 -0700 74.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/LayoutParser.java Mon Jun 21 22:09:18 2010 -0700 74.3 @@ -45,8 +45,8 @@ 74.4 /** 74.5 * The map of XML elements that have been parsed. 74.6 */ 74.7 - private Map<String,List<Object>> xmlElementsMap; 74.8 - 74.9 + private Map<String,XMLNode> xmlElementsMap; 74.10 + private XMLNode currentNode; 74.11 private Configuration configuration; 74.12 private static LayoutParser instance; 74.13 private String currentRoot; 74.14 @@ -56,7 +56,7 @@ 74.15 * This class is a singleton. 74.16 */ 74.17 private LayoutParser(Configuration configuration) { 74.18 - xmlElementsMap = new HashMap<String,List<Object>>(); 74.19 + xmlElementsMap = new HashMap<String,XMLNode>(); 74.20 this.configuration = configuration; 74.21 } 74.22 74.23 @@ -78,20 +78,18 @@ 74.24 * 74.25 * @return List the list of XML elements parsed. 74.26 */ 74.27 - public List<?> parseXML(String root) { 74.28 + public XMLNode parseXML(String root) { 74.29 if (xmlElementsMap.containsKey(root)) { 74.30 return xmlElementsMap.get(root); 74.31 } 74.32 try { 74.33 - List<Object> xmlElements = new ArrayList<Object>(); 74.34 - xmlElementsMap.put(root, xmlElements); 74.35 currentRoot = root; 74.36 isParsing = false; 74.37 SAXParserFactory factory = SAXParserFactory.newInstance(); 74.38 SAXParser saxParser = factory.newSAXParser(); 74.39 InputStream in = configuration.getBuilderXML(); 74.40 saxParser.parse(in, this); 74.41 - return xmlElements; 74.42 + return xmlElementsMap.get(root); 74.43 } catch (Throwable t) { 74.44 t.printStackTrace(); 74.45 throw new DocletAbortException(); 74.46 @@ -101,39 +99,30 @@ 74.47 /** 74.48 * {@inheritDoc} 74.49 */ 74.50 + @Override 74.51 public void startElement(String namespaceURI, String sName, String qName, 74.52 Attributes attrs) 74.53 throws SAXException { 74.54 if (isParsing || qName.equals(currentRoot)) { 74.55 isParsing = true; 74.56 - List<Object> xmlElements = xmlElementsMap.get(currentRoot); 74.57 - xmlElements.add(qName); 74.58 + currentNode = new XMLNode(currentNode, qName); 74.59 + for (int i = 0; i < attrs.getLength(); i++) 74.60 + currentNode.attrs.put(attrs.getLocalName(i), attrs.getValue(i)); 74.61 + if (qName.equals(currentRoot)) 74.62 + xmlElementsMap.put(qName, currentNode); 74.63 } 74.64 } 74.65 74.66 /** 74.67 * {@inheritDoc} 74.68 */ 74.69 + @Override 74.70 public void endElement(String namespaceURI, String sName, String qName) 74.71 throws SAXException { 74.72 if (! isParsing) { 74.73 - isParsing = false; 74.74 return; 74.75 } 74.76 - List<Object> xmlElements = xmlElementsMap.get(currentRoot); 74.77 - if (xmlElements.get(xmlElements.size()-1).equals(qName)) { 74.78 - return; 74.79 - } else { 74.80 - List<Object> subElements = new ArrayList<Object>(); 74.81 - int targetIndex = xmlElements.indexOf(qName); 74.82 - int size = xmlElements.size(); 74.83 - for (int i = targetIndex; i < size; i++) { 74.84 - subElements.add(xmlElements.get(targetIndex)); 74.85 - xmlElements.remove(targetIndex); 74.86 - } 74.87 - //Save the sub elements as a list. 74.88 - xmlElements.add(subElements); 74.89 - } 74.90 + currentNode = currentNode.parent; 74.91 isParsing = ! qName.equals(currentRoot); 74.92 } 74.93 }
75.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MemberSummaryBuilder.java Thu Jun 17 16:28:21 2010 -0700 75.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MemberSummaryBuilder.java Mon Jun 21 22:09:18 2010 -0700 75.3 @@ -29,7 +29,6 @@ 75.4 import com.sun.tools.doclets.internal.toolkit.*; 75.5 import com.sun.javadoc.*; 75.6 import java.util.*; 75.7 -import java.lang.reflect.*; 75.8 75.9 /** 75.10 * Builds the member summary. 75.11 @@ -175,22 +174,6 @@ 75.12 } 75.13 75.14 /** 75.15 - * {@inheritDoc} 75.16 - */ 75.17 - public void invokeMethod( 75.18 - String methodName, 75.19 - Class<?>[] paramClasses, 75.20 - Object[] params) 75.21 - throws Exception { 75.22 - if (DEBUG) { 75.23 - configuration.root.printError( 75.24 - "DEBUG: " + this.getClass().getName() + "." + methodName); 75.25 - } 75.26 - Method method = this.getClass().getMethod(methodName, paramClasses); 75.27 - method.invoke(this, params); 75.28 - } 75.29 - 75.30 - /** 75.31 * Return true it there are any members to summarize. 75.32 * 75.33 * @return true if there are any members to summarize. 75.34 @@ -211,7 +194,7 @@ 75.35 /** 75.36 * Build the summary for the enum constants. 75.37 */ 75.38 - public void buildEnumConstantsSummary() { 75.39 + public void buildEnumConstantsSummary(XMLNode node) { 75.40 buildSummary( 75.41 memberSummaryWriters[VisibleMemberMap.ENUM_CONSTANTS], 75.42 visibleMemberMaps[VisibleMemberMap.ENUM_CONSTANTS]); 75.43 @@ -220,7 +203,7 @@ 75.44 /** 75.45 * Build the summary for the optional members. 75.46 */ 75.47 - public void buildAnnotationTypeOptionalMemberSummary() { 75.48 + public void buildAnnotationTypeOptionalMemberSummary(XMLNode node) { 75.49 buildSummary( 75.50 memberSummaryWriters[VisibleMemberMap.ANNOTATION_TYPE_MEMBER_OPTIONAL], 75.51 visibleMemberMaps[VisibleMemberMap.ANNOTATION_TYPE_MEMBER_OPTIONAL]); 75.52 @@ -229,7 +212,7 @@ 75.53 /** 75.54 * Build the summary for the optional members. 75.55 */ 75.56 - public void buildAnnotationTypeRequiredMemberSummary() { 75.57 + public void buildAnnotationTypeRequiredMemberSummary(XMLNode node) { 75.58 buildSummary( 75.59 memberSummaryWriters[VisibleMemberMap.ANNOTATION_TYPE_MEMBER_REQUIRED], 75.60 visibleMemberMaps[VisibleMemberMap.ANNOTATION_TYPE_MEMBER_REQUIRED]); 75.61 @@ -238,7 +221,7 @@ 75.62 /** 75.63 * Build the summary for the fields. 75.64 */ 75.65 - public void buildFieldsSummary() { 75.66 + public void buildFieldsSummary(XMLNode node) { 75.67 buildSummary( 75.68 memberSummaryWriters[VisibleMemberMap.FIELDS], 75.69 visibleMemberMaps[VisibleMemberMap.FIELDS]); 75.70 @@ -247,7 +230,7 @@ 75.71 /** 75.72 * Build the inherited summary for the fields. 75.73 */ 75.74 - public void buildFieldsInheritedSummary() { 75.75 + public void buildFieldsInheritedSummary(XMLNode node) { 75.76 buildInheritedSummary( 75.77 memberSummaryWriters[VisibleMemberMap.FIELDS], 75.78 visibleMemberMaps[VisibleMemberMap.FIELDS]); 75.79 @@ -256,7 +239,7 @@ 75.80 /** 75.81 * Build the summary for the nested classes. 75.82 */ 75.83 - public void buildNestedClassesSummary() { 75.84 + public void buildNestedClassesSummary(XMLNode node) { 75.85 buildSummary( 75.86 memberSummaryWriters[VisibleMemberMap.INNERCLASSES], 75.87 visibleMemberMaps[VisibleMemberMap.INNERCLASSES]); 75.88 @@ -265,7 +248,7 @@ 75.89 /** 75.90 * Build the inherited summary for the nested classes. 75.91 */ 75.92 - public void buildNestedClassesInheritedSummary() { 75.93 + public void buildNestedClassesInheritedSummary(XMLNode node) { 75.94 buildInheritedSummary( 75.95 memberSummaryWriters[VisibleMemberMap.INNERCLASSES], 75.96 visibleMemberMaps[VisibleMemberMap.INNERCLASSES]); 75.97 @@ -274,7 +257,7 @@ 75.98 /** 75.99 * Build the method summary. 75.100 */ 75.101 - public void buildMethodsSummary() { 75.102 + public void buildMethodsSummary(XMLNode node) { 75.103 buildSummary( 75.104 memberSummaryWriters[VisibleMemberMap.METHODS], 75.105 visibleMemberMaps[VisibleMemberMap.METHODS]); 75.106 @@ -283,7 +266,7 @@ 75.107 /** 75.108 * Build the inherited method summary. 75.109 */ 75.110 - public void buildMethodsInheritedSummary() { 75.111 + public void buildMethodsInheritedSummary(XMLNode node) { 75.112 buildInheritedSummary( 75.113 memberSummaryWriters[VisibleMemberMap.METHODS], 75.114 visibleMemberMaps[VisibleMemberMap.METHODS]); 75.115 @@ -292,7 +275,7 @@ 75.116 /** 75.117 * Build the constructor summary. 75.118 */ 75.119 - public void buildConstructorsSummary() { 75.120 + public void buildConstructorsSummary(XMLNode node) { 75.121 buildSummary( 75.122 memberSummaryWriters[VisibleMemberMap.CONSTRUCTORS], 75.123 visibleMemberMaps[VisibleMemberMap.CONSTRUCTORS]);
76.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MethodBuilder.java Thu Jun 17 16:28:21 2010 -0700 76.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MethodBuilder.java Mon Jun 21 22:09:18 2010 -0700 76.3 @@ -29,7 +29,7 @@ 76.4 import com.sun.tools.doclets.internal.toolkit.*; 76.5 import com.sun.javadoc.*; 76.6 import java.util.*; 76.7 -import java.lang.reflect.*; 76.8 + 76.9 /** 76.10 * Builds documentation for a method. 76.11 * 76.12 @@ -112,22 +112,6 @@ 76.13 } 76.14 76.15 /** 76.16 - * {@inheritDoc} 76.17 - */ 76.18 - public void invokeMethod( 76.19 - String methodName, 76.20 - Class<?>[] paramClasses, 76.21 - Object[] params) 76.22 - throws Exception { 76.23 - if (DEBUG) { 76.24 - configuration.root.printError( 76.25 - "DEBUG: " + this.getClass().getName() + "." + methodName); 76.26 - } 76.27 - Method method = this.getClass().getMethod(methodName, paramClasses); 76.28 - method.invoke(this, params); 76.29 - } 76.30 - 76.31 - /** 76.32 * Returns a list of methods that will be documented for the given class. 76.33 * This information can be used for doclet specific documentation 76.34 * generation. 76.35 @@ -158,21 +142,21 @@ 76.36 /** 76.37 * Build the method documentation. 76.38 */ 76.39 - public void buildMethodDoc(List<?> elements) { 76.40 + public void buildMethodDoc(XMLNode node) { 76.41 if (writer == null) { 76.42 return; 76.43 } 76.44 for (currentMethodIndex = 0; 76.45 currentMethodIndex < methods.size(); 76.46 currentMethodIndex++) { 76.47 - build(elements); 76.48 + buildChildren(node); 76.49 } 76.50 } 76.51 76.52 /** 76.53 * Build the overall header. 76.54 */ 76.55 - public void buildHeader() { 76.56 + public void buildHeader(XMLNode node) { 76.57 writer.writeHeader( 76.58 classDoc, 76.59 configuration.getText("doclet.Method_Detail")); 76.60 @@ -181,7 +165,7 @@ 76.61 /** 76.62 * Build the header for the individual method. 76.63 */ 76.64 - public void buildMethodHeader() { 76.65 + public void buildMethodHeader(XMLNode node) { 76.66 writer.writeMethodHeader( 76.67 (MethodDoc) methods.get(currentMethodIndex), 76.68 currentMethodIndex == 0); 76.69 @@ -190,14 +174,14 @@ 76.70 /** 76.71 * Build the signature. 76.72 */ 76.73 - public void buildSignature() { 76.74 + public void buildSignature(XMLNode node) { 76.75 writer.writeSignature((MethodDoc) methods.get(currentMethodIndex)); 76.76 } 76.77 76.78 /** 76.79 * Build the deprecation information. 76.80 */ 76.81 - public void buildDeprecationInfo() { 76.82 + public void buildDeprecationInfo(XMLNode node) { 76.83 writer.writeDeprecated((MethodDoc) methods.get(currentMethodIndex)); 76.84 } 76.85 76.86 @@ -205,7 +189,7 @@ 76.87 * Build the comments for the method. Do nothing if 76.88 * {@link Configuration#nocomment} is set to true. If this method 76.89 */ 76.90 - public void buildMethodComments() { 76.91 + public void buildMethodComments(XMLNode node) { 76.92 if (!configuration.nocomment) { 76.93 MethodDoc method = (MethodDoc) methods.get(currentMethodIndex); 76.94 76.95 @@ -228,21 +212,21 @@ 76.96 /** 76.97 * Build the tag information. 76.98 */ 76.99 - public void buildTagInfo() { 76.100 + public void buildTagInfo(XMLNode node) { 76.101 writer.writeTags((MethodDoc) methods.get(currentMethodIndex)); 76.102 } 76.103 76.104 /** 76.105 * Build the footer of the method. 76.106 */ 76.107 - public void buildMethodFooter() { 76.108 + public void buildMethodFooter(XMLNode node) { 76.109 writer.writeMethodFooter(); 76.110 } 76.111 76.112 /** 76.113 * Build the overall footer. 76.114 */ 76.115 - public void buildFooter() { 76.116 + public void buildFooter(XMLNode node) { 76.117 writer.writeFooter(classDoc); 76.118 } 76.119
77.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java Thu Jun 17 16:28:21 2010 -0700 77.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java Mon Jun 21 22:09:18 2010 -0700 77.3 @@ -29,8 +29,6 @@ 77.4 import com.sun.tools.doclets.internal.toolkit.*; 77.5 import com.sun.javadoc.*; 77.6 import java.io.*; 77.7 -import java.util.*; 77.8 -import java.lang.reflect.*; 77.9 77.10 /** 77.11 * Builds the summary for a given package. 77.12 @@ -85,22 +83,6 @@ 77.13 } 77.14 77.15 /** 77.16 - * {@inheritDoc} 77.17 - */ 77.18 - public void invokeMethod( 77.19 - String methodName, 77.20 - Class<?>[] paramClasses, 77.21 - Object[] params) 77.22 - throws Exception { 77.23 - if (DEBUG) { 77.24 - configuration.root.printError( 77.25 - "DEBUG: " + this.getClass().getName() + "." + methodName); 77.26 - } 77.27 - Method method = this.getClass().getMethod(methodName, paramClasses); 77.28 - method.invoke(this, params); 77.29 - } 77.30 - 77.31 - /** 77.32 * Build the package summary. 77.33 */ 77.34 public void build() throws IOException { 77.35 @@ -121,8 +103,8 @@ 77.36 /** 77.37 * Build the package documentation. 77.38 */ 77.39 - public void buildPackageDoc(List<?> elements) throws Exception { 77.40 - build(elements); 77.41 + public void buildPackageDoc(XMLNode node) throws Exception { 77.42 + buildChildren(node); 77.43 packageWriter.close(); 77.44 Util.copyDocFiles( 77.45 configuration, 77.46 @@ -136,14 +118,14 @@ 77.47 /** 77.48 * Build the header of the summary. 77.49 */ 77.50 - public void buildPackageHeader() { 77.51 + public void buildPackageHeader(XMLNode node) { 77.52 packageWriter.writePackageHeader(Util.getPackageName(packageDoc)); 77.53 } 77.54 77.55 /** 77.56 * Build the description of the summary. 77.57 */ 77.58 - public void buildPackageDescription() { 77.59 + public void buildPackageDescription(XMLNode node) { 77.60 if (configuration.nocomment) { 77.61 return; 77.62 } 77.63 @@ -153,7 +135,7 @@ 77.64 /** 77.65 * Build the tags of the summary. 77.66 */ 77.67 - public void buildPackageTags() { 77.68 + public void buildPackageTags(XMLNode node) { 77.69 if (configuration.nocomment) { 77.70 return; 77.71 } 77.72 @@ -163,28 +145,28 @@ 77.73 /** 77.74 * Build the package summary. 77.75 */ 77.76 - public void buildSummary(List<?> elements) { 77.77 - build(elements); 77.78 + public void buildSummary(XMLNode node) { 77.79 + buildChildren(node); 77.80 } 77.81 77.82 /** 77.83 * Build the overall header. 77.84 */ 77.85 - public void buildSummaryHeader() { 77.86 + public void buildSummaryHeader(XMLNode node) { 77.87 packageWriter.writeSummaryHeader(); 77.88 } 77.89 77.90 /** 77.91 * Build the overall footer. 77.92 */ 77.93 - public void buildSummaryFooter() { 77.94 + public void buildSummaryFooter(XMLNode node) { 77.95 packageWriter.writeSummaryFooter(); 77.96 } 77.97 77.98 /** 77.99 * Build the summary for the classes in this package. 77.100 */ 77.101 - public void buildClassSummary() { 77.102 + public void buildClassSummary(XMLNode node) { 77.103 String classTableSummary = 77.104 configuration.getText("doclet.Member_Table_Summary", 77.105 configuration.getText("doclet.Class_Summary"), 77.106 @@ -209,7 +191,7 @@ 77.107 /** 77.108 * Build the summary for the interfaces in this package. 77.109 */ 77.110 - public void buildInterfaceSummary() { 77.111 + public void buildInterfaceSummary(XMLNode node) { 77.112 String interfaceTableSummary = 77.113 configuration.getText("doclet.Member_Table_Summary", 77.114 configuration.getText("doclet.Interface_Summary"), 77.115 @@ -234,7 +216,7 @@ 77.116 /** 77.117 * Build the summary for the enums in this package. 77.118 */ 77.119 - public void buildAnnotationTypeSummary() { 77.120 + public void buildAnnotationTypeSummary(XMLNode node) { 77.121 String annotationtypeTableSummary = 77.122 configuration.getText("doclet.Member_Table_Summary", 77.123 configuration.getText("doclet.Annotation_Types_Summary"), 77.124 @@ -259,7 +241,7 @@ 77.125 /** 77.126 * Build the summary for the enums in this package. 77.127 */ 77.128 - public void buildEnumSummary() { 77.129 + public void buildEnumSummary(XMLNode node) { 77.130 String enumTableSummary = 77.131 configuration.getText("doclet.Member_Table_Summary", 77.132 configuration.getText("doclet.Enum_Summary"), 77.133 @@ -284,7 +266,7 @@ 77.134 /** 77.135 * Build the summary for the exceptions in this package. 77.136 */ 77.137 - public void buildExceptionSummary() { 77.138 + public void buildExceptionSummary(XMLNode node) { 77.139 String exceptionTableSummary = 77.140 configuration.getText("doclet.Member_Table_Summary", 77.141 configuration.getText("doclet.Exception_Summary"), 77.142 @@ -309,7 +291,7 @@ 77.143 /** 77.144 * Build the summary for the errors in this package. 77.145 */ 77.146 - public void buildErrorSummary() { 77.147 + public void buildErrorSummary(XMLNode node) { 77.148 String errorTableSummary = 77.149 configuration.getText("doclet.Member_Table_Summary", 77.150 configuration.getText("doclet.Error_Summary"), 77.151 @@ -334,7 +316,7 @@ 77.152 /** 77.153 * Build the footer of the summary. 77.154 */ 77.155 - public void buildPackageFooter() { 77.156 + public void buildPackageFooter(XMLNode node) { 77.157 packageWriter.writePackageFooter(); 77.158 } 77.159 }
78.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/SerializedFormBuilder.java Thu Jun 17 16:28:21 2010 -0700 78.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/SerializedFormBuilder.java Mon Jun 21 22:09:18 2010 -0700 78.3 @@ -26,7 +26,6 @@ 78.4 package com.sun.tools.doclets.internal.toolkit.builders; 78.5 78.6 import java.io.*; 78.7 -import java.lang.reflect.*; 78.8 import java.util.*; 78.9 78.10 import com.sun.javadoc.*; 78.11 @@ -132,47 +131,33 @@ 78.12 /** 78.13 * Build the serialized form. 78.14 */ 78.15 - public void buildSerializedForm(List<?> elements) throws Exception { 78.16 - build(elements); 78.17 + public void buildSerializedForm(XMLNode node) throws Exception { 78.18 + buildChildren(node); 78.19 writer.close(); 78.20 } 78.21 78.22 /** 78.23 - * {@inheritDoc} 78.24 - */ 78.25 - public void invokeMethod(String methodName, Class<?>[] paramClasses, 78.26 - Object[] params) 78.27 - throws Exception { 78.28 - if (DEBUG) { 78.29 - configuration.root.printError("DEBUG: " + this.getClass().getName() 78.30 - + "." + methodName); 78.31 - } 78.32 - Method method = this.getClass().getMethod(methodName, paramClasses); 78.33 - method.invoke(this, params); 78.34 - } 78.35 - 78.36 - /** 78.37 * Build the header. 78.38 */ 78.39 - public void buildHeader() { 78.40 + public void buildHeader(XMLNode node) { 78.41 writer.writeHeader(configuration.getText("doclet.Serialized_Form")); 78.42 } 78.43 78.44 /** 78.45 * Build the contents. 78.46 */ 78.47 - public void buildSerializedFormSummaries(List<?> elements) { 78.48 + public void buildSerializedFormSummaries(XMLNode node) { 78.49 PackageDoc[] packages = configuration.packages; 78.50 for (int i = 0; i < packages.length; i++) { 78.51 currentPackage = packages[i]; 78.52 - build(elements); 78.53 + buildChildren(node); 78.54 } 78.55 } 78.56 78.57 /** 78.58 * Build the package serialized for for the current package being processed. 78.59 */ 78.60 - public void buildPackageSerializedForm(List<?> elements) { 78.61 + public void buildPackageSerializedForm(XMLNode node) { 78.62 String foo = currentPackage.name(); 78.63 ClassDoc[] classes = currentPackage.allClasses(false); 78.64 if (classes == null || classes.length == 0) { 78.65 @@ -184,14 +169,14 @@ 78.66 if (!serialClassFoundToDocument(classes)) { 78.67 return; 78.68 } 78.69 - build(elements); 78.70 + buildChildren(node); 78.71 } 78.72 78.73 - public void buildPackageHeader() { 78.74 + public void buildPackageHeader(XMLNode node) { 78.75 writer.writePackageHeader(Util.getPackageName(currentPackage)); 78.76 } 78.77 78.78 - public void buildClassSerializedForm(List<?> elements) { 78.79 + public void buildClassSerializedForm(XMLNode node) { 78.80 ClassDoc[] classes = currentPackage.allClasses(false); 78.81 Arrays.sort(classes); 78.82 for (int j = 0; j < classes.length; j++) { 78.83 @@ -202,19 +187,19 @@ 78.84 if(!serialClassInclude(currentClass)) { 78.85 continue; 78.86 } 78.87 - build(elements); 78.88 + buildChildren(node); 78.89 } 78.90 } 78.91 } 78.92 78.93 - public void buildClassHeader() { 78.94 + public void buildClassHeader(XMLNode node) { 78.95 writer.writeClassHeader(currentClass); 78.96 } 78.97 78.98 /** 78.99 * Build the serial UID information for the given class. 78.100 */ 78.101 - public void buildSerialUIDInfo() { 78.102 + public void buildSerialUIDInfo(XMLNode node) { 78.103 FieldDoc[] fields = currentClass.fields(false); 78.104 for (int i = 0; i < fields.length; i++) { 78.105 if (fields[i].name().equals("serialVersionUID") && 78.106 @@ -229,7 +214,7 @@ 78.107 /** 78.108 * Build the footer. 78.109 */ 78.110 - public void buildFooter() { 78.111 + public void buildFooter(XMLNode node) { 78.112 writer.writeFooter(); 78.113 } 78.114 78.115 @@ -316,7 +301,7 @@ 78.116 /** 78.117 * Build the method header. 78.118 */ 78.119 - public void buildMethodHeader() { 78.120 + public void buildMethodHeader(XMLNode node) { 78.121 if (currentClass.serializationMethods().length > 0) { 78.122 methodWriter.writeHeader( 78.123 configuration.getText("doclet.Serialized_Form_methods")); 78.124 @@ -333,28 +318,28 @@ 78.125 /** 78.126 * Build the method sub header. 78.127 */ 78.128 - public void buildMethodSubHeader() { 78.129 + public void buildMethodSubHeader(XMLNode node) { 78.130 methodWriter.writeMemberHeader((MethodDoc) currentMember); 78.131 } 78.132 78.133 /** 78.134 * Build the deprecated method description. 78.135 */ 78.136 - public void buildDeprecatedMethodInfo() { 78.137 + public void buildDeprecatedMethodInfo(XMLNode node) { 78.138 methodWriter.writeDeprecatedMemberInfo((MethodDoc) currentMember); 78.139 } 78.140 78.141 /** 78.142 * Build method tags. 78.143 */ 78.144 - public void buildMethodDescription() { 78.145 + public void buildMethodDescription(XMLNode node) { 78.146 methodWriter.writeMemberDescription((MethodDoc) currentMember); 78.147 } 78.148 78.149 /** 78.150 * Build the method tags. 78.151 */ 78.152 - public void buildMethodTags() { 78.153 + public void buildMethodTags(XMLNode node) { 78.154 methodWriter.writeMemberTags((MethodDoc) currentMember); 78.155 MethodDoc method = (MethodDoc)currentMember; 78.156 if (method.name().compareTo("writeExternal") == 0 78.157 @@ -370,24 +355,24 @@ 78.158 /** 78.159 * build the information for the method. 78.160 */ 78.161 - public void buildMethodInfo(List<?> elements) { 78.162 + public void buildMethodInfo(XMLNode node) { 78.163 if(configuration.nocomment){ 78.164 return; 78.165 } 78.166 - build(elements); 78.167 + buildChildren(node); 78.168 } 78.169 78.170 /** 78.171 * Build the method footer. 78.172 */ 78.173 - public void buildMethodFooter() { 78.174 + public void buildMethodFooter(XMLNode node) { 78.175 methodWriter.writeMemberFooter(); 78.176 } 78.177 78.178 /** 78.179 * Build the field header. 78.180 */ 78.181 - public void buildFieldHeader() { 78.182 + public void buildFieldHeader(XMLNode node) { 78.183 if (currentClass.serializableFields().length > 0) { 78.184 buildFieldSerializationOverview(currentClass); 78.185 fieldWriter.writeHeader(configuration.getText( 78.186 @@ -426,7 +411,7 @@ 78.187 /** 78.188 * Build the field sub header. 78.189 */ 78.190 - public void buildFieldSubHeader() { 78.191 + public void buildFieldSubHeader(XMLNode node) { 78.192 if (! currentClass.definesSerializableFields() ){ 78.193 FieldDoc field = (FieldDoc) currentMember; 78.194 fieldWriter.writeMemberHeader(field.type().asClassDoc(), 78.195 @@ -437,7 +422,7 @@ 78.196 /** 78.197 * Build the field deprecation information. 78.198 */ 78.199 - public void buildFieldDeprecationInfo() { 78.200 + public void buildFieldDeprecationInfo(XMLNode node) { 78.201 if (!currentClass.definesSerializableFields()) { 78.202 FieldDoc field = (FieldDoc)currentMember; 78.203 fieldWriter.writeMemberDeprecatedInfo(field); 78.204 @@ -447,7 +432,7 @@ 78.205 /** 78.206 * Build the field information. 78.207 */ 78.208 - public void buildFieldInfo() { 78.209 + public void buildFieldInfo(XMLNode node) { 78.210 if(configuration.nocomment){ 78.211 return; 78.212 } 78.213 @@ -483,7 +468,7 @@ 78.214 /** 78.215 * Build the field sub footer. 78.216 */ 78.217 - public void buildFieldSubFooter() { 78.218 + public void buildFieldSubFooter(XMLNode node) { 78.219 if (! currentClass.definesSerializableFields()) { 78.220 fieldWriter.writeMemberFooter(); 78.221 } 78.222 @@ -493,12 +478,12 @@ 78.223 * Build the summaries for the methods that belong to the given 78.224 * class. 78.225 */ 78.226 - public void buildSerializableMethods(List<?> elements) { 78.227 + public void buildSerializableMethods(XMLNode node) { 78.228 MemberDoc[] members = currentClass.serializationMethods(); 78.229 if (members.length > 0) { 78.230 for (int i = 0; i < members.length; i++) { 78.231 currentMember = members[i]; 78.232 - build(elements); 78.233 + buildChildren(node); 78.234 } 78.235 } 78.236 } 78.237 @@ -507,12 +492,12 @@ 78.238 * Build the summaries for the fields that belong to the given 78.239 * class. 78.240 */ 78.241 - public void buildSerializableFields(List<?> elements) { 78.242 + public void buildSerializableFields(XMLNode node) { 78.243 MemberDoc[] members = currentClass.serializableFields(); 78.244 if (members.length > 0) { 78.245 for (int i = 0; i < members.length; i++) { 78.246 currentMember = members[i]; 78.247 - build(elements); 78.248 + buildChildren(node); 78.249 } 78.250 } 78.251 }
79.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 79.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/XMLNode.java Mon Jun 21 22:09:18 2010 -0700 79.3 @@ -0,0 +1,69 @@ 79.4 +/* 79.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 79.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 79.7 + * 79.8 + * This code is free software; you can redistribute it and/or modify it 79.9 + * under the terms of the GNU General Public License version 2 only, as 79.10 + * published by the Free Software Foundation. Oracle designates this 79.11 + * particular file as subject to the "Classpath" exception as provided 79.12 + * by Oracle in the LICENSE file that accompanied this code. 79.13 + * 79.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 79.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 79.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 79.17 + * version 2 for more details (a copy is included in the LICENSE file that 79.18 + * accompanied this code). 79.19 + * 79.20 + * You should have received a copy of the GNU General Public License version 79.21 + * 2 along with this work; if not, write to the Free Software Foundation, 79.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 79.23 + * 79.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 79.25 + * or visit www.oracle.com if you need additional information or have any 79.26 + * questions. 79.27 + */ 79.28 + 79.29 +package com.sun.tools.doclets.internal.toolkit.builders; 79.30 + 79.31 +import java.util.ArrayList; 79.32 +import java.util.HashMap; 79.33 +import java.util.List; 79.34 +import java.util.Map; 79.35 + 79.36 +/** 79.37 + * Simple class to represent the attribute and elements of an XML node. 79.38 + */ 79.39 +public class XMLNode { 79.40 + XMLNode(XMLNode parent, String qname) { 79.41 + this.parent = parent; 79.42 + name = qname; 79.43 + attrs = new HashMap<String,String>(); 79.44 + children = new ArrayList<XMLNode>(); 79.45 + 79.46 + if (parent != null) 79.47 + parent.children.add(this); 79.48 + } 79.49 + 79.50 + @Override 79.51 + public String toString() { 79.52 + StringBuilder sb = new StringBuilder(); 79.53 + sb.append("<"); 79.54 + sb.append(name); 79.55 + for (Map.Entry<String,String> e: attrs.entrySet()) 79.56 + sb.append(" " + e.getKey() + "=\"" + e.getValue() + "\""); 79.57 + if (children.size() == 0) 79.58 + sb.append("/>"); 79.59 + else { 79.60 + sb.append(">"); 79.61 + for (XMLNode c: children) 79.62 + sb.append(c.toString()); 79.63 + sb.append("</" + name + ">"); 79.64 + } 79.65 + return sb.toString(); 79.66 + } 79.67 + 79.68 + final XMLNode parent; 79.69 + final String name; 79.70 + final Map<String,String> attrs; 79.71 + final List<XMLNode> children; 79.72 +}
80.1 --- a/src/share/classes/com/sun/tools/javac/Launcher.java Thu Jun 17 16:28:21 2010 -0700 80.2 +++ b/src/share/classes/com/sun/tools/javac/Launcher.java Mon Jun 21 22:09:18 2010 -0700 80.3 @@ -41,7 +41,7 @@ 80.4 * of a <em>project</em>). Simply ensure that this class is added to 80.5 * the project and make it the main class of the project.</p> 80.6 * 80.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 80.8 + * <p><b>This is NOT part of any supported API. 80.9 * If you write code that depends on this, you do so at your own 80.10 * risk. This code and its internal interfaces are subject to change 80.11 * or deletion without notice.</b></p>
81.1 --- a/src/share/classes/com/sun/tools/javac/Server.java Thu Jun 17 16:28:21 2010 -0700 81.2 +++ b/src/share/classes/com/sun/tools/javac/Server.java Mon Jun 21 22:09:18 2010 -0700 81.3 @@ -36,7 +36,7 @@ 81.4 * Java Compiler Server. Can be used to speed up a set of (small) 81.5 * compilation tasks by caching jar files between compilations. 81.6 * 81.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 81.8 + * <p><b>This is NOT part of any supported API. 81.9 * If you write code that depends on this, you do so at your own 81.10 * risk. This code and its internal interfaces are subject to change 81.11 * or deletion without notice.</b></p>
82.1 --- a/src/share/classes/com/sun/tools/javac/api/DiagnosticFormatter.java Thu Jun 17 16:28:21 2010 -0700 82.2 +++ b/src/share/classes/com/sun/tools/javac/api/DiagnosticFormatter.java Mon Jun 21 22:09:18 2010 -0700 82.3 @@ -33,7 +33,7 @@ 82.4 * Provides simple functionalities for javac diagnostic formatting. 82.5 * @param <D> type of diagnostic handled by this formatter 82.6 * 82.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 82.8 + * <p><b>This is NOT part of any supported API. 82.9 * If you write code that depends on this, you do so at your own risk. 82.10 * This code and its internal interfaces are subject to change or 82.11 * deletion without notice.</b>
83.1 --- a/src/share/classes/com/sun/tools/javac/api/Formattable.java Thu Jun 17 16:28:21 2010 -0700 83.2 +++ b/src/share/classes/com/sun/tools/javac/api/Formattable.java Mon Jun 21 22:09:18 2010 -0700 83.3 @@ -31,7 +31,7 @@ 83.4 * This interface must be implemented by any javac class that has non-trivial 83.5 * formatting needs (e.g. where toString() does not apply because of localization). 83.6 * 83.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 83.8 + * <p><b>This is NOT part of any supported API. 83.9 * If you write code that depends on this, you do so at your own risk. 83.10 * This code and its internal interfaces are subject to change or 83.11 * deletion without notice.</b>
84.1 --- a/src/share/classes/com/sun/tools/javac/api/JavacScope.java Thu Jun 17 16:28:21 2010 -0700 84.2 +++ b/src/share/classes/com/sun/tools/javac/api/JavacScope.java Mon Jun 21 22:09:18 2010 -0700 84.3 @@ -38,7 +38,7 @@ 84.4 /** 84.5 * Provides an implementation of Scope. 84.6 * 84.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 84.8 + * <p><b>This is NOT part of any supported API. 84.9 * If you write code that depends on this, you do so at your own 84.10 * risk. This code and its internal interfaces are subject to change 84.11 * or deletion without notice.</b></p>
85.1 --- a/src/share/classes/com/sun/tools/javac/api/JavacTaskImpl.java Thu Jun 17 16:28:21 2010 -0700 85.2 +++ b/src/share/classes/com/sun/tools/javac/api/JavacTaskImpl.java Mon Jun 21 22:09:18 2010 -0700 85.3 @@ -54,9 +54,9 @@ 85.4 import com.sun.tools.javac.main.JavaCompiler; 85.5 85.6 /** 85.7 - * Provides access to functionality specific to the Sun Java Compiler, javac. 85.8 + * Provides access to functionality specific to the JDK Java Compiler, javac. 85.9 * 85.10 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 85.11 + * <p><b>This is NOT part of any supported API. 85.12 * If you write code that depends on this, you do so at your own 85.13 * risk. This code and its internal interfaces are subject to change 85.14 * or deletion without notice.</b></p> 85.15 @@ -502,7 +502,7 @@ 85.16 } 85.17 85.18 /** 85.19 - * For internal use by Sun Microsystems only. This method will be 85.20 + * For internal use only. This method will be 85.21 * removed without warning. 85.22 */ 85.23 public Context getContext() { 85.24 @@ -510,7 +510,7 @@ 85.25 } 85.26 85.27 /** 85.28 - * For internal use by Sun Microsystems only. This method will be 85.29 + * For internal use only. This method will be 85.30 * removed without warning. 85.31 */ 85.32 public void updateContext(Context newContext) { 85.33 @@ -518,7 +518,7 @@ 85.34 } 85.35 85.36 /** 85.37 - * For internal use by Sun Microsystems only. This method will be 85.38 + * For internal use only. This method will be 85.39 * removed without warning. 85.40 */ 85.41 public Type parseType(String expr, TypeElement scope) {
86.1 --- a/src/share/classes/com/sun/tools/javac/api/JavacTool.java Thu Jun 17 16:28:21 2010 -0700 86.2 +++ b/src/share/classes/com/sun/tools/javac/api/JavacTool.java Mon Jun 21 22:09:18 2010 -0700 86.3 @@ -57,7 +57,7 @@ 86.4 /** 86.5 * TODO: describe com.sun.tools.javac.api.Tool 86.6 * 86.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 86.8 + * <p><b>This is NOT part of any supported API. 86.9 * If you write code that depends on this, you do so at your own 86.10 * risk. This code and its internal interfaces are subject to change 86.11 * or deletion without notice.</b></p>
87.1 --- a/src/share/classes/com/sun/tools/javac/api/JavacTrees.java Thu Jun 17 16:28:21 2010 -0700 87.2 +++ b/src/share/classes/com/sun/tools/javac/api/JavacTrees.java Mon Jun 21 22:09:18 2010 -0700 87.3 @@ -71,7 +71,7 @@ 87.4 /** 87.5 * Provides an implementation of Trees. 87.6 * 87.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 87.8 + * <p><b>This is NOT part of any supported API. 87.9 * If you write code that depends on this, you do so at your own 87.10 * risk. This code and its internal interfaces are subject to change 87.11 * or deletion without notice.</b></p>
88.1 --- a/src/share/classes/com/sun/tools/javac/api/Messages.java Thu Jun 17 16:28:21 2010 -0700 88.2 +++ b/src/share/classes/com/sun/tools/javac/api/Messages.java Mon Jun 21 22:09:18 2010 -0700 88.3 @@ -32,7 +32,7 @@ 88.4 * This interface defines the minimum requirements in order to provide support 88.5 * for localized formatted strings. 88.6 * 88.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 88.8 + * <p><b>This is NOT part of any supported API. 88.9 * If you write code that depends on this, you do so at your own risk. 88.10 * This code and its internal interfaces are subject to change or 88.11 * deletion without notice.</b>
89.1 --- a/src/share/classes/com/sun/tools/javac/api/WrappingJavaFileManager.java Thu Jun 17 16:28:21 2010 -0700 89.2 +++ b/src/share/classes/com/sun/tools/javac/api/WrappingJavaFileManager.java Mon Jun 21 22:09:18 2010 -0700 89.3 @@ -42,7 +42,7 @@ 89.4 * <p>This class might be moved to {@link javax.tools} in a future 89.5 * release. 89.6 * 89.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 89.8 + * <p><b>This is NOT part of any supported API. 89.9 * If you write code that depends on this, you do so at your own 89.10 * risk. This code and its internal interfaces are subject to change 89.11 * or deletion without notice.</b></p>
90.1 --- a/src/share/classes/com/sun/tools/javac/code/Attribute.java Thu Jun 17 16:28:21 2010 -0700 90.2 +++ b/src/share/classes/com/sun/tools/javac/code/Attribute.java Mon Jun 21 22:09:18 2010 -0700 90.3 @@ -38,8 +38,8 @@ 90.4 90.5 /** An annotation value. 90.6 * 90.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 90.8 - * you write code that depends on this, you do so at your own risk. 90.9 + * <p><b>This is NOT part of any supported API. 90.10 + * If you write code that depends on this, you do so at your own risk. 90.11 * This code and its internal interfaces are subject to change or 90.12 * deletion without notice.</b> 90.13 */
91.1 --- a/src/share/classes/com/sun/tools/javac/code/BoundKind.java Thu Jun 17 16:28:21 2010 -0700 91.2 +++ b/src/share/classes/com/sun/tools/javac/code/BoundKind.java Mon Jun 21 22:09:18 2010 -0700 91.3 @@ -27,7 +27,7 @@ 91.4 91.5 /** 91.6 * 91.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 91.8 + * <p><b>This is NOT part of any supported API. 91.9 * If you write code that depends on this, you do so at your own risk. 91.10 * This code and its internal interfaces are subject to change or 91.11 * deletion without notice.</b>
92.1 --- a/src/share/classes/com/sun/tools/javac/code/Flags.java Thu Jun 17 16:28:21 2010 -0700 92.2 +++ b/src/share/classes/com/sun/tools/javac/code/Flags.java Mon Jun 21 22:09:18 2010 -0700 92.3 @@ -33,8 +33,8 @@ 92.4 92.5 /** Access flags and other modifiers for Java classes and members. 92.6 * 92.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 92.8 - * you write code that depends on this, you do so at your own risk. 92.9 + * <p><b>This is NOT part of any supported API. 92.10 + * If you write code that depends on this, you do so at your own risk. 92.11 * This code and its internal interfaces are subject to change or 92.12 * deletion without notice.</b> 92.13 */ 92.14 @@ -226,7 +226,7 @@ 92.15 public static final long HYPOTHETICAL = 1L<<37; 92.16 92.17 /** 92.18 - * Flag that marks a Sun proprietary class. 92.19 + * Flag that marks an internal proprietary class. 92.20 */ 92.21 public static final long PROPRIETARY = 1L<<38; 92.22
93.1 --- a/src/share/classes/com/sun/tools/javac/code/Kinds.java Thu Jun 17 16:28:21 2010 -0700 93.2 +++ b/src/share/classes/com/sun/tools/javac/code/Kinds.java Mon Jun 21 22:09:18 2010 -0700 93.3 @@ -38,8 +38,8 @@ 93.4 * different subclasses of Symbol. Symbol kinds are organized so they can be 93.5 * or'ed to sets. 93.6 * 93.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 93.8 - * you write code that depends on this, you do so at your own risk. 93.9 + * <p><b>This is NOT part of any supported API. 93.10 + * If you write code that depends on this, you do so at your own risk. 93.11 * This code and its internal interfaces are subject to change or 93.12 * deletion without notice.</b> 93.13 */
94.1 --- a/src/share/classes/com/sun/tools/javac/code/Lint.java Thu Jun 17 16:28:21 2010 -0700 94.2 +++ b/src/share/classes/com/sun/tools/javac/code/Lint.java Mon Jun 21 22:09:18 2010 -0700 94.3 @@ -39,8 +39,8 @@ 94.4 /** 94.5 * A class for handling -Xlint suboptions and @SuppresssWarnings. 94.6 * 94.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 94.8 - * you write code that depends on this, you do so at your own risk. 94.9 + * <p><b>This is NOT part of any supported API. 94.10 + * If you write code that depends on this, you do so at your own risk. 94.11 * This code and its internal interfaces are subject to change or 94.12 * deletion without notice.</b> 94.13 */ 94.14 @@ -196,14 +196,19 @@ 94.15 RAW("rawtypes"), 94.16 94.17 /** 94.18 - * Warn about Sun proprietary API that may be removed in a future release. 94.19 + * Warn about proprietary API that may be removed in a future release. 94.20 */ 94.21 SUNAPI("sunapi", true), 94.22 94.23 /** 94.24 * Warn about issues relating to use of statics 94.25 */ 94.26 - STATIC("static"); 94.27 + STATIC("static"), 94.28 + 94.29 + /** 94.30 + * Warn about potentially unsafe vararg methods 94.31 + */ 94.32 + VARARGS("varargs"); 94.33 94.34 LintCategory(String option) { 94.35 this(option, false);
95.1 --- a/src/share/classes/com/sun/tools/javac/code/Printer.java Thu Jun 17 16:28:21 2010 -0700 95.2 +++ b/src/share/classes/com/sun/tools/javac/code/Printer.java Mon Jun 21 22:09:18 2010 -0700 95.3 @@ -41,7 +41,7 @@ 95.4 * A combined type/symbol visitor for generating non-trivial localized string 95.5 * representation of types and symbols. 95.6 * 95.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 95.8 + * <p><b>This is NOT part of any supported API. 95.9 * If you write code that depends on this, you do so at your own risk. 95.10 * This code and its internal interfaces are subject to change or 95.11 * deletion without notice.</b>
96.1 --- a/src/share/classes/com/sun/tools/javac/code/Scope.java Thu Jun 17 16:28:21 2010 -0700 96.2 +++ b/src/share/classes/com/sun/tools/javac/code/Scope.java Mon Jun 21 22:09:18 2010 -0700 96.3 @@ -34,8 +34,8 @@ 96.4 * as hash tables. Scopes can be nested; the next field of a scope points 96.5 * to its next outer scope. Nested scopes can share their hash tables. 96.6 * 96.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 96.8 - * you write code that depends on this, you do so at your own risk. 96.9 + * <p><b>This is NOT part of any supported API. 96.10 + * If you write code that depends on this, you do so at your own risk. 96.11 * This code and its internal interfaces are subject to change or 96.12 * deletion without notice.</b> 96.13 */
97.1 --- a/src/share/classes/com/sun/tools/javac/code/Source.java Thu Jun 17 16:28:21 2010 -0700 97.2 +++ b/src/share/classes/com/sun/tools/javac/code/Source.java Mon Jun 21 22:09:18 2010 -0700 97.3 @@ -33,8 +33,8 @@ 97.4 97.5 /** The source language version accepted. 97.6 * 97.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 97.8 - * you write code that depends on this, you do so at your own risk. 97.9 + * <p><b>This is NOT part of any supported API. 97.10 + * If you write code that depends on this, you do so at your own risk. 97.11 * This code and its internal interfaces are subject to change or 97.12 * deletion without notice.</b> 97.13 */
98.1 --- a/src/share/classes/com/sun/tools/javac/code/Symbol.java Thu Jun 17 16:28:21 2010 -0700 98.2 +++ b/src/share/classes/com/sun/tools/javac/code/Symbol.java Mon Jun 21 22:09:18 2010 -0700 98.3 @@ -49,8 +49,8 @@ 98.4 * types, packages. Each subclass is represented as a static inner class 98.5 * inside Symbol. 98.6 * 98.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 98.8 - * you write code that depends on this, you do so at your own risk. 98.9 + * <p><b>This is NOT part of any supported API. 98.10 + * If you write code that depends on this, you do so at your own risk. 98.11 * This code and its internal interfaces are subject to change or 98.12 * deletion without notice.</b> 98.13 */
99.1 --- a/src/share/classes/com/sun/tools/javac/code/Symtab.java Thu Jun 17 16:28:21 2010 -0700 99.2 +++ b/src/share/classes/com/sun/tools/javac/code/Symtab.java Mon Jun 21 22:09:18 2010 -0700 99.3 @@ -42,8 +42,8 @@ 99.4 * fields. This makes it possible to work in multiple concurrent 99.5 * projects, which might use different class files for library classes. 99.6 * 99.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 99.8 - * you write code that depends on this, you do so at your own risk. 99.9 + * <p><b>This is NOT part of any supported API. 99.10 + * If you write code that depends on this, you do so at your own risk. 99.11 * This code and its internal interfaces are subject to change or 99.12 * deletion without notice.</b> 99.13 */ 99.14 @@ -469,7 +469,7 @@ 99.15 synthesizeBoxTypeIfMissing(floatType); 99.16 synthesizeBoxTypeIfMissing(voidType); 99.17 99.18 - // Enter a synthetic class that is used to mark Sun 99.19 + // Enter a synthetic class that is used to mark internal 99.20 // proprietary classes in ct.sym. This class does not have a 99.21 // class file. 99.22 ClassType proprietaryType = (ClassType)enterClass("sun.Proprietary+Annotation");
100.1 --- a/src/share/classes/com/sun/tools/javac/code/TargetType.java Thu Jun 17 16:28:21 2010 -0700 100.2 +++ b/src/share/classes/com/sun/tools/javac/code/TargetType.java Mon Jun 21 22:09:18 2010 -0700 100.3 @@ -39,8 +39,8 @@ 100.4 * annotation targets a type argument in a local variable, method return type, 100.5 * or a typecast). 100.6 * 100.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 100.8 - * you write code that depends on this, you do so at your own risk. 100.9 + * <p><b>This is NOT part of any supported API. 100.10 + * If you write code that depends on this, you do so at your own risk. 100.11 * This code and its internal interfaces are subject to change or 100.12 * deletion without notice.</b> 100.13 */
101.1 --- a/src/share/classes/com/sun/tools/javac/code/Type.java Thu Jun 17 16:28:21 2010 -0700 101.2 +++ b/src/share/classes/com/sun/tools/javac/code/Type.java Mon Jun 21 22:09:18 2010 -0700 101.3 @@ -56,8 +56,8 @@ 101.4 * the error type (tag: ERROR, class: ErrorType). 101.5 * </pre> 101.6 * 101.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 101.8 - * you write code that depends on this, you do so at your own risk. 101.9 + * <p><b>This is NOT part of any supported API. 101.10 + * If you write code that depends on this, you do so at your own risk. 101.11 * This code and its internal interfaces are subject to change or 101.12 * deletion without notice.</b> 101.13 *
102.1 --- a/src/share/classes/com/sun/tools/javac/code/TypeAnnotationPosition.java Thu Jun 17 16:28:21 2010 -0700 102.2 +++ b/src/share/classes/com/sun/tools/javac/code/TypeAnnotationPosition.java Mon Jun 21 22:09:18 2010 -0700 102.3 @@ -29,8 +29,8 @@ 102.4 102.5 /** A type annotation position. 102.6 * 102.7 -* <p><b>This is NOT part of any API supported by Sun Microsystems. If 102.8 -* you write code that depends on this, you do so at your own risk. 102.9 +* <p><b>This is NOT part of any supported API. 102.10 +* If you write code that depends on this, you do so at your own risk. 102.11 * This code and its internal interfaces are subject to change or 102.12 * deletion without notice.</b> 102.13 */
103.1 --- a/src/share/classes/com/sun/tools/javac/code/TypeTags.java Thu Jun 17 16:28:21 2010 -0700 103.2 +++ b/src/share/classes/com/sun/tools/javac/code/TypeTags.java Mon Jun 21 22:09:18 2010 -0700 103.3 @@ -29,8 +29,8 @@ 103.4 /** An interface for type tag values, which distinguish between different 103.5 * sorts of types. 103.6 * 103.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 103.8 - * you write code that depends on this, you do so at your own risk. 103.9 + * <p><b>This is NOT part of any supported API. 103.10 + * If you write code that depends on this, you do so at your own risk. 103.11 * This code and its internal interfaces are subject to change or 103.12 * deletion without notice.</b> 103.13 */
104.1 --- a/src/share/classes/com/sun/tools/javac/code/Types.java Thu Jun 17 16:28:21 2010 -0700 104.2 +++ b/src/share/classes/com/sun/tools/javac/code/Types.java Mon Jun 21 22:09:18 2010 -0700 104.3 @@ -58,7 +58,7 @@ 104.4 * <dd>A second list of types should be named ss.</dd> 104.5 * </dl> 104.6 * 104.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 104.8 + * <p><b>This is NOT part of any supported API. 104.9 * If you write code that depends on this, you do so at your own risk. 104.10 * This code and its internal interfaces are subject to change or 104.11 * deletion without notice.</b>
105.1 --- a/src/share/classes/com/sun/tools/javac/comp/Annotate.java Thu Jun 17 16:28:21 2010 -0700 105.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Annotate.java Mon Jun 21 22:09:18 2010 -0700 105.3 @@ -35,8 +35,8 @@ 105.4 * which is processed at the top level of any set of recursive calls 105.5 * requesting it be processed. 105.6 * 105.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 105.8 - * you write code that depends on this, you do so at your own risk. 105.9 + * <p><b>This is NOT part of any supported API. 105.10 + * If you write code that depends on this, you do so at your own risk. 105.11 * This code and its internal interfaces are subject to change or 105.12 * deletion without notice.</b> 105.13 */
106.1 --- a/src/share/classes/com/sun/tools/javac/comp/Attr.java Thu Jun 17 16:28:21 2010 -0700 106.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Attr.java Mon Jun 21 22:09:18 2010 -0700 106.3 @@ -59,8 +59,8 @@ 106.4 * @see ConstFold 106.5 * @see Infer 106.6 * 106.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 106.8 - * you write code that depends on this, you do so at your own risk. 106.9 + * <p><b>This is NOT part of any supported API. 106.10 + * If you write code that depends on this, you do so at your own risk. 106.11 * This code and its internal interfaces are subject to change or 106.12 * deletion without notice.</b> 106.13 */ 106.14 @@ -166,7 +166,7 @@ 106.15 boolean useBeforeDeclarationWarning; 106.16 106.17 /** 106.18 - * Switch: allow lint infrastructure to control Sun proprietary 106.19 + * Switch: allow lint infrastructure to control proprietary 106.20 * API warnings. 106.21 */ 106.22 boolean enableSunApiLintControl; 106.23 @@ -657,6 +657,8 @@ 106.24 attribStat(l.head, localEnv); 106.25 } 106.26 106.27 + chk.checkVarargMethodDecl(tree); 106.28 + 106.29 // Check that type parameters are well-formed. 106.30 chk.validate(tree.typarams, localEnv); 106.31 if ((owner.flags() & ANNOTATION) != 0 && 106.32 @@ -2634,10 +2636,11 @@ 106.33 } 106.34 if (useVarargs) { 106.35 JCTree tree = env.tree; 106.36 + Type argtype = owntype.getParameterTypes().last(); 106.37 if (owntype.getReturnType().tag != FORALL || warned) { 106.38 - chk.checkVararg(env.tree.pos(), owntype.getParameterTypes()); 106.39 + chk.checkVararg(env.tree.pos(), owntype.getParameterTypes(), sym, env); 106.40 } 106.41 - Type elemtype = types.elemtype(owntype.getParameterTypes().last()); 106.42 + Type elemtype = types.elemtype(argtype); 106.43 switch (tree.getTag()) { 106.44 case JCTree.APPLY: 106.45 ((JCMethodInvocation) tree).varargsElement = elemtype;
107.1 --- a/src/share/classes/com/sun/tools/javac/comp/AttrContext.java Thu Jun 17 16:28:21 2010 -0700 107.2 +++ b/src/share/classes/com/sun/tools/javac/comp/AttrContext.java Mon Jun 21 22:09:18 2010 -0700 107.3 @@ -31,8 +31,8 @@ 107.4 /** Contains information specific to the attribute and enter 107.5 * passes, to be used in place of the generic field in environments. 107.6 * 107.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 107.8 - * you write code that depends on this, you do so at your own risk. 107.9 + * <p><b>This is NOT part of any supported API. 107.10 + * If you write code that depends on this, you do so at your own risk. 107.11 * This code and its internal interfaces are subject to change or 107.12 * deletion without notice.</b> 107.13 */
108.1 --- a/src/share/classes/com/sun/tools/javac/comp/AttrContextEnv.java Thu Jun 17 16:28:21 2010 -0700 108.2 +++ b/src/share/classes/com/sun/tools/javac/comp/AttrContextEnv.java Mon Jun 21 22:09:18 2010 -0700 108.3 @@ -30,8 +30,8 @@ 108.4 108.5 /** {@code Env<A>} specialized as {@code Env<AttrContext>} 108.6 * 108.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 108.8 - * you write code that depends on this, you do so at your own risk. 108.9 + * <p><b>This is NOT part of any supported API. 108.10 + * If you write code that depends on this, you do so at your own risk. 108.11 * This code and its internal interfaces are subject to change or 108.12 * deletion without notice.</b> 108.13 */
109.1 --- a/src/share/classes/com/sun/tools/javac/comp/Check.java Thu Jun 17 16:28:21 2010 -0700 109.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Check.java Mon Jun 21 22:09:18 2010 -0700 109.3 @@ -47,8 +47,8 @@ 109.4 109.5 /** Type checking helper class for the attribution phase. 109.6 * 109.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 109.8 - * you write code that depends on this, you do so at your own risk. 109.9 + * <p><b>This is NOT part of any supported API. 109.10 + * If you write code that depends on this, you do so at your own risk. 109.11 * This code and its internal interfaces are subject to change or 109.12 * deletion without notice.</b> 109.13 */ 109.14 @@ -64,6 +64,7 @@ 109.15 private final JCDiagnostic.Factory diags; 109.16 private final boolean skipAnnotations; 109.17 private boolean warnOnSyntheticConflicts; 109.18 + private boolean suppressAbortOnBadClassFile; 109.19 private final TreeInfo treeinfo; 109.20 109.21 // The set of lint options currently in effect. It is initialized 109.22 @@ -98,12 +99,14 @@ 109.23 complexInference = options.get("-complexinference") != null; 109.24 skipAnnotations = options.get("skipAnnotations") != null; 109.25 warnOnSyntheticConflicts = options.get("warnOnSyntheticConflicts") != null; 109.26 + suppressAbortOnBadClassFile = options.get("suppressAbortOnBadClassFile") != null; 109.27 109.28 Target target = Target.instance(context); 109.29 syntheticNameChar = target.syntheticNameChar(); 109.30 109.31 boolean verboseDeprecated = lint.isEnabled(LintCategory.DEPRECATION); 109.32 boolean verboseUnchecked = lint.isEnabled(LintCategory.UNCHECKED); 109.33 + boolean verboseVarargs = lint.isEnabled(LintCategory.VARARGS); 109.34 boolean verboseSunApi = lint.isEnabled(LintCategory.SUNAPI); 109.35 boolean enforceMandatoryWarnings = source.enforceMandatoryWarnings(); 109.36 109.37 @@ -111,6 +114,8 @@ 109.38 enforceMandatoryWarnings, "deprecated"); 109.39 uncheckedHandler = new MandatoryWarningHandler(log, verboseUnchecked, 109.40 enforceMandatoryWarnings, "unchecked"); 109.41 + unsafeVarargsHandler = new MandatoryWarningHandler(log, verboseVarargs, 109.42 + enforceMandatoryWarnings, "varargs"); 109.43 sunApiHandler = new MandatoryWarningHandler(log, verboseSunApi, 109.44 enforceMandatoryWarnings, "sunapi"); 109.45 } 109.46 @@ -148,7 +153,11 @@ 109.47 */ 109.48 private MandatoryWarningHandler uncheckedHandler; 109.49 109.50 - /** A handler for messages about using Sun proprietary API. 109.51 + /** A handler for messages about unchecked or unsafe vararg method decl. 109.52 + */ 109.53 + private MandatoryWarningHandler unsafeVarargsHandler; 109.54 + 109.55 + /** A handler for messages about using proprietary API. 109.56 */ 109.57 private MandatoryWarningHandler sunApiHandler; 109.58 109.59 @@ -180,7 +189,16 @@ 109.60 uncheckedHandler.report(pos, msg, args); 109.61 } 109.62 109.63 - /** Warn about using Sun proprietary API. 109.64 + /** Warn about unsafe vararg method decl. 109.65 + * @param pos Position to be used for error reporting. 109.66 + * @param sym The deprecated symbol. 109.67 + */ 109.68 + void warnUnsafeVararg(DiagnosticPosition pos, Type elemType) { 109.69 + if (!lint.isSuppressed(LintCategory.VARARGS)) 109.70 + unsafeVarargsHandler.report(pos, "varargs.non.reifiable.type", elemType); 109.71 + } 109.72 + 109.73 + /** Warn about using proprietary API. 109.74 * @param pos Position to be used for error reporting. 109.75 * @param msg A string describing the problem. 109.76 */ 109.77 @@ -200,6 +218,7 @@ 109.78 public void reportDeferredDiagnostics() { 109.79 deprecationHandler.reportDeferredDiagnostic(); 109.80 uncheckedHandler.reportDeferredDiagnostic(); 109.81 + unsafeVarargsHandler.reportDeferredDiagnostic(); 109.82 sunApiHandler.reportDeferredDiagnostic(); 109.83 } 109.84 109.85 @@ -210,7 +229,8 @@ 109.86 */ 109.87 public Type completionError(DiagnosticPosition pos, CompletionFailure ex) { 109.88 log.error(pos, "cant.access", ex.sym, ex.getDetailValue()); 109.89 - if (ex instanceof ClassReader.BadClassFile) throw new Abort(); 109.90 + if (ex instanceof ClassReader.BadClassFile 109.91 + && !suppressAbortOnBadClassFile) throw new Abort(); 109.92 else return syms.errType; 109.93 } 109.94 109.95 @@ -677,17 +697,33 @@ 109.96 } 109.97 } 109.98 109.99 + void checkVarargMethodDecl(JCMethodDecl tree) { 109.100 + MethodSymbol m = tree.sym; 109.101 + //check the element type of the vararg 109.102 + if (m.isVarArgs()) { 109.103 + Type varargElemType = types.elemtype(tree.params.last().type); 109.104 + if (!types.isReifiable(varargElemType)) { 109.105 + warnUnsafeVararg(tree.params.head.pos(), varargElemType); 109.106 + } 109.107 + } 109.108 + } 109.109 + 109.110 /** 109.111 * Check that vararg method call is sound 109.112 * @param pos Position to be used for error reporting. 109.113 * @param argtypes Actual arguments supplied to vararg method. 109.114 */ 109.115 - void checkVararg(DiagnosticPosition pos, List<Type> argtypes) { 109.116 + void checkVararg(DiagnosticPosition pos, List<Type> argtypes, Symbol msym, Env<AttrContext> env) { 109.117 + Env<AttrContext> calleeLintEnv = env; 109.118 + while (calleeLintEnv.info.lint == null) 109.119 + calleeLintEnv = calleeLintEnv.next; 109.120 + Lint calleeLint = calleeLintEnv.info.lint.augment(msym.attributes_field, msym.flags()); 109.121 Type argtype = argtypes.last(); 109.122 - if (!types.isReifiable(argtype)) 109.123 + if (!types.isReifiable(argtype) && !calleeLint.isSuppressed(Lint.LintCategory.VARARGS)) { 109.124 warnUnchecked(pos, 109.125 "unchecked.generic.array.creation", 109.126 argtype); 109.127 + } 109.128 } 109.129 109.130 /** Check that given modifiers are legal for given symbol and
110.1 --- a/src/share/classes/com/sun/tools/javac/comp/ConstFold.java Thu Jun 17 16:28:21 2010 -0700 110.2 +++ b/src/share/classes/com/sun/tools/javac/comp/ConstFold.java Mon Jun 21 22:09:18 2010 -0700 110.3 @@ -37,8 +37,8 @@ 110.4 /** Helper class for constant folding, used by the attribution phase. 110.5 * This class is marked strictfp as mandated by JLS 15.4. 110.6 * 110.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 110.8 - * you write code that depends on this, you do so at your own risk. 110.9 + * <p><b>This is NOT part of any supported API. 110.10 + * If you write code that depends on this, you do so at your own risk. 110.11 * This code and its internal interfaces are subject to change or 110.12 * deletion without notice.</b> 110.13 */
111.1 --- a/src/share/classes/com/sun/tools/javac/comp/Enter.java Thu Jun 17 16:28:21 2010 -0700 111.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Enter.java Mon Jun 21 22:09:18 2010 -0700 111.3 @@ -82,8 +82,8 @@ 111.4 * (only for toplevel classes) 111.5 * </pre> 111.6 * 111.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 111.8 - * you write code that depends on this, you do so at your own risk. 111.9 + * <p><b>This is NOT part of any supported API. 111.10 + * If you write code that depends on this, you do so at your own risk. 111.11 * This code and its internal interfaces are subject to change or 111.12 * deletion without notice.</b> 111.13 */
112.1 --- a/src/share/classes/com/sun/tools/javac/comp/Env.java Thu Jun 17 16:28:21 2010 -0700 112.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Env.java Mon Jun 21 22:09:18 2010 -0700 112.3 @@ -36,8 +36,8 @@ 112.4 * a generic component, represented as a type parameter, to carry further 112.5 * information specific to individual passes. 112.6 * 112.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 112.8 - * you write code that depends on this, you do so at your own risk. 112.9 + * <p><b>This is NOT part of any supported API. 112.10 + * If you write code that depends on this, you do so at your own risk. 112.11 * This code and its internal interfaces are subject to change or 112.12 * deletion without notice.</b> 112.13 */
113.1 --- a/src/share/classes/com/sun/tools/javac/comp/Flow.java Thu Jun 17 16:28:21 2010 -0700 113.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Flow.java Mon Jun 21 22:09:18 2010 -0700 113.3 @@ -170,8 +170,8 @@ 113.4 * allow unqualified forms only, parentheses optional, and phase out 113.5 * support for assigning to a final field via this.x. 113.6 * 113.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 113.8 - * you write code that depends on this, you do so at your own risk. 113.9 + * <p><b>This is NOT part of any supported API. 113.10 + * If you write code that depends on this, you do so at your own risk. 113.11 * This code and its internal interfaces are subject to change or 113.12 * deletion without notice.</b> 113.13 */
114.1 --- a/src/share/classes/com/sun/tools/javac/comp/Infer.java Thu Jun 17 16:28:21 2010 -0700 114.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Infer.java Mon Jun 21 22:09:18 2010 -0700 114.3 @@ -37,8 +37,8 @@ 114.4 114.5 /** Helper class for type parameter inference, used by the attribution phase. 114.6 * 114.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 114.8 - * you write code that depends on this, you do so at your own risk. 114.9 + * <p><b>This is NOT part of any supported API. 114.10 + * If you write code that depends on this, you do so at your own risk. 114.11 * This code and its internal interfaces are subject to change or 114.12 * deletion without notice.</b> 114.13 */ 114.14 @@ -290,6 +290,7 @@ 114.15 public Type instantiateMethod(final Env<AttrContext> env, 114.16 List<Type> tvars, 114.17 MethodType mt, 114.18 + final Symbol msym, 114.19 final List<Type> argtypes, 114.20 final boolean allowBoxing, 114.21 final boolean useVarargs, 114.22 @@ -418,7 +419,7 @@ 114.23 checkWithinBounds(all_tvars, 114.24 types.subst(inferredTypes, tvars, inferred), warn); 114.25 if (useVarargs) { 114.26 - chk.checkVararg(env.tree.pos(), formals); 114.27 + chk.checkVararg(env.tree.pos(), formals, msym, env); 114.28 } 114.29 return super.inst(inferred, types); 114.30 }};
115.1 --- a/src/share/classes/com/sun/tools/javac/comp/Lower.java Thu Jun 17 16:28:21 2010 -0700 115.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Lower.java Mon Jun 21 22:09:18 2010 -0700 115.3 @@ -48,8 +48,8 @@ 115.4 /** This pass translates away some syntactic sugar: inner classes, 115.5 * class literals, assertions, foreach loops, etc. 115.6 * 115.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 115.8 - * you write code that depends on this, you do so at your own risk. 115.9 + * <p><b>This is NOT part of any supported API. 115.10 + * If you write code that depends on this, you do so at your own risk. 115.11 * This code and its internal interfaces are subject to change or 115.12 * deletion without notice.</b> 115.13 */
116.1 --- a/src/share/classes/com/sun/tools/javac/comp/MemberEnter.java Thu Jun 17 16:28:21 2010 -0700 116.2 +++ b/src/share/classes/com/sun/tools/javac/comp/MemberEnter.java Mon Jun 21 22:09:18 2010 -0700 116.3 @@ -48,8 +48,8 @@ 116.4 * by entering their members into the class scope using 116.5 * MemberEnter.complete(). See Enter for an overview. 116.6 * 116.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 116.8 - * you write code that depends on this, you do so at your own risk. 116.9 + * <p><b>This is NOT part of any supported API. 116.10 + * If you write code that depends on this, you do so at your own risk. 116.11 * This code and its internal interfaces are subject to change or 116.12 * deletion without notice.</b> 116.13 */
117.1 --- a/src/share/classes/com/sun/tools/javac/comp/Resolve.java Thu Jun 17 16:28:21 2010 -0700 117.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Resolve.java Mon Jun 21 22:09:18 2010 -0700 117.3 @@ -47,8 +47,8 @@ 117.4 117.5 /** Helper class for name resolution, used mostly by the attribution phase. 117.6 * 117.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 117.8 - * you write code that depends on this, you do so at your own risk. 117.9 + * <p><b>This is NOT part of any supported API. 117.10 + * If you write code that depends on this, you do so at your own risk. 117.11 * This code and its internal interfaces are subject to change or 117.12 * deletion without notice.</b> 117.13 */ 117.14 @@ -348,6 +348,7 @@ 117.15 infer.instantiateMethod(env, 117.16 tvars, 117.17 (MethodType)mt, 117.18 + m, 117.19 argtypes, 117.20 allowBoxing, 117.21 useVarargs,
118.1 --- a/src/share/classes/com/sun/tools/javac/comp/Todo.java Thu Jun 17 16:28:21 2010 -0700 118.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Todo.java Mon Jun 21 22:09:18 2010 -0700 118.3 @@ -36,8 +36,8 @@ 118.4 118.5 /** A queue of all as yet unattributed classes. 118.6 * 118.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 118.8 - * you write code that depends on this, you do so at your own risk. 118.9 + * <p><b>This is NOT part of any supported API. 118.10 + * If you write code that depends on this, you do so at your own risk. 118.11 * This code and its internal interfaces are subject to change or 118.12 * deletion without notice.</b> 118.13 */
119.1 --- a/src/share/classes/com/sun/tools/javac/comp/TransTypes.java Thu Jun 17 16:28:21 2010 -0700 119.2 +++ b/src/share/classes/com/sun/tools/javac/comp/TransTypes.java Mon Jun 21 22:09:18 2010 -0700 119.3 @@ -43,8 +43,8 @@ 119.4 119.5 /** This pass translates Generic Java to conventional Java. 119.6 * 119.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 119.8 - * you write code that depends on this, you do so at your own risk. 119.9 + * <p><b>This is NOT part of any supported API. 119.10 + * If you write code that depends on this, you do so at your own risk. 119.11 * This code and its internal interfaces are subject to change or 119.12 * deletion without notice.</b> 119.13 */
120.1 --- a/src/share/classes/com/sun/tools/javac/file/BaseFileObject.java Thu Jun 17 16:28:21 2010 -0700 120.2 +++ b/src/share/classes/com/sun/tools/javac/file/BaseFileObject.java Mon Jun 21 22:09:18 2010 -0700 120.3 @@ -42,7 +42,7 @@ 120.4 import com.sun.tools.javac.util.BaseFileManager; 120.5 120.6 /** 120.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 120.8 + * <p><b>This is NOT part of any supported API. 120.9 * If you write code that depends on this, you do so at your own risk. 120.10 * This code and its internal interfaces are subject to change or 120.11 * deletion without notice.</b>
121.1 --- a/src/share/classes/com/sun/tools/javac/file/CacheFSInfo.java Thu Jun 17 16:28:21 2010 -0700 121.2 +++ b/src/share/classes/com/sun/tools/javac/file/CacheFSInfo.java Mon Jun 21 22:09:18 2010 -0700 121.3 @@ -36,7 +36,7 @@ 121.4 /** 121.5 * Caching implementation of FSInfo. 121.6 * 121.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 121.8 + * <p><b>This is NOT part of any supported API. 121.9 * If you write code that depends on this, you do so at your own risk. 121.10 * This code and its internal interfaces are subject to change or 121.11 * deletion without notice.</b>
122.1 --- a/src/share/classes/com/sun/tools/javac/file/FSInfo.java Thu Jun 17 16:28:21 2010 -0700 122.2 +++ b/src/share/classes/com/sun/tools/javac/file/FSInfo.java Mon Jun 21 22:09:18 2010 -0700 122.3 @@ -17,7 +17,7 @@ 122.4 * Get meta-info about files. Default direct (non-caching) implementation. 122.5 * @see CacheFSInfo 122.6 * 122.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 122.8 + * <p><b>This is NOT part of any supported API. 122.9 * If you write code that depends on this, you do so at your own risk. 122.10 * This code and its internal interfaces are subject to change or 122.11 * deletion without notice.</b>
123.1 --- a/src/share/classes/com/sun/tools/javac/file/JavacFileManager.java Thu Jun 17 16:28:21 2010 -0700 123.2 +++ b/src/share/classes/com/sun/tools/javac/file/JavacFileManager.java Mon Jun 21 22:09:18 2010 -0700 123.3 @@ -68,7 +68,7 @@ 123.4 * This class provides access to the source, class and other files 123.5 * used by the compiler and related tools. 123.6 * 123.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 123.8 + * <p><b>This is NOT part of any supported API. 123.9 * If you write code that depends on this, you do so at your own risk. 123.10 * This code and its internal interfaces are subject to change or 123.11 * deletion without notice.</b>
124.1 --- a/src/share/classes/com/sun/tools/javac/file/Paths.java Thu Jun 17 16:28:21 2010 -0700 124.2 +++ b/src/share/classes/com/sun/tools/javac/file/Paths.java Mon Jun 21 22:09:18 2010 -0700 124.3 @@ -54,8 +54,8 @@ 124.4 * into a boot class path, user class path, and source path (in 124.5 * Collection<String> form). 124.6 * 124.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 124.8 - * you write code that depends on this, you do so at your own risk. 124.9 + * <p><b>This is NOT part of any supported API. 124.10 + * If you write code that depends on this, you do so at your own risk. 124.11 * This code and its internal interfaces are subject to change or 124.12 * deletion without notice.</b> 124.13 */
125.1 --- a/src/share/classes/com/sun/tools/javac/file/RegularFileObject.java Thu Jun 17 16:28:21 2010 -0700 125.2 +++ b/src/share/classes/com/sun/tools/javac/file/RegularFileObject.java Mon Jun 21 22:09:18 2010 -0700 125.3 @@ -44,7 +44,7 @@ 125.4 /** 125.5 * A subclass of JavaFileObject representing regular files. 125.6 * 125.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 125.8 + * <p><b>This is NOT part of any supported API. 125.9 * If you write code that depends on this, you do so at your own risk. 125.10 * This code and its internal interfaces are subject to change or 125.11 * deletion without notice.</b>
126.1 --- a/src/share/classes/com/sun/tools/javac/file/RelativePath.java Thu Jun 17 16:28:21 2010 -0700 126.2 +++ b/src/share/classes/com/sun/tools/javac/file/RelativePath.java Mon Jun 21 22:09:18 2010 -0700 126.3 @@ -35,7 +35,7 @@ 126.4 * container, such as a directory or zip file. 126.5 * Internally, the file separator is always '/'. 126.6 * 126.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 126.8 + * <p><b>This is NOT part of any supported API. 126.9 * If you write code that depends on this, you do so at your own risk. 126.10 * This code and its internal interfaces are subject to change or 126.11 * deletion without notice.</b>
127.1 --- a/src/share/classes/com/sun/tools/javac/file/SymbolArchive.java Thu Jun 17 16:28:21 2010 -0700 127.2 +++ b/src/share/classes/com/sun/tools/javac/file/SymbolArchive.java Mon Jun 21 22:09:18 2010 -0700 127.3 @@ -36,7 +36,7 @@ 127.4 import com.sun.tools.javac.util.List; 127.5 127.6 /** 127.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 127.8 + * <p><b>This is NOT part of any supported API. 127.9 * If you write code that depends on this, you do so at your own risk. 127.10 * This code and its internal interfaces are subject to change or 127.11 * deletion without notice.</b>
128.1 --- a/src/share/classes/com/sun/tools/javac/file/ZipArchive.java Thu Jun 17 16:28:21 2010 -0700 128.2 +++ b/src/share/classes/com/sun/tools/javac/file/ZipArchive.java Mon Jun 21 22:09:18 2010 -0700 128.3 @@ -51,7 +51,7 @@ 128.4 import java.lang.ref.SoftReference; 128.5 128.6 /** 128.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 128.8 + * <p><b>This is NOT part of any supported API. 128.9 * If you write code that depends on this, you do so at your own risk. 128.10 * This code and its internal interfaces are subject to change or 128.11 * deletion without notice.</b>
129.1 --- a/src/share/classes/com/sun/tools/javac/file/ZipFileIndex.java Thu Jun 17 16:28:21 2010 -0700 129.2 +++ b/src/share/classes/com/sun/tools/javac/file/ZipFileIndex.java Mon Jun 21 22:09:18 2010 -0700 129.3 @@ -69,7 +69,7 @@ 129.4 * checking to reindex the zip files if it is needed. In batch mode the timestamps are not checked 129.5 * and the compiler uses the cached indexes. 129.6 * 129.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 129.8 + * <p><b>This is NOT part of any supported API. 129.9 * If you write code that depends on this, you do so at your own risk. 129.10 * This code and its internal interfaces are subject to change or 129.11 * deletion without notice.</b>
130.1 --- a/src/share/classes/com/sun/tools/javac/file/ZipFileIndexArchive.java Thu Jun 17 16:28:21 2010 -0700 130.2 +++ b/src/share/classes/com/sun/tools/javac/file/ZipFileIndexArchive.java Mon Jun 21 22:09:18 2010 -0700 130.3 @@ -45,7 +45,7 @@ 130.4 import com.sun.tools.javac.util.List; 130.5 130.6 /** 130.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 130.8 + * <p><b>This is NOT part of any supported API. 130.9 * If you write code that depends on this, you do so at your own risk. 130.10 * This code and its internal interfaces are subject to change or 130.11 * deletion without notice.</b>
131.1 --- a/src/share/classes/com/sun/tools/javac/jvm/ByteCodes.java Thu Jun 17 16:28:21 2010 -0700 131.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/ByteCodes.java Mon Jun 21 22:09:18 2010 -0700 131.3 @@ -29,8 +29,8 @@ 131.4 /** Bytecode instruction codes, as well as typecodes used as 131.5 * instruction modifiers. 131.6 * 131.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 131.8 - * you write code that depends on this, you do so at your own risk. 131.9 + * <p><b>This is NOT part of any supported API. 131.10 + * If you write code that depends on this, you do so at your own risk. 131.11 * This code and its internal interfaces are subject to change or 131.12 * deletion without notice.</b> 131.13 */
132.1 --- a/src/share/classes/com/sun/tools/javac/jvm/CRTFlags.java Thu Jun 17 16:28:21 2010 -0700 132.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/CRTFlags.java Mon Jun 21 22:09:18 2010 -0700 132.3 @@ -28,8 +28,8 @@ 132.4 132.5 /** The CharacterRangeTable flags indicating type of an entry. 132.6 * 132.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 132.8 - * you write code that depends on this, you do so at your own risk. 132.9 + * <p><b>This is NOT part of any supported API. 132.10 + * If you write code that depends on this, you do so at your own risk. 132.11 * This code and its internal interfaces are subject to change or 132.12 * deletion without notice.</b> 132.13 */
133.1 --- a/src/share/classes/com/sun/tools/javac/jvm/CRTable.java Thu Jun 17 16:28:21 2010 -0700 133.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/CRTable.java Mon Jun 21 22:09:18 2010 -0700 133.3 @@ -36,8 +36,8 @@ 133.4 * and the hashtable for mapping trees or lists of trees to their 133.5 * ending positions. 133.6 * 133.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 133.8 - * you write code that depends on this, you do so at your own risk. 133.9 + * <p><b>This is NOT part of any supported API. 133.10 + * If you write code that depends on this, you do so at your own risk. 133.11 * This code and its internal interfaces are subject to change or 133.12 * deletion without notice.</b> 133.13 */
134.1 --- a/src/share/classes/com/sun/tools/javac/jvm/ClassFile.java Thu Jun 17 16:28:21 2010 -0700 134.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/ClassFile.java Mon Jun 21 22:09:18 2010 -0700 134.3 @@ -59,8 +59,8 @@ 134.4 * as routines to convert between internal ``.'' and external ``/'' 134.5 * separators in class names. 134.6 * 134.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 134.8 - * you write code that depends on this, you do so at your own risk. 134.9 + * <p><b>This is NOT part of any supported API. 134.10 + * If you write code that depends on this, you do so at your own risk. 134.11 * This code and its internal interfaces are subject to change or 134.12 * deletion without notice.</b> */ 134.13 public class ClassFile {
135.1 --- a/src/share/classes/com/sun/tools/javac/jvm/ClassReader.java Thu Jun 17 16:28:21 2010 -0700 135.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/ClassReader.java Mon Jun 21 22:09:18 2010 -0700 135.3 @@ -62,8 +62,8 @@ 135.4 * for all other definitions in the classfile. Top-level Classes themselves 135.5 * appear as members of the scopes of PackageSymbols. 135.6 * 135.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 135.8 - * you write code that depends on this, you do so at your own risk. 135.9 + * <p><b>This is NOT part of any supported API. 135.10 + * If you write code that depends on this, you do so at your own risk. 135.11 * This code and its internal interfaces are subject to change or 135.12 * deletion without notice.</b> 135.13 */
136.1 --- a/src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java Thu Jun 17 16:28:21 2010 -0700 136.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java Mon Jun 21 22:09:18 2010 -0700 136.3 @@ -49,8 +49,8 @@ 136.4 /** This class provides operations to map an internal symbol table graph 136.5 * rooted in a ClassSymbol into a classfile. 136.6 * 136.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 136.8 - * you write code that depends on this, you do so at your own risk. 136.9 + * <p><b>This is NOT part of any supported API. 136.10 + * If you write code that depends on this, you do so at your own risk. 136.11 * This code and its internal interfaces are subject to change or 136.12 * deletion without notice.</b> 136.13 */
137.1 --- a/src/share/classes/com/sun/tools/javac/jvm/Code.java Thu Jun 17 16:28:21 2010 -0700 137.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/Code.java Mon Jun 21 22:09:18 2010 -0700 137.3 @@ -39,8 +39,8 @@ 137.4 * methods in a classfile. The class also provides some utility operations to 137.5 * generate bytecode instructions. 137.6 * 137.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 137.8 - * you write code that depends on this, you do so at your own risk. 137.9 + * <p><b>This is NOT part of any supported API. 137.10 + * If you write code that depends on this, you do so at your own risk. 137.11 * This code and its internal interfaces are subject to change or 137.12 * deletion without notice.</b> 137.13 */
138.1 --- a/src/share/classes/com/sun/tools/javac/jvm/Gen.java Thu Jun 17 16:28:21 2010 -0700 138.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/Gen.java Mon Jun 21 22:09:18 2010 -0700 138.3 @@ -49,8 +49,8 @@ 138.4 138.5 /** This pass maps flat Java (i.e. without inner classes) to bytecodes. 138.6 * 138.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 138.8 - * you write code that depends on this, you do so at your own risk. 138.9 + * <p><b>This is NOT part of any supported API. 138.10 + * If you write code that depends on this, you do so at your own risk. 138.11 * This code and its internal interfaces are subject to change or 138.12 * deletion without notice.</b> 138.13 */
139.1 --- a/src/share/classes/com/sun/tools/javac/jvm/Items.java Thu Jun 17 16:28:21 2010 -0700 139.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/Items.java Mon Jun 21 22:09:18 2010 -0700 139.3 @@ -43,8 +43,8 @@ 139.4 * special values this or super, etc. Individual items are represented as 139.5 * inner classes in class Items. 139.6 * 139.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 139.8 - * you write code that depends on this, you do so at your own risk. 139.9 + * <p><b>This is NOT part of any supported API. 139.10 + * If you write code that depends on this, you do so at your own risk. 139.11 * This code and its internal interfaces are subject to change or 139.12 * deletion without notice.</b> 139.13 */
140.1 --- a/src/share/classes/com/sun/tools/javac/jvm/Pool.java Thu Jun 17 16:28:21 2010 -0700 140.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/Pool.java Mon Jun 21 22:09:18 2010 -0700 140.3 @@ -31,8 +31,8 @@ 140.4 140.5 /** An internal structure that corresponds to the constant pool of a classfile. 140.6 * 140.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 140.8 - * you write code that depends on this, you do so at your own risk. 140.9 + * <p><b>This is NOT part of any supported API. 140.10 + * If you write code that depends on this, you do so at your own risk. 140.11 * This code and its internal interfaces are subject to change or 140.12 * deletion without notice.</b> 140.13 */
141.1 --- a/src/share/classes/com/sun/tools/javac/jvm/Target.java Thu Jun 17 16:28:21 2010 -0700 141.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/Target.java Mon Jun 21 22:09:18 2010 -0700 141.3 @@ -33,8 +33,8 @@ 141.4 141.5 /** The classfile version target. 141.6 * 141.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 141.8 - * you write code that depends on this, you do so at your own risk. 141.9 + * <p><b>This is NOT part of any supported API. 141.10 + * If you write code that depends on this, you do so at your own risk. 141.11 * This code and its internal interfaces are subject to change or 141.12 * deletion without notice.</b> 141.13 */
142.1 --- a/src/share/classes/com/sun/tools/javac/jvm/UninitializedType.java Thu Jun 17 16:28:21 2010 -0700 142.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/UninitializedType.java Mon Jun 21 22:09:18 2010 -0700 142.3 @@ -31,8 +31,8 @@ 142.4 /** These pseudo-types appear in the generated verifier tables to 142.5 * indicate objects that have been allocated but not yet constructed. 142.6 * 142.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 142.8 - * you write code that depends on this, you do so at your own risk. 142.9 + * <p><b>This is NOT part of any supported API. 142.10 + * If you write code that depends on this, you do so at your own risk. 142.11 * This code and its internal interfaces are subject to change or 142.12 * deletion without notice.</b> 142.13 */
143.1 --- a/src/share/classes/com/sun/tools/javac/main/CommandLine.java Thu Jun 17 16:28:21 2010 -0700 143.2 +++ b/src/share/classes/com/sun/tools/javac/main/CommandLine.java Mon Jun 21 22:09:18 2010 -0700 143.3 @@ -35,8 +35,8 @@ 143.4 /** 143.5 * Various utility methods for processing Java tool command line arguments. 143.6 * 143.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 143.8 - * you write code that depends on this, you do so at your own risk. 143.9 + * <p><b>This is NOT part of any supported API. 143.10 + * If you write code that depends on this, you do so at your own risk. 143.11 * This code and its internal interfaces are subject to change or 143.12 * deletion without notice.</b> 143.13 */
144.1 --- a/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Thu Jun 17 16:28:21 2010 -0700 144.2 +++ b/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Mon Jun 21 22:09:18 2010 -0700 144.3 @@ -73,8 +73,8 @@ 144.4 * construct a new compiler, and to run a new compiler on a set of source 144.5 * files. 144.6 * 144.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 144.8 - * you write code that depends on this, you do so at your own risk. 144.9 + * <p><b>This is NOT part of any supported API. 144.10 + * If you write code that depends on this, you do so at your own risk. 144.11 * This code and its internal interfaces are subject to change or 144.12 * deletion without notice.</b> 144.13 */
145.1 --- a/src/share/classes/com/sun/tools/javac/main/JavacOption.java Thu Jun 17 16:28:21 2010 -0700 145.2 +++ b/src/share/classes/com/sun/tools/javac/main/JavacOption.java Mon Jun 21 22:09:18 2010 -0700 145.3 @@ -34,7 +34,7 @@ 145.4 /** 145.5 * TODO: describe com.sun.tools.javac.main.JavacOption 145.6 * 145.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 145.8 + * <p><b>This is NOT part of any supported API. 145.9 * If you write code that depends on this, you do so at your own 145.10 * risk. This code and its internal interfaces are subject to change 145.11 * or deletion without notice.</b></p>
146.1 --- a/src/share/classes/com/sun/tools/javac/main/Main.java Thu Jun 17 16:28:21 2010 -0700 146.2 +++ b/src/share/classes/com/sun/tools/javac/main/Main.java Mon Jun 21 22:09:18 2010 -0700 146.3 @@ -47,8 +47,8 @@ 146.4 146.5 /** This class provides a commandline interface to the GJC compiler. 146.6 * 146.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 146.8 - * you write code that depends on this, you do so at your own risk. 146.9 + * <p><b>This is NOT part of any supported API. 146.10 + * If you write code that depends on this, you do so at your own risk. 146.11 * This code and its internal interfaces are subject to change or 146.12 * deletion without notice.</b> 146.13 */
147.1 --- a/src/share/classes/com/sun/tools/javac/main/OptionName.java Thu Jun 17 16:28:21 2010 -0700 147.2 +++ b/src/share/classes/com/sun/tools/javac/main/OptionName.java Mon Jun 21 22:09:18 2010 -0700 147.3 @@ -29,7 +29,7 @@ 147.4 /** 147.5 * TODO: describe com.sun.tools.javac.main.OptionName 147.6 * 147.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 147.8 + * <p><b>This is NOT part of any supported API. 147.9 * If you write code that depends on this, you do so at your own 147.10 * risk. This code and its internal interfaces are subject to change 147.11 * or deletion without notice.</b></p>
148.1 --- a/src/share/classes/com/sun/tools/javac/main/RecognizedOptions.java Thu Jun 17 16:28:21 2010 -0700 148.2 +++ b/src/share/classes/com/sun/tools/javac/main/RecognizedOptions.java Mon Jun 21 22:09:18 2010 -0700 148.3 @@ -49,7 +49,7 @@ 148.4 /** 148.5 * TODO: describe com.sun.tools.javac.main.RecognizedOptions 148.6 * 148.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 148.8 + * <p><b>This is NOT part of any supported API. 148.9 * If you write code that depends on this, you do so at your own 148.10 * risk. This code and its internal interfaces are subject to change 148.11 * or deletion without notice.</b></p>
149.1 --- a/src/share/classes/com/sun/tools/javac/model/AnnotationProxyMaker.java Thu Jun 17 16:28:21 2010 -0700 149.2 +++ b/src/share/classes/com/sun/tools/javac/model/AnnotationProxyMaker.java Mon Jun 21 22:09:18 2010 -0700 149.3 @@ -50,8 +50,8 @@ 149.4 * <p> The "dynamic proxy return form" of an annotation element value is 149.5 * the form used by sun.reflect.annotation.AnnotationInvocationHandler. 149.6 * 149.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 149.8 - * you write code that depends on this, you do so at your own risk. 149.9 + * <p><b>This is NOT part of any supported API. 149.10 + * If you write code that depends on this, you do so at your own risk. 149.11 * This code and its internal interfaces are subject to change or 149.12 * deletion without notice.</b> 149.13 */ 149.14 @@ -181,16 +181,16 @@ 149.15 } 149.16 149.17 public void visitArray(Attribute.Array a) { 149.18 - Name elemName = ((ArrayType) a.type).elemtype.tsym.name; 149.19 + Name elemName = ((ArrayType) a.type).elemtype.tsym.getQualifiedName(); 149.20 149.21 - if (elemName == elemName.table.names.java_lang_Class) { // Class[] 149.22 + if (elemName.equals(elemName.table.names.java_lang_Class)) { // Class[] 149.23 // Construct a proxy for a MirroredTypesException 149.24 - List<TypeMirror> elems = List.nil(); 149.25 + ListBuffer<TypeMirror> elems = new ListBuffer<TypeMirror>(); 149.26 for (Attribute value : a.values) { 149.27 Type elem = ((Attribute.Class) value).type; 149.28 - elems.add(elem); 149.29 + elems.append(elem); 149.30 } 149.31 - value = new MirroredTypesExceptionProxy(elems); 149.32 + value = new MirroredTypesExceptionProxy(elems.toList()); 149.33 149.34 } else { 149.35 int len = a.values.length;
150.1 --- a/src/share/classes/com/sun/tools/javac/model/FilteredMemberList.java Thu Jun 17 16:28:21 2010 -0700 150.2 +++ b/src/share/classes/com/sun/tools/javac/model/FilteredMemberList.java Mon Jun 21 22:09:18 2010 -0700 150.3 @@ -38,8 +38,8 @@ 150.4 * filtering out unwanted elements such as synthetic ones. 150.5 * This view is most efficiently accessed through its iterator() method. 150.6 * 150.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 150.8 - * you write code that depends on this, you do so at your own risk. 150.9 + * <p><b>This is NOT part of any supported API. 150.10 + * If you write code that depends on this, you do so at your own risk. 150.11 * This code and its internal interfaces are subject to change or 150.12 * deletion without notice.</b> 150.13 */
151.1 --- a/src/share/classes/com/sun/tools/javac/model/JavacElements.java Thu Jun 17 16:28:21 2010 -0700 151.2 +++ b/src/share/classes/com/sun/tools/javac/model/JavacElements.java Mon Jun 21 22:09:18 2010 -0700 151.3 @@ -53,7 +53,7 @@ 151.4 /** 151.5 * Utility methods for operating on program elements. 151.6 * 151.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 151.8 + * <p><b>This is NOT part of any supported API. 151.9 * If you write code that depends on this, you do so at your own 151.10 * risk. This code and its internal interfaces are subject to change 151.11 * or deletion without notice.</b></p>
152.1 --- a/src/share/classes/com/sun/tools/javac/model/JavacSourcePosition.java Thu Jun 17 16:28:21 2010 -0700 152.2 +++ b/src/share/classes/com/sun/tools/javac/model/JavacSourcePosition.java Mon Jun 21 22:09:18 2010 -0700 152.3 @@ -31,7 +31,7 @@ 152.4 /** 152.5 * Implementation of model API SourcePosition based on javac internal state. 152.6 * 152.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 152.8 + * <p><b>This is NOT part of any supported API. 152.9 * If you write code that depends on this, you do so at your own 152.10 * risk. This code and its internal interfaces are subject to change 152.11 * or deletion without notice.</b></p>
153.1 --- a/src/share/classes/com/sun/tools/javac/model/JavacTypes.java Thu Jun 17 16:28:21 2010 -0700 153.2 +++ b/src/share/classes/com/sun/tools/javac/model/JavacTypes.java Mon Jun 21 22:09:18 2010 -0700 153.3 @@ -37,7 +37,7 @@ 153.4 /** 153.5 * Utility methods for operating on types. 153.6 * 153.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 153.8 + * <p><b>This is NOT part of any supported API. 153.9 * If you write code that depends on this, you do so at your own 153.10 * risk. This code and its internal interfaces are subject to change 153.11 * or deletion without notice.</b></p>
154.1 --- a/src/share/classes/com/sun/tools/javac/nio/JavacPathFileManager.java Thu Jun 17 16:28:21 2010 -0700 154.2 +++ b/src/share/classes/com/sun/tools/javac/nio/JavacPathFileManager.java Mon Jun 21 22:09:18 2010 -0700 154.3 @@ -101,8 +101,8 @@ 154.4 * <p>To reduce confusion with Path objects, the locations such as "class path", 154.5 * "source path", etc, are generically referred to here as "search paths". 154.6 * 154.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 154.8 - * you write code that depends on this, you do so at your own risk. 154.9 + * <p><b>This is NOT part of any supported API. 154.10 + * If you write code that depends on this, you do so at your own risk. 154.11 * This code and its internal interfaces are subject to change or 154.12 * deletion without notice.</b> 154.13 */
155.1 --- a/src/share/classes/com/sun/tools/javac/nio/PathFileManager.java Thu Jun 17 16:28:21 2010 -0700 155.2 +++ b/src/share/classes/com/sun/tools/javac/nio/PathFileManager.java Mon Jun 21 22:09:18 2010 -0700 155.3 @@ -41,8 +41,8 @@ 155.4 * getStandardFileManager}. However, would need to be handled carefully 155.5 * as another forward reference from langtools to jdk. 155.6 * 155.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 155.8 - * you write code that depends on this, you do so at your own risk. 155.9 + * <p><b>This is NOT part of any supported API. 155.10 + * If you write code that depends on this, you do so at your own risk. 155.11 * This code and its internal interfaces are subject to change or 155.12 * deletion without notice.</b> 155.13 */
156.1 --- a/src/share/classes/com/sun/tools/javac/nio/PathFileObject.java Thu Jun 17 16:28:21 2010 -0700 156.2 +++ b/src/share/classes/com/sun/tools/javac/nio/PathFileObject.java Mon Jun 21 22:09:18 2010 -0700 156.3 @@ -56,8 +56,8 @@ 156.4 * different factory methods, which compute the binary name based on 156.5 * information available at the time the file object is created. 156.6 * 156.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 156.8 - * you write code that depends on this, you do so at your own risk. 156.9 + * <p><b>This is NOT part of any supported API. 156.10 + * If you write code that depends on this, you do so at your own risk. 156.11 * This code and its internal interfaces are subject to change or 156.12 * deletion without notice.</b> 156.13 */
157.1 --- a/src/share/classes/com/sun/tools/javac/parser/DocCommentScanner.java Thu Jun 17 16:28:21 2010 -0700 157.2 +++ b/src/share/classes/com/sun/tools/javac/parser/DocCommentScanner.java Mon Jun 21 22:09:18 2010 -0700 157.3 @@ -35,8 +35,8 @@ 157.4 * translating Unicode escape sequences and by stripping the 157.5 * leading whitespace and starts from each line of the comment. 157.6 * 157.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 157.8 - * you write code that depends on this, you do so at your own risk. 157.9 + * <p><b>This is NOT part of any supported API. 157.10 + * If you write code that depends on this, you do so at your own risk. 157.11 * This code and its internal interfaces are subject to change or 157.12 * deletion without notice.</b> 157.13 */
158.1 --- a/src/share/classes/com/sun/tools/javac/parser/EndPosParser.java Thu Jun 17 16:28:21 2010 -0700 158.2 +++ b/src/share/classes/com/sun/tools/javac/parser/EndPosParser.java Mon Jun 21 22:09:18 2010 -0700 158.3 @@ -36,7 +36,7 @@ 158.4 * This class is similar to Parser except that it stores ending 158.5 * positions for the tree nodes. 158.6 * 158.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 158.8 + * <p><b>This is NOT part of any supported API. 158.9 * If you write code that depends on this, you do so at your own risk. 158.10 * This code and its internal interfaces are subject to change or 158.11 * deletion without notice.</b></p>
159.1 --- a/src/share/classes/com/sun/tools/javac/parser/JavacParser.java Thu Jun 17 16:28:21 2010 -0700 159.2 +++ b/src/share/classes/com/sun/tools/javac/parser/JavacParser.java Mon Jun 21 22:09:18 2010 -0700 159.3 @@ -43,8 +43,8 @@ 159.4 * operator precedence scheme is used for parsing binary operation 159.5 * expressions. 159.6 * 159.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 159.8 - * you write code that depends on this, you do so at your own risk. 159.9 + * <p><b>This is NOT part of any supported API. 159.10 + * If you write code that depends on this, you do so at your own risk. 159.11 * This code and its internal interfaces are subject to change or 159.12 * deletion without notice.</b> 159.13 */
160.1 --- a/src/share/classes/com/sun/tools/javac/parser/Keywords.java Thu Jun 17 16:28:21 2010 -0700 160.2 +++ b/src/share/classes/com/sun/tools/javac/parser/Keywords.java Mon Jun 21 22:09:18 2010 -0700 160.3 @@ -35,7 +35,7 @@ 160.4 /** 160.5 * Map from Name to Token and Token to String. 160.6 * 160.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 160.8 + * <p><b>This is NOT part of any supported API. 160.9 * If you write code that depends on this, you do so at your own risk. 160.10 * This code and its internal interfaces are subject to change or 160.11 * deletion without notice.</b>
161.1 --- a/src/share/classes/com/sun/tools/javac/parser/Lexer.java Thu Jun 17 16:28:21 2010 -0700 161.2 +++ b/src/share/classes/com/sun/tools/javac/parser/Lexer.java Mon Jun 21 22:09:18 2010 -0700 161.3 @@ -32,7 +32,7 @@ 161.4 * The lexical analyzer maps an input stream consisting of ASCII 161.5 * characters and Unicode escapes into a token sequence. 161.6 * 161.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 161.8 + * <p><b>This is NOT part of any supported API. 161.9 * If you write code that depends on this, you do so at your own risk. 161.10 * This code and its internal interfaces are subject to change or 161.11 * deletion without notice.</b>
162.1 --- a/src/share/classes/com/sun/tools/javac/parser/Parser.java Thu Jun 17 16:28:21 2010 -0700 162.2 +++ b/src/share/classes/com/sun/tools/javac/parser/Parser.java Mon Jun 21 22:09:18 2010 -0700 162.3 @@ -34,7 +34,7 @@ 162.4 * Reads syntactic units from source code. 162.5 * Parsers are normally created from a ParserFactory. 162.6 * 162.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 162.8 + * <p><b>This is NOT part of any supported API. 162.9 * If you write code that depends on this, you do so at your own risk. 162.10 * This code and its internal interfaces are subject to change or 162.11 * deletion without notice.</b>
163.1 --- a/src/share/classes/com/sun/tools/javac/parser/ParserFactory.java Thu Jun 17 16:28:21 2010 -0700 163.2 +++ b/src/share/classes/com/sun/tools/javac/parser/ParserFactory.java Mon Jun 21 22:09:18 2010 -0700 163.3 @@ -35,7 +35,7 @@ 163.4 /** 163.5 * A factory for creating parsers. 163.6 * 163.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 163.8 + * <p><b>This is NOT part of any supported API. 163.9 * If you write code that depends on this, you do so at your own risk. 163.10 * This code and its internal interfaces are subject to change or 163.11 * deletion without notice.</b>
164.1 --- a/src/share/classes/com/sun/tools/javac/parser/Scanner.java Thu Jun 17 16:28:21 2010 -0700 164.2 +++ b/src/share/classes/com/sun/tools/javac/parser/Scanner.java Mon Jun 21 22:09:18 2010 -0700 164.3 @@ -38,8 +38,8 @@ 164.4 /** The lexical analyzer maps an input stream consisting of 164.5 * ASCII characters and Unicode escapes into a token sequence. 164.6 * 164.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 164.8 - * you write code that depends on this, you do so at your own risk. 164.9 + * <p><b>This is NOT part of any supported API. 164.10 + * If you write code that depends on this, you do so at your own risk. 164.11 * This code and its internal interfaces are subject to change or 164.12 * deletion without notice.</b> 164.13 */
165.1 --- a/src/share/classes/com/sun/tools/javac/parser/Token.java Thu Jun 17 16:28:21 2010 -0700 165.2 +++ b/src/share/classes/com/sun/tools/javac/parser/Token.java Mon Jun 21 22:09:18 2010 -0700 165.3 @@ -33,8 +33,8 @@ 165.4 /** An interface that defines codes for Java source tokens 165.5 * returned from lexical analysis. 165.6 * 165.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 165.8 - * you write code that depends on this, you do so at your own risk. 165.9 + * <p><b>This is NOT part of any supported API. 165.10 + * If you write code that depends on this, you do so at your own risk. 165.11 * This code and its internal interfaces are subject to change or 165.12 * deletion without notice.</b> 165.13 */
166.1 --- a/src/share/classes/com/sun/tools/javac/processing/AnnotationProcessingError.java Thu Jun 17 16:28:21 2010 -0700 166.2 +++ b/src/share/classes/com/sun/tools/javac/processing/AnnotationProcessingError.java Mon Jun 21 22:09:18 2010 -0700 166.3 @@ -29,7 +29,7 @@ 166.4 /** 166.5 * Error thrown for problems encountered during annotation processing. 166.6 * 166.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 166.8 + * <p><b>This is NOT part of any supported API. 166.9 * If you write code that depends on this, you do so at your own risk. 166.10 * This code and its internal interfaces are subject to change or 166.11 * deletion without notice.</b>
167.1 --- a/src/share/classes/com/sun/tools/javac/processing/JavacFiler.java Thu Jun 17 16:28:21 2010 -0700 167.2 +++ b/src/share/classes/com/sun/tools/javac/processing/JavacFiler.java Mon Jun 21 22:09:18 2010 -0700 167.3 @@ -87,7 +87,7 @@ 167.4 * class path can alter the behavior of the tool and any final 167.5 * compile. 167.6 * 167.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 167.8 + * <p><b>This is NOT part of any supported API. 167.9 * If you write code that depends on this, you do so at your own risk. 167.10 * This code and its internal interfaces are subject to change or 167.11 * deletion without notice.</b>
168.1 --- a/src/share/classes/com/sun/tools/javac/processing/JavacMessager.java Thu Jun 17 16:28:21 2010 -0700 168.2 +++ b/src/share/classes/com/sun/tools/javac/processing/JavacMessager.java Mon Jun 21 22:09:18 2010 -0700 168.3 @@ -37,7 +37,7 @@ 168.4 /** 168.5 * An implementation of the Messager built on top of log. 168.6 * 168.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 168.8 + * <p><b>This is NOT part of any supported API. 168.9 * If you write code that depends on this, you do so at your own risk. 168.10 * This code and its internal interfaces are subject to change or 168.11 * deletion without notice.</b>
169.1 --- a/src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java Thu Jun 17 16:28:21 2010 -0700 169.2 +++ b/src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java Mon Jun 21 22:09:18 2010 -0700 169.3 @@ -81,7 +81,7 @@ 169.4 * Objects of this class hold and manage the state needed to support 169.5 * annotation processing. 169.6 * 169.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 169.8 + * <p><b>This is NOT part of any supported API. 169.9 * If you write code that depends on this, you do so at your own risk. 169.10 * This code and its internal interfaces are subject to change or 169.11 * deletion without notice.</b> 169.12 @@ -745,7 +745,7 @@ 169.13 * Leave class public for external testing purposes. 169.14 */ 169.15 public static class ComputeAnnotationSet extends 169.16 - ElementScanner6<Set<TypeElement>, Set<TypeElement>> { 169.17 + ElementScanner7<Set<TypeElement>, Set<TypeElement>> { 169.18 final Elements elements; 169.19 169.20 public ComputeAnnotationSet(Elements elements) { 169.21 @@ -1380,7 +1380,7 @@ 169.22 } 169.23 169.24 /** 169.25 - * For internal use by Sun Microsystems only. This method will be 169.26 + * For internal use only. This method will be 169.27 * removed without warning. 169.28 */ 169.29 public Context getContext() {
170.1 --- a/src/share/classes/com/sun/tools/javac/processing/JavacRoundEnvironment.java Thu Jun 17 16:28:21 2010 -0700 170.2 +++ b/src/share/classes/com/sun/tools/javac/processing/JavacRoundEnvironment.java Mon Jun 21 22:09:18 2010 -0700 170.3 @@ -40,7 +40,7 @@ 170.4 * <p>The methods in this class do not take type annotations into account, 170.5 * as target types, not java elements. 170.6 * 170.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 170.8 + * <p><b>This is NOT part of any supported API. 170.9 * If you write code that depends on this, you do so at your own risk. 170.10 * This code and its internal interfaces are subject to change or 170.11 * deletion without notice.</b> 170.12 @@ -125,7 +125,7 @@ 170.13 else 170.14 throw new AssertionError("Bad implementation type for " + tm); 170.15 170.16 - ElementScanner6<Set<Element>, DeclaredType> scanner = 170.17 + ElementScanner7<Set<Element>, DeclaredType> scanner = 170.18 new AnnotationSetScanner(result, typeUtil); 170.19 170.20 for (Element element : rootElements) 170.21 @@ -136,7 +136,7 @@ 170.22 170.23 // Could be written as a local class inside getElementsAnnotatedWith 170.24 private class AnnotationSetScanner extends 170.25 - ElementScanner6<Set<Element>, DeclaredType> { 170.26 + ElementScanner7<Set<Element>, DeclaredType> { 170.27 // Insertion-order preserving set 170.28 Set<Element> annotatedElements = new LinkedHashSet<Element>(); 170.29 Types typeUtil;
171.1 --- a/src/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java Thu Jun 17 16:28:21 2010 -0700 171.2 +++ b/src/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java Mon Jun 21 22:09:18 2010 -0700 171.3 @@ -42,7 +42,7 @@ 171.4 * -Xprint option; the included visitor class is used to implement 171.5 * Elements.printElements. 171.6 * 171.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 171.8 + * <p><b>This is NOT part of any supported API. 171.9 * If you write code that depends on this, you do so at your own risk. 171.10 * This code and its internal interfaces are subject to change or 171.11 * deletion without notice.</b> 171.12 @@ -83,7 +83,7 @@ 171.13 * Used for the -Xprint option and called by Elements.printElements 171.14 */ 171.15 public static class PrintingElementVisitor 171.16 - extends SimpleElementVisitor6<PrintingElementVisitor, Boolean> { 171.17 + extends SimpleElementVisitor7<PrintingElementVisitor, Boolean> { 171.18 int indentation; // Indentation level; 171.19 final PrintWriter writer; 171.20 final Elements elementUtils; 171.21 @@ -117,7 +117,7 @@ 171.22 enclosing != null && 171.23 NestingKind.ANONYMOUS == 171.24 // Use an anonymous class to determine anonymity! 171.25 - (new SimpleElementVisitor6<NestingKind, Void>() { 171.26 + (new SimpleElementVisitor7<NestingKind, Void>() { 171.27 @Override 171.28 public NestingKind visitType(TypeElement e, Void p) { 171.29 return e.getNestingKind();
172.1 --- a/src/share/classes/com/sun/tools/javac/processing/ServiceProxy.java Thu Jun 17 16:28:21 2010 -0700 172.2 +++ b/src/share/classes/com/sun/tools/javac/processing/ServiceProxy.java Mon Jun 21 22:09:18 2010 -0700 172.3 @@ -37,7 +37,7 @@ 172.4 * Utility class to determine if a service can be found on the 172.5 * path that might be used to create a class loader. 172.6 * 172.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 172.8 + * <p><b>This is NOT part of any supported API. 172.9 * If you write code that depends on this, you do so at your own risk. 172.10 * This code and its internal interfaces are subject to change or 172.11 * deletion without notice.</b>
173.1 --- a/src/share/classes/com/sun/tools/javac/resources/compiler.properties Thu Jun 17 16:28:21 2010 -0700 173.2 +++ b/src/share/classes/com/sun/tools/javac/resources/compiler.properties Mon Jun 21 22:09:18 2010 -0700 173.3 @@ -593,18 +593,32 @@ 173.4 compiler.note.unchecked.plural.additional=\ 173.5 Some input files additionally use unchecked or unsafe operations. 173.6 173.7 +compiler.note.varargs.filename=\ 173.8 + {0} declares unsafe vararg methods. 173.9 +compiler.note.varargs.plural=\ 173.10 + Some input files declare unsafe vararg methods. 173.11 +# The following string may appear after one of the above unsafe varargs 173.12 +# messages. 173.13 +compiler.note.varargs.recompile=\ 173.14 + Recompile with -Xlint:varargs for details. 173.15 + 173.16 +compiler.note.varargs.filename.additional=\ 173.17 + {0} declares additional unsafe vararg methods. 173.18 +compiler.note.varargs.plural.additional=\ 173.19 + Some input files additionally declares unsafe vararg methods. 173.20 + 173.21 compiler.note.sunapi.filename=\ 173.22 - {0} uses Sun proprietary API that may be removed in a future release. 173.23 + {0} uses internal proprietary API that may be removed in a future release. 173.24 compiler.note.sunapi.plural=\ 173.25 - Some input files use Sun proprietary API that may be removed in a future release. 173.26 + Some input files use internal proprietary API that may be removed in a future release. 173.27 # The following string may appear after one of the above sunapi messages. 173.28 compiler.note.sunapi.recompile=\ 173.29 Recompile with -Xlint:sunapi for details. 173.30 173.31 compiler.note.sunapi.filename.additional=\ 173.32 - {0} uses additional Sun proprietary API that may be removed in a future release. 173.33 + {0} uses additional internal proprietary API that may be removed in a future release. 173.34 compiler.note.sunapi.plural.additional=\ 173.35 - Some input files additionally use Sun proprietary API that may be removed in a future release. 173.36 + Some input files additionally use internal proprietary API that may be removed in a future release. 173.37 173.38 # Notes related to annotation processing 173.39 173.40 @@ -687,7 +701,7 @@ 173.41 [deprecation] {0} in {1} has been deprecated 173.42 173.43 compiler.warn.sun.proprietary=\ 173.44 - {0} is Sun proprietary API and may be removed in a future release 173.45 + {0} is internal proprietary API and may be removed in a future release 173.46 173.47 compiler.warn.illegal.char.for.encoding=\ 173.48 unmappable character for encoding {0} 173.49 @@ -796,6 +810,9 @@ 173.50 compiler.warn.unchecked.generic.array.creation=\ 173.51 [unchecked] unchecked generic array creation for varargs parameter of type {0} 173.52 173.53 +compiler.warn.varargs.non.reifiable.type=\ 173.54 + [varargs] Possible heap pollution from parameterized vararg type {0} 173.55 + 173.56 compiler.warn.missing.deprecated.annotation=\ 173.57 [dep-ann] deprecated item is not annotated with @Deprecated 173.58
174.1 --- a/src/share/classes/com/sun/tools/javac/sym/CreateSymbols.java Thu Jun 17 16:28:21 2010 -0700 174.2 +++ b/src/share/classes/com/sun/tools/javac/sym/CreateSymbols.java Mon Jun 21 22:09:18 2010 -0700 174.3 @@ -77,7 +77,7 @@ 174.4 * <dd>Specifies the destination directory.</dd> 174.5 * </dl> 174.6 * 174.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 174.8 + * <p><b>This is NOT part of any supported API. 174.9 * If you write code that depends on this, you do so at your own 174.10 * risk. This code and its internal interfaces are subject to change 174.11 * or deletion without notice.</b></p>
175.1 --- a/src/share/classes/com/sun/tools/javac/tree/JCTree.java Thu Jun 17 16:28:21 2010 -0700 175.2 +++ b/src/share/classes/com/sun/tools/javac/tree/JCTree.java Mon Jun 21 22:09:18 2010 -0700 175.3 @@ -66,7 +66,7 @@ 175.4 * <p>To avoid ambiguities with the Tree API in com.sun.source all sub 175.5 * classes should, by convention, start with JC (javac). 175.6 * 175.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 175.8 + * <p><b>This is NOT part of any supported API. 175.9 * If you write code that depends on this, you do so at your own risk. 175.10 * This code and its internal interfaces are subject to change or 175.11 * deletion without notice.</b>
176.1 --- a/src/share/classes/com/sun/tools/javac/tree/Pretty.java Thu Jun 17 16:28:21 2010 -0700 176.2 +++ b/src/share/classes/com/sun/tools/javac/tree/Pretty.java Mon Jun 21 22:09:18 2010 -0700 176.3 @@ -39,8 +39,8 @@ 176.4 176.5 /** Prints out a tree as an indented Java source program. 176.6 * 176.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 176.8 - * you write code that depends on this, you do so at your own risk. 176.9 + * <p><b>This is NOT part of any supported API. 176.10 + * If you write code that depends on this, you do so at your own risk. 176.11 * This code and its internal interfaces are subject to change or 176.12 * deletion without notice.</b> 176.13 */
177.1 --- a/src/share/classes/com/sun/tools/javac/tree/TreeCopier.java Thu Jun 17 16:28:21 2010 -0700 177.2 +++ b/src/share/classes/com/sun/tools/javac/tree/TreeCopier.java Mon Jun 21 22:09:18 2010 -0700 177.3 @@ -34,8 +34,8 @@ 177.4 * Creates a copy of a tree, using a given TreeMaker. 177.5 * Names, literal values, etc are shared with the original. 177.6 * 177.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 177.8 - * you write code that depends on this, you do so at your own risk. 177.9 + * <p><b>This is NOT part of any supported API. 177.10 + * If you write code that depends on this, you do so at your own risk. 177.11 * This code and its internal interfaces are subject to change or 177.12 * deletion without notice.</b> 177.13 */
178.1 --- a/src/share/classes/com/sun/tools/javac/tree/TreeInfo.java Thu Jun 17 16:28:21 2010 -0700 178.2 +++ b/src/share/classes/com/sun/tools/javac/tree/TreeInfo.java Mon Jun 21 22:09:18 2010 -0700 178.3 @@ -38,8 +38,8 @@ 178.4 178.5 /** Utility class containing inspector methods for trees. 178.6 * 178.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 178.8 - * you write code that depends on this, you do so at your own risk. 178.9 + * <p><b>This is NOT part of any supported API. 178.10 + * If you write code that depends on this, you do so at your own risk. 178.11 * This code and its internal interfaces are subject to change or 178.12 * deletion without notice.</b> 178.13 */
179.1 --- a/src/share/classes/com/sun/tools/javac/tree/TreeMaker.java Thu Jun 17 16:28:21 2010 -0700 179.2 +++ b/src/share/classes/com/sun/tools/javac/tree/TreeMaker.java Mon Jun 21 22:09:18 2010 -0700 179.3 @@ -39,8 +39,8 @@ 179.4 179.5 /** Factory class for trees. 179.6 * 179.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 179.8 - * you write code that depends on this, you do so at your own risk. 179.9 + * <p><b>This is NOT part of any supported API. 179.10 + * If you write code that depends on this, you do so at your own risk. 179.11 * This code and its internal interfaces are subject to change or 179.12 * deletion without notice.</b> 179.13 */
180.1 --- a/src/share/classes/com/sun/tools/javac/tree/TreeScanner.java Thu Jun 17 16:28:21 2010 -0700 180.2 +++ b/src/share/classes/com/sun/tools/javac/tree/TreeScanner.java Mon Jun 21 22:09:18 2010 -0700 180.3 @@ -36,8 +36,8 @@ 180.4 * do some interesting work. The scanner class itself takes care of all 180.5 * navigational aspects. 180.6 * 180.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 180.8 - * you write code that depends on this, you do so at your own risk. 180.9 + * <p><b>This is NOT part of any supported API. 180.10 + * If you write code that depends on this, you do so at your own risk. 180.11 * This code and its internal interfaces are subject to change or 180.12 * deletion without notice.</b> 180.13 */
181.1 --- a/src/share/classes/com/sun/tools/javac/tree/TreeTranslator.java Thu Jun 17 16:28:21 2010 -0700 181.2 +++ b/src/share/classes/com/sun/tools/javac/tree/TreeTranslator.java Mon Jun 21 22:09:18 2010 -0700 181.3 @@ -37,8 +37,8 @@ 181.4 * do some interesting work. The translator class itself takes care of all 181.5 * navigational aspects. 181.6 * 181.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 181.8 - * you write code that depends on this, you do so at your own risk. 181.9 + * <p><b>This is NOT part of any supported API. 181.10 + * If you write code that depends on this, you do so at your own risk. 181.11 * This code and its internal interfaces are subject to change or 181.12 * deletion without notice.</b> 181.13 */
182.1 --- a/src/share/classes/com/sun/tools/javac/util/Abort.java Thu Jun 17 16:28:21 2010 -0700 182.2 +++ b/src/share/classes/com/sun/tools/javac/util/Abort.java Mon Jun 21 22:09:18 2010 -0700 182.3 @@ -28,8 +28,8 @@ 182.4 /** Throwing an instance of 182.5 * this class causes (silent) termination of the main compiler method. 182.6 * 182.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 182.8 - * you write code that depends on this, you do so at your own risk. 182.9 + * <p><b>This is NOT part of any supported API. 182.10 + * If you write code that depends on this, you do so at your own risk. 182.11 * This code and its internal interfaces are subject to change or 182.12 * deletion without notice.</b> 182.13 */
183.1 --- a/src/share/classes/com/sun/tools/javac/util/AbstractDiagnosticFormatter.java Thu Jun 17 16:28:21 2010 -0700 183.2 +++ b/src/share/classes/com/sun/tools/javac/util/AbstractDiagnosticFormatter.java Mon Jun 21 22:09:18 2010 -0700 183.3 @@ -57,7 +57,7 @@ 183.4 * <li> Provides the formatting logic for rendering the arguments of a JCDiagnostic object. 183.5 * <ul> 183.6 * 183.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 183.8 + * <p><b>This is NOT part of any supported API. 183.9 * If you write code that depends on this, you do so at your own risk. 183.10 * This code and its internal interfaces are subject to change or 183.11 * deletion without notice.</b>
184.1 --- a/src/share/classes/com/sun/tools/javac/util/AbstractLog.java Thu Jun 17 16:28:21 2010 -0700 184.2 +++ b/src/share/classes/com/sun/tools/javac/util/AbstractLog.java Mon Jun 21 22:09:18 2010 -0700 184.3 @@ -37,8 +37,8 @@ 184.4 * A base class for error logs. Reports errors and warnings, and 184.5 * keeps track of error numbers and positions. 184.6 * 184.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 184.8 - * you write code that depends on this, you do so at your own risk. 184.9 + * <p><b>This is NOT part of any supported API. 184.10 + * If you write code that depends on this, you do so at your own risk. 184.11 * This code and its internal interfaces are subject to change or 184.12 * deletion without notice.</b> 184.13 */
185.1 --- a/src/share/classes/com/sun/tools/javac/util/BasicDiagnosticFormatter.java Thu Jun 17 16:28:21 2010 -0700 185.2 +++ b/src/share/classes/com/sun/tools/javac/util/BasicDiagnosticFormatter.java Mon Jun 21 22:09:18 2010 -0700 185.3 @@ -58,7 +58,7 @@ 185.4 * <li>%_: space delimiter, useful for formatting purposes 185.5 * </ul> 185.6 * 185.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 185.8 + * <p><b>This is NOT part of any supported API. 185.9 * If you write code that depends on this, you do so at your own risk. 185.10 * This code and its internal interfaces are subject to change or 185.11 * deletion without notice.</b>
186.1 --- a/src/share/classes/com/sun/tools/javac/util/Bits.java Thu Jun 17 16:28:21 2010 -0700 186.2 +++ b/src/share/classes/com/sun/tools/javac/util/Bits.java Mon Jun 21 22:09:18 2010 -0700 186.3 @@ -27,8 +27,8 @@ 186.4 186.5 /** A class for extensible, mutable bit sets. 186.6 * 186.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 186.8 - * you write code that depends on this, you do so at your own risk. 186.9 + * <p><b>This is NOT part of any supported API. 186.10 + * If you write code that depends on this, you do so at your own risk. 186.11 * This code and its internal interfaces are subject to change or 186.12 * deletion without notice.</b> 186.13 */
187.1 --- a/src/share/classes/com/sun/tools/javac/util/ByteBuffer.java Thu Jun 17 16:28:21 2010 -0700 187.2 +++ b/src/share/classes/com/sun/tools/javac/util/ByteBuffer.java Mon Jun 21 22:09:18 2010 -0700 187.3 @@ -31,8 +31,8 @@ 187.4 * appended. There are also methods to append names to byte buffers 187.5 * and to convert byte buffers to names. 187.6 * 187.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 187.8 - * you write code that depends on this, you do so at your own risk. 187.9 + * <p><b>This is NOT part of any supported API. 187.10 + * If you write code that depends on this, you do so at your own risk. 187.11 * This code and its internal interfaces are subject to change or 187.12 * deletion without notice.</b> 187.13 */
188.1 --- a/src/share/classes/com/sun/tools/javac/util/ClientCodeException.java Thu Jun 17 16:28:21 2010 -0700 188.2 +++ b/src/share/classes/com/sun/tools/javac/util/ClientCodeException.java Mon Jun 21 22:09:18 2010 -0700 188.3 @@ -29,8 +29,8 @@ 188.4 * An exception used for propogating exceptions found in client code 188.5 * invoked from javac. 188.6 * 188.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 188.8 - * you write code that depends on this, you do so at your own risk. 188.9 + * <p><b>This is NOT part of any supported API. 188.10 + * If you write code that depends on this, you do so at your own risk. 188.11 * This code and its internal interfaces are subject to change or 188.12 * deletion without notice.</b> 188.13 */
189.1 --- a/src/share/classes/com/sun/tools/javac/util/CloseableURLClassLoader.java Thu Jun 17 16:28:21 2010 -0700 189.2 +++ b/src/share/classes/com/sun/tools/javac/util/CloseableURLClassLoader.java Mon Jun 21 22:09:18 2010 -0700 189.3 @@ -40,8 +40,8 @@ 189.4 * fragile. Caveat emptor. 189.5 * @throws Error if the internal data structures are not as expected. 189.6 * 189.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 189.8 - * you write code that depends on this, you do so at your own risk. 189.9 + * <p><b>This is NOT part of any supported API. 189.10 + * If you write code that depends on this, you do so at your own risk. 189.11 * This code and its internal interfaces are subject to change or 189.12 * deletion without notice.</b> 189.13 */
190.1 --- a/src/share/classes/com/sun/tools/javac/util/Constants.java Thu Jun 17 16:28:21 2010 -0700 190.2 +++ b/src/share/classes/com/sun/tools/javac/util/Constants.java Mon Jun 21 22:09:18 2010 -0700 190.3 @@ -32,8 +32,8 @@ 190.4 /** 190.5 * Utilities for operating on constant values. 190.6 * 190.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 190.8 - * you write code that depends on this, you do so at your own risk. 190.9 + * <p><b>This is NOT part of any supported API. 190.10 + * If you write code that depends on this, you do so at your own risk. 190.11 * This code and its internal interfaces are subject to change or 190.12 * deletion without notice.</b> 190.13 */
191.1 --- a/src/share/classes/com/sun/tools/javac/util/Context.java Thu Jun 17 16:28:21 2010 -0700 191.2 +++ b/src/share/classes/com/sun/tools/javac/util/Context.java Mon Jun 21 22:09:18 2010 -0700 191.3 @@ -91,8 +91,8 @@ 191.4 * NewPhase.preRegister(context); 191.5 * </pre> 191.6 * 191.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 191.8 - * you write code that depends on this, you do so at your own risk. 191.9 + * <p><b>This is NOT part of any supported API. 191.10 + * If you write code that depends on this, you do so at your own risk. 191.11 * This code and its internal interfaces are subject to change or 191.12 * deletion without notice.</b> 191.13 */
192.1 --- a/src/share/classes/com/sun/tools/javac/util/Convert.java Thu Jun 17 16:28:21 2010 -0700 192.2 +++ b/src/share/classes/com/sun/tools/javac/util/Convert.java Mon Jun 21 22:09:18 2010 -0700 192.3 @@ -28,8 +28,8 @@ 192.4 /** Utility class for static conversion methods between numbers 192.5 * and strings in various formats. 192.6 * 192.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 192.8 - * you write code that depends on this, you do so at your own risk. 192.9 + * <p><b>This is NOT part of any supported API. 192.10 + * If you write code that depends on this, you do so at your own risk. 192.11 * This code and its internal interfaces are subject to change or 192.12 * deletion without notice.</b> 192.13 */
193.1 --- a/src/share/classes/com/sun/tools/javac/util/DiagnosticSource.java Thu Jun 17 16:28:21 2010 -0700 193.2 +++ b/src/share/classes/com/sun/tools/javac/util/DiagnosticSource.java Mon Jun 21 22:09:18 2010 -0700 193.3 @@ -40,8 +40,8 @@ 193.4 * A simple abstraction of a source file, as needed for use in a diagnostic message. 193.5 * Provides access to the line and position in a line for any given character offset. 193.6 * 193.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 193.8 - * you write code that depends on this, you do so at your own risk. 193.9 + * <p><b>This is NOT part of any supported API. 193.10 + * If you write code that depends on this, you do so at your own risk. 193.11 * This code and its internal interfaces are subject to change or 193.12 * deletion without notice.</b> 193.13 */
194.1 --- a/src/share/classes/com/sun/tools/javac/util/FatalError.java Thu Jun 17 16:28:21 2010 -0700 194.2 +++ b/src/share/classes/com/sun/tools/javac/util/FatalError.java Mon Jun 21 22:09:18 2010 -0700 194.3 @@ -29,8 +29,8 @@ 194.4 * of the main compiler method. It is used when some non-recoverable 194.5 * error has been detected in the compiler environment at runtime. 194.6 * 194.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 194.8 - * you write code that depends on this, you do so at your own risk. 194.9 + * <p><b>This is NOT part of any supported API. 194.10 + * If you write code that depends on this, you do so at your own risk. 194.11 * This code and its internal interfaces are subject to change or 194.12 * deletion without notice.</b> 194.13 */
195.1 --- a/src/share/classes/com/sun/tools/javac/util/ForwardingDiagnosticFormatter.java Thu Jun 17 16:28:21 2010 -0700 195.2 +++ b/src/share/classes/com/sun/tools/javac/util/ForwardingDiagnosticFormatter.java Mon Jun 21 22:09:18 2010 -0700 195.3 @@ -38,7 +38,7 @@ 195.4 * A delegated diagnostic formatter delegates all formatting 195.5 * actions to an underlying formatter (aka the delegated formatter). 195.6 * 195.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 195.8 + * <p><b>This is NOT part of any supported API. 195.9 * If you write code that depends on this, you do so at your own risk. 195.10 * This code and its internal interfaces are subject to change or 195.11 * deletion without notice.</b>
196.1 --- a/src/share/classes/com/sun/tools/javac/util/JCDiagnostic.java Thu Jun 17 16:28:21 2010 -0700 196.2 +++ b/src/share/classes/com/sun/tools/javac/util/JCDiagnostic.java Mon Jun 21 22:09:18 2010 -0700 196.3 @@ -38,8 +38,8 @@ 196.4 196.5 /** An abstraction of a diagnostic message generated by the compiler. 196.6 * 196.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 196.8 - * you write code that depends on this, you do so at your own risk. 196.9 + * <p><b>This is NOT part of any supported API. 196.10 + * If you write code that depends on this, you do so at your own risk. 196.11 * This code and its internal interfaces are subject to change or 196.12 * deletion without notice.</b> 196.13 */
197.1 --- a/src/share/classes/com/sun/tools/javac/util/JavacMessages.java Thu Jun 17 16:28:21 2010 -0700 197.2 +++ b/src/share/classes/com/sun/tools/javac/util/JavacMessages.java Mon Jun 21 22:09:18 2010 -0700 197.3 @@ -37,8 +37,8 @@ 197.4 /** 197.5 * Support for formatted localized messages. 197.6 * 197.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 197.8 - * you write code that depends on this, you do so at your own risk. 197.9 + * <p><b>This is NOT part of any supported API. 197.10 + * If you write code that depends on this, you do so at your own risk. 197.11 * This code and its internal interfaces are subject to change or 197.12 * deletion without notice.</b> 197.13 */
198.1 --- a/src/share/classes/com/sun/tools/javac/util/LayoutCharacters.java Thu Jun 17 16:28:21 2010 -0700 198.2 +++ b/src/share/classes/com/sun/tools/javac/util/LayoutCharacters.java Mon Jun 21 22:09:18 2010 -0700 198.3 @@ -28,8 +28,8 @@ 198.4 /** An interface containing layout character constants used in Java 198.5 * programs. 198.6 * 198.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 198.8 - * you write code that depends on this, you do so at your own risk. 198.9 + * <p><b>This is NOT part of any supported API. 198.10 + * If you write code that depends on this, you do so at your own risk. 198.11 * This code and its internal interfaces are subject to change or 198.12 * deletion without notice.</b> 198.13 */
199.1 --- a/src/share/classes/com/sun/tools/javac/util/List.java Thu Jun 17 16:28:21 2010 -0700 199.2 +++ b/src/share/classes/com/sun/tools/javac/util/List.java Mon Jun 21 22:09:18 2010 -0700 199.3 @@ -43,8 +43,8 @@ 199.4 * <p>Lists are always trailed by a sentinel element, whose head and tail 199.5 * are both null. 199.6 * 199.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 199.8 - * you write code that depends on this, you do so at your own risk. 199.9 + * <p><b>This is NOT part of any supported API. 199.10 + * If you write code that depends on this, you do so at your own risk. 199.11 * This code and its internal interfaces are subject to change or 199.12 * deletion without notice.</b> 199.13 */ 199.14 @@ -103,6 +103,7 @@ 199.15 199.16 /** Construct a list consisting of given elements. 199.17 */ 199.18 + @SuppressWarnings("varargs") 199.19 public static <A> List<A> of(A x1, A x2, A x3, A... rest) { 199.20 return new List<A>(x1, new List<A>(x2, new List<A>(x3, from(rest)))); 199.21 }
200.1 --- a/src/share/classes/com/sun/tools/javac/util/ListBuffer.java Thu Jun 17 16:28:21 2010 -0700 200.2 +++ b/src/share/classes/com/sun/tools/javac/util/ListBuffer.java Mon Jun 21 22:09:18 2010 -0700 200.3 @@ -33,8 +33,8 @@ 200.4 /** A class for constructing lists by appending elements. Modelled after 200.5 * java.lang.StringBuffer. 200.6 * 200.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 200.8 - * you write code that depends on this, you do so at your own risk. 200.9 + * <p><b>This is NOT part of any supported API. 200.10 + * If you write code that depends on this, you do so at your own risk. 200.11 * This code and its internal interfaces are subject to change or 200.12 * deletion without notice.</b> 200.13 */
201.1 --- a/src/share/classes/com/sun/tools/javac/util/Log.java Thu Jun 17 16:28:21 2010 -0700 201.2 +++ b/src/share/classes/com/sun/tools/javac/util/Log.java Mon Jun 21 22:09:18 2010 -0700 201.3 @@ -41,8 +41,8 @@ 201.4 /** A class for error logs. Reports errors and warnings, and 201.5 * keeps track of error numbers and positions. 201.6 * 201.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 201.8 - * you write code that depends on this, you do so at your own risk. 201.9 + * <p><b>This is NOT part of any supported API. 201.10 + * If you write code that depends on this, you do so at your own risk. 201.11 * This code and its internal interfaces are subject to change or 201.12 * deletion without notice.</b> 201.13 */ 201.14 @@ -125,8 +125,8 @@ 201.15 this.promptOnError = options.get("-prompt") != null; 201.16 this.emitWarnings = options.get("-Xlint:none") == null; 201.17 this.suppressNotes = options.get("suppressNotes") != null; 201.18 - this.MaxErrors = getIntOption(options, "-Xmaxerrs", 100); 201.19 - this.MaxWarnings = getIntOption(options, "-Xmaxwarns", 100); 201.20 + this.MaxErrors = getIntOption(options, "-Xmaxerrs", getDefaultMaxErrors()); 201.21 + this.MaxWarnings = getIntOption(options, "-Xmaxwarns", getDefaultMaxWarnings()); 201.22 201.23 boolean rawDiagnostics = options.get("rawDiagnostics") != null; 201.24 messages = JavacMessages.instance(context); 201.25 @@ -155,6 +155,18 @@ 201.26 return defaultValue; 201.27 } 201.28 201.29 + /** Default value for -Xmaxerrs. 201.30 + */ 201.31 + protected int getDefaultMaxErrors() { 201.32 + return 100; 201.33 + } 201.34 + 201.35 + /** Default value for -Xmaxwarns. 201.36 + */ 201.37 + protected int getDefaultMaxWarnings() { 201.38 + return 100; 201.39 + } 201.40 + 201.41 /** The default writer for diagnostics 201.42 */ 201.43 static final PrintWriter defaultWriter(Context context) {
202.1 --- a/src/share/classes/com/sun/tools/javac/util/MandatoryWarningHandler.java Thu Jun 17 16:28:21 2010 -0700 202.2 +++ b/src/share/classes/com/sun/tools/javac/util/MandatoryWarningHandler.java Mon Jun 21 22:09:18 2010 -0700 202.3 @@ -43,8 +43,8 @@ 202.4 * made on any API to generate a warning at all. In consequence, this handler only 202.5 * gets to handle those warnings that JLS says must be generated. 202.6 * 202.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 202.8 - * you write code that depends on this, you do so at your own risk. 202.9 + * <p><b>This is NOT part of any supported API. 202.10 + * If you write code that depends on this, you do so at your own risk. 202.11 * This code and its internal interfaces are subject to change or 202.12 * deletion without notice.</b> 202.13 */
203.1 --- a/src/share/classes/com/sun/tools/javac/util/Name.java Thu Jun 17 16:28:21 2010 -0700 203.2 +++ b/src/share/classes/com/sun/tools/javac/util/Name.java Mon Jun 21 22:09:18 2010 -0700 203.3 @@ -29,8 +29,8 @@ 203.4 * Utf8 format. Names are stored in a Name.Table, and are unique within 203.5 * that table. 203.6 * 203.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 203.8 - * you write code that depends on this, you do so at your own risk. 203.9 + * <p><b>This is NOT part of any supported API. 203.10 + * If you write code that depends on this, you do so at your own risk. 203.11 * This code and its internal interfaces are subject to change or 203.12 * deletion without notice.</b> 203.13 */
204.1 --- a/src/share/classes/com/sun/tools/javac/util/Names.java Thu Jun 17 16:28:21 2010 -0700 204.2 +++ b/src/share/classes/com/sun/tools/javac/util/Names.java Mon Jun 21 22:09:18 2010 -0700 204.3 @@ -29,8 +29,8 @@ 204.4 * Access to the compiler's name table. STandard names are defined, 204.5 * as well as methods to create new names. 204.6 * 204.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 204.8 - * you write code that depends on this, you do so at your own risk. 204.9 + * <p><b>This is NOT part of any supported API. 204.10 + * If you write code that depends on this, you do so at your own risk. 204.11 * This code and its internal interfaces are subject to change or 204.12 * deletion without notice.</b> 204.13 */
205.1 --- a/src/share/classes/com/sun/tools/javac/util/Options.java Thu Jun 17 16:28:21 2010 -0700 205.2 +++ b/src/share/classes/com/sun/tools/javac/util/Options.java Mon Jun 21 22:09:18 2010 -0700 205.3 @@ -32,8 +32,8 @@ 205.4 * If an option has an argument, the option name is mapped to the argument. 205.5 * If a set option has no argument, it is mapped to itself. 205.6 * 205.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 205.8 - * you write code that depends on this, you do so at your own risk. 205.9 + * <p><b>This is NOT part of any supported API. 205.10 + * If you write code that depends on this, you do so at your own risk. 205.11 * This code and its internal interfaces are subject to change or 205.12 * deletion without notice.</b> 205.13 */
206.1 --- a/src/share/classes/com/sun/tools/javac/util/Pair.java Thu Jun 17 16:28:21 2010 -0700 206.2 +++ b/src/share/classes/com/sun/tools/javac/util/Pair.java Mon Jun 21 22:09:18 2010 -0700 206.3 @@ -27,8 +27,8 @@ 206.4 206.5 /** A generic class for pairs. 206.6 * 206.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 206.8 - * you write code that depends on this, you do so at your own risk. 206.9 + * <p><b>This is NOT part of any supported API. 206.10 + * If you write code that depends on this, you do so at your own risk. 206.11 * This code and its internal interfaces are subject to change or 206.12 * deletion without notice.</b> 206.13 */
207.1 --- a/src/share/classes/com/sun/tools/javac/util/Position.java Thu Jun 17 16:28:21 2010 -0700 207.2 +++ b/src/share/classes/com/sun/tools/javac/util/Position.java Mon Jun 21 22:09:18 2010 -0700 207.3 @@ -36,8 +36,8 @@ 207.4 * expansion is optional and no Unicode excape translation is considered. 207.5 * The first character is at location (1,1). 207.6 * 207.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 207.8 - * you write code that depends on this, you do so at your own risk. 207.9 + * <p><b>This is NOT part of any supported API. 207.10 + * If you write code that depends on this, you do so at your own risk. 207.11 * This code and its internal interfaces are subject to change or 207.12 * deletion without notice.</b> 207.13 */
208.1 --- a/src/share/classes/com/sun/tools/javac/util/PropagatedException.java Thu Jun 17 16:28:21 2010 -0700 208.2 +++ b/src/share/classes/com/sun/tools/javac/util/PropagatedException.java Mon Jun 21 22:09:18 2010 -0700 208.3 @@ -28,7 +28,7 @@ 208.4 /** 208.5 * Used to propagate exceptions through to the user. 208.6 * 208.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 208.8 + * <p><b>This is NOT part of any supported API. 208.9 * If you write code that depends on this, you do so at your own 208.10 * risk. This code and its internal interfaces are subject to change 208.11 * or deletion without notice.</b></p>
209.1 --- a/src/share/classes/com/sun/tools/javac/util/RawDiagnosticFormatter.java Thu Jun 17 16:28:21 2010 -0700 209.2 +++ b/src/share/classes/com/sun/tools/javac/util/RawDiagnosticFormatter.java Mon Jun 21 22:09:18 2010 -0700 209.3 @@ -41,7 +41,7 @@ 209.4 * or not the source name and position are set. This formatter provides a standardized, localize-independent 209.5 * implementation of a diagnostic formatter; as such, this formatter is best suited for testing purposes. 209.6 * 209.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 209.8 + * <p><b>This is NOT part of any supported API. 209.9 * If you write code that depends on this, you do so at your own risk. 209.10 * This code and its internal interfaces are subject to change or 209.11 * deletion without notice.</b>
210.1 --- a/src/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java Thu Jun 17 16:28:21 2010 -0700 210.2 +++ b/src/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java Mon Jun 21 22:09:18 2010 -0700 210.3 @@ -59,7 +59,7 @@ 210.4 * to two different type-variables with the same name, their representation is 210.5 * disambiguated by appending an index to the type variable name. 210.6 * 210.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 210.8 + * <p><b>This is NOT part of any supported API. 210.9 * If you write code that depends on this, you do so at your own risk. 210.10 * This code and its internal interfaces are subject to change or 210.11 * deletion without notice.</b>
211.1 --- a/src/share/classes/com/sun/tools/javac/util/SharedNameTable.java Thu Jun 17 16:28:21 2010 -0700 211.2 +++ b/src/share/classes/com/sun/tools/javac/util/SharedNameTable.java Mon Jun 21 22:09:18 2010 -0700 211.3 @@ -32,8 +32,8 @@ 211.4 * byte array, expanding it as needed. This avoids the overhead incurred 211.5 * by using an array of bytes for each name. 211.6 * 211.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 211.8 - * you write code that depends on this, you do so at your own risk. 211.9 + * <p><b>This is NOT part of any supported API. 211.10 + * If you write code that depends on this, you do so at your own risk. 211.11 * This code and its internal interfaces are subject to change or 211.12 * deletion without notice.</b> 211.13 */
212.1 --- a/src/share/classes/com/sun/tools/javac/util/UnsharedNameTable.java Thu Jun 17 16:28:21 2010 -0700 212.2 +++ b/src/share/classes/com/sun/tools/javac/util/UnsharedNameTable.java Mon Jun 21 22:09:18 2010 -0700 212.3 @@ -32,8 +32,8 @@ 212.4 * using weak references. It is recommended for use when a single shared 212.5 * byte array is unsuitable. 212.6 * 212.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 212.8 - * you write code that depends on this, you do so at your own risk. 212.9 + * <p><b>This is NOT part of any supported API. 212.10 + * If you write code that depends on this, you do so at your own risk. 212.11 * This code and its internal interfaces are subject to change or 212.12 * deletion without notice.</b> 212.13 */
213.1 --- a/src/share/classes/com/sun/tools/javac/util/Warner.java Thu Jun 17 16:28:21 2010 -0700 213.2 +++ b/src/share/classes/com/sun/tools/javac/util/Warner.java Mon Jun 21 22:09:18 2010 -0700 213.3 @@ -31,7 +31,7 @@ 213.4 * An interface to support optional warnings, needed for support of 213.5 * unchecked conversions and unchecked casts. 213.6 * 213.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 213.8 + * <p><b>This is NOT part of any supported API. 213.9 * If you write code that depends on this, you do so at your own risk. 213.10 * This code and its internal interfaces are subject to change or 213.11 * deletion without notice.</b>
214.1 --- a/src/share/classes/com/sun/tools/javadoc/DocletInvoker.java Thu Jun 17 16:28:21 2010 -0700 214.2 +++ b/src/share/classes/com/sun/tools/javadoc/DocletInvoker.java Mon Jun 21 22:09:18 2010 -0700 214.3 @@ -155,10 +155,8 @@ 214.4 public boolean start(RootDoc root) { 214.5 Object retVal; 214.6 String methodName = "start"; 214.7 - Class<?>[] paramTypes = new Class<?>[1]; 214.8 - Object[] params = new Object[1]; 214.9 - paramTypes[0] = RootDoc.class; 214.10 - params[0] = root; 214.11 + Class<?>[] paramTypes = { RootDoc.class }; 214.12 + Object[] params = { root }; 214.13 try { 214.14 retVal = invoke(methodName, null, paramTypes, params); 214.15 } catch (DocletInvokeException exc) { 214.16 @@ -181,10 +179,8 @@ 214.17 public int optionLength(String option) { 214.18 Object retVal; 214.19 String methodName = "optionLength"; 214.20 - Class<?>[] paramTypes = new Class<?>[1]; 214.21 - Object[] params = new Object[1]; 214.22 - paramTypes[0] = option.getClass(); 214.23 - params[0] = option; 214.24 + Class<?>[] paramTypes = { String.class }; 214.25 + Object[] params = { option }; 214.26 try { 214.27 retVal = invoke(methodName, new Integer(0), paramTypes, params); 214.28 } catch (DocletInvokeException exc) { 214.29 @@ -208,12 +204,8 @@ 214.30 String options[][] = optlist.toArray(new String[optlist.length()][]); 214.31 String methodName = "validOptions"; 214.32 DocErrorReporter reporter = messager; 214.33 - Class<?>[] paramTypes = new Class<?>[2]; 214.34 - Object[] params = new Object[2]; 214.35 - paramTypes[0] = options.getClass(); 214.36 - paramTypes[1] = DocErrorReporter.class; 214.37 - params[0] = options; 214.38 - params[1] = reporter; 214.39 + Class<?>[] paramTypes = { String[][].class, DocErrorReporter.class }; 214.40 + Object[] params = { options, reporter }; 214.41 try { 214.42 retVal = invoke(methodName, Boolean.TRUE, paramTypes, params); 214.43 } catch (DocletInvokeException exc) {
215.1 --- a/src/share/classes/com/sun/tools/javadoc/Messager.java Thu Jun 17 16:28:21 2010 -0700 215.2 +++ b/src/share/classes/com/sun/tools/javadoc/Messager.java Mon Jun 21 22:09:18 2010 -0700 215.3 @@ -86,7 +86,7 @@ 215.4 private static final long serialVersionUID = 0; 215.5 } 215.6 215.7 - private final String programName; 215.8 + final String programName; 215.9 215.10 private ResourceBundle messageRB = null; 215.11 215.12 @@ -121,6 +121,16 @@ 215.13 this.programName = programName; 215.14 } 215.15 215.16 + @Override 215.17 + protected int getDefaultMaxErrors() { 215.18 + return Integer.MAX_VALUE; 215.19 + } 215.20 + 215.21 + @Override 215.22 + protected int getDefaultMaxWarnings() { 215.23 + return Integer.MAX_VALUE; 215.24 + } 215.25 + 215.26 /** 215.27 * Reset resource bundle, eg. locale has changed. 215.28 */ 215.29 @@ -231,11 +241,13 @@ 215.30 * @param msg message to print 215.31 */ 215.32 public void printError(SourcePosition pos, String msg) { 215.33 - String prefix = (pos == null) ? programName : pos.toString(); 215.34 - errWriter.println(prefix + ": " + getText("javadoc.error") + " - " + msg); 215.35 - errWriter.flush(); 215.36 - prompt(); 215.37 - nerrors++; 215.38 + if (nerrors < MaxErrors) { 215.39 + String prefix = (pos == null) ? programName : pos.toString(); 215.40 + errWriter.println(prefix + ": " + getText("javadoc.error") + " - " + msg); 215.41 + errWriter.flush(); 215.42 + prompt(); 215.43 + nerrors++; 215.44 + } 215.45 } 215.46 215.47 /** 215.48 @@ -256,10 +268,12 @@ 215.49 * @param msg message to print 215.50 */ 215.51 public void printWarning(SourcePosition pos, String msg) { 215.52 - String prefix = (pos == null) ? programName : pos.toString(); 215.53 - warnWriter.println(prefix + ": " + getText("javadoc.warning") +" - " + msg); 215.54 - warnWriter.flush(); 215.55 - nwarnings++; 215.56 + if (nwarnings < MaxWarnings) { 215.57 + String prefix = (pos == null) ? programName : pos.toString(); 215.58 + warnWriter.println(prefix + ": " + getText("javadoc.warning") +" - " + msg); 215.59 + warnWriter.flush(); 215.60 + nwarnings++; 215.61 + } 215.62 } 215.63 215.64 /**
216.1 --- a/src/share/classes/com/sun/tools/javadoc/Start.java Thu Jun 17 16:28:21 2010 -0700 216.2 +++ b/src/share/classes/com/sun/tools/javadoc/Start.java Mon Jun 21 22:09:18 2010 -0700 216.3 @@ -51,8 +51,6 @@ 216.4 * @author Neal Gafter (rewrite) 216.5 */ 216.6 class Start { 216.7 - /** Context for this invocation. */ 216.8 - private final Context context; 216.9 216.10 private final String defaultDocletClassName; 216.11 private final ClassLoader docletParentClassLoader; 216.12 @@ -98,8 +96,8 @@ 216.13 PrintWriter noticeWriter, 216.14 String defaultDocletClassName, 216.15 ClassLoader docletParentClassLoader) { 216.16 - context = new Context(); 216.17 - messager = new Messager(context, programName, errWriter, warnWriter, noticeWriter); 216.18 + Context tempContext = new Context(); // interim context until option decoding completed 216.19 + messager = new Messager(tempContext, programName, errWriter, warnWriter, noticeWriter); 216.20 this.defaultDocletClassName = defaultDocletClassName; 216.21 this.docletParentClassLoader = docletParentClassLoader; 216.22 } 216.23 @@ -110,8 +108,8 @@ 216.24 216.25 Start(String programName, String defaultDocletClassName, 216.26 ClassLoader docletParentClassLoader) { 216.27 - context = new Context(); 216.28 - messager = new Messager(context, programName); 216.29 + Context tempContext = new Context(); // interim context until option decoding completed 216.30 + messager = new Messager(tempContext, programName); 216.31 this.defaultDocletClassName = defaultDocletClassName; 216.32 this.docletParentClassLoader = docletParentClassLoader; 216.33 } 216.34 @@ -145,6 +143,13 @@ 216.35 } 216.36 216.37 /** 216.38 + * Usage 216.39 + */ 216.40 + private void Xusage() { 216.41 + messager.notice("main.Xusage"); 216.42 + } 216.43 + 216.44 + /** 216.45 * Exit 216.46 */ 216.47 private void exit() { 216.48 @@ -213,6 +218,15 @@ 216.49 setDocletInvoker(argv); 216.50 ListBuffer<String> subPackages = new ListBuffer<String>(); 216.51 ListBuffer<String> excludedPackages = new ListBuffer<String>(); 216.52 + 216.53 + Context context = new Context(); 216.54 + // Setup a new Messager, using the same initial parameters as the 216.55 + // existing Messager, except that this one will be able to use any 216.56 + // options that may be set up below. 216.57 + Messager.preRegister(context, 216.58 + messager.programName, 216.59 + messager.errWriter, messager.warnWriter, messager.noticeWriter); 216.60 + 216.61 Options compOpts = Options.instance(context); 216.62 boolean docClasses = false; 216.63 216.64 @@ -310,6 +324,15 @@ 216.65 usageError("main.locale_first"); 216.66 oneArg(argv, i++); 216.67 docLocale = argv[i]; 216.68 + } else if (arg.equals("-Xmaxerrs") || arg.equals("-Xmaxwarns")) { 216.69 + oneArg(argv, i++); 216.70 + if (compOpts.get(arg) != null) { 216.71 + usageError("main.option.already.seen", arg); 216.72 + } 216.73 + compOpts.put(arg, argv[i]); 216.74 + } else if (arg.equals("-X")) { 216.75 + Xusage(); 216.76 + exit(); 216.77 } else if (arg.startsWith("-XD")) { 216.78 String s = arg.substring("-XD".length()); 216.79 int eq = s.indexOf('=');
217.1 --- a/src/share/classes/com/sun/tools/javadoc/resources/javadoc.properties Thu Jun 17 16:28:21 2010 -0700 217.2 +++ b/src/share/classes/com/sun/tools/javadoc/resources/javadoc.properties Mon Jun 21 22:09:18 2010 -0700 217.3 @@ -49,7 +49,13 @@ 217.4 -locale <name> Locale to be used, e.g. en_US or en_US_WIN\n\ 217.5 -encoding <name> Source file encoding name\n\ 217.6 -quiet Do not display status messages\n\ 217.7 - -J<flag> Pass <flag> directly to the runtime system\n 217.8 + -J<flag> Pass <flag> directly to the runtime system\n\ 217.9 + -X Print a synopsis of nonstandard options\n 217.10 +main.Xusage=\ 217.11 + -Xmaxerrs <number> Set the maximum number of errors to print\n\ 217.12 + -Xmaxwarns <number> Set the maximum number of warnings to print\n\ 217.13 +\n\ 217.14 +These options are non-standard and subject to change without notice. 217.15 main.option.already.seen=The {0} option may be specified no more than once. 217.16 main.requires_argument=option {0} requires an argument. 217.17 main.locale_first=option -locale must be first on the command line. 217.18 @@ -65,7 +71,7 @@ 217.19 main.fatal.error=fatal error 217.20 main.fatal.exception=fatal exception 217.21 main.out.of.memory=java.lang.OutOfMemoryError: Please increase memory.\n\ 217.22 -For example, on the Sun Classic or HotSpot VMs, add the option -J-Xmx\n\ 217.23 +For example, on the JDK Classic or HotSpot VMs, add the option -J-Xmx\n\ 217.24 such as -J-Xmx32m. 217.25 main.done_in=[done in {0} ms] 217.26 main.doclet_method_must_be_static=In doclet class {0}, method {1} must be static.
218.1 --- a/src/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties Thu Jun 17 16:28:21 2010 -0700 218.2 +++ b/src/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties Mon Jun 21 22:09:18 2010 -0700 218.3 @@ -65,7 +65,7 @@ 218.4 main.fatal.error=\u81f4\u547d\u9519\u8bef 218.5 main.fatal.exception=\u81f4\u547d\u5f02\u5e38 218.6 main.out.of.memory=java.lang.OutOfMemoryError\uff1a\u8bf7\u589e\u52a0\u5185\u5b58\u3002\n\ 218.7 -\u4f8b\u5982\uff0c\u5bf9\u4e8e Sun Classic \u6216 HotSpot VM\uff0c\u8bf7\u6dfb\u52a0\u9009\u9879 -J-Xmx\uff0c\n\ 218.8 +\u4f8b\u5982\uff0c\u5bf9\u4e8e JDK Classic \u6216 HotSpot VM\uff0c\u8bf7\u6dfb\u52a0\u9009\u9879 -J-Xmx\uff0c\n\ 218.9 \u5982 -J-Xmx32m\u3002 218.10 main.done_in=[\u5728{0} \u6beb\u79d2\u5185\u5b8c\u6210] 218.11 main.doclet_method_must_be_static=\u5728 doclet \u7c7b {0} \u4e2d\uff0c\u65b9\u6cd5 {1} \u5fc5\u987b\u4e3a\u9759\u6001\u3002
219.1 --- a/src/share/classes/com/sun/tools/javah/Gen.java Thu Jun 17 16:28:21 2010 -0700 219.2 +++ b/src/share/classes/com/sun/tools/javah/Gen.java Mon Jun 21 22:09:18 2010 -0700 219.3 @@ -60,7 +60,7 @@ 219.4 * original writing, this interface is rich enough to support JNI and the 219.5 * old 1.0-style native method interface. 219.6 * 219.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 219.8 + * <p><b>This is NOT part of any supported API. 219.9 * If you write code that depends on this, you do so at your own 219.10 * risk. This code and its internal interfaces are subject to change 219.11 * or deletion without notice.</b></p>
220.1 --- a/src/share/classes/com/sun/tools/javah/InternalError.java Thu Jun 17 16:28:21 2010 -0700 220.2 +++ b/src/share/classes/com/sun/tools/javah/InternalError.java Mon Jun 21 22:09:18 2010 -0700 220.3 @@ -26,8 +26,8 @@ 220.4 package com.sun.tools.javah; 220.5 220.6 /** 220.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 220.8 - * you write code that depends on this, you do so at your own risk. 220.9 + * <p><b>This is NOT part of any supported API. 220.10 + * If you write code that depends on this, you do so at your own risk. 220.11 * This code and its internal interfaces are subject to change or 220.12 * deletion without notice.</b> 220.13 */
221.1 --- a/src/share/classes/com/sun/tools/javah/JNI.java Thu Jun 17 16:28:21 2010 -0700 221.2 +++ b/src/share/classes/com/sun/tools/javah/JNI.java Mon Jun 21 22:09:18 2010 -0700 221.3 @@ -42,7 +42,7 @@ 221.4 /** 221.5 * Header file generator for JNI. 221.6 * 221.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 221.8 + * <p><b>This is NOT part of any supported API. 221.9 * If you write code that depends on this, you do so at your own 221.10 * risk. This code and its internal interfaces are subject to change 221.11 * or deletion without notice.</b></p>
222.1 --- a/src/share/classes/com/sun/tools/javah/JavahFileManager.java Thu Jun 17 16:28:21 2010 -0700 222.2 +++ b/src/share/classes/com/sun/tools/javah/JavahFileManager.java Mon Jun 21 22:09:18 2010 -0700 222.3 @@ -36,8 +36,8 @@ 222.4 /** 222.5 * javah's implementation of JavaFileManager. 222.6 * 222.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 222.8 - * you write code that depends on this, you do so at your own risk. 222.9 + * <p><b>This is NOT part of any supported API. 222.10 + * If you write code that depends on this, you do so at your own risk. 222.11 * This code and its internal interfaces are subject to change or 222.12 * deletion without notice.</b> 222.13 */
223.1 --- a/src/share/classes/com/sun/tools/javah/JavahTask.java Thu Jun 17 16:28:21 2010 -0700 223.2 +++ b/src/share/classes/com/sun/tools/javah/JavahTask.java Mon Jun 21 22:09:18 2010 -0700 223.3 @@ -59,7 +59,7 @@ 223.4 import javax.lang.model.type.TypeMirror; 223.5 import javax.lang.model.type.TypeVisitor; 223.6 import javax.lang.model.util.ElementFilter; 223.7 -import javax.lang.model.util.SimpleTypeVisitor6; 223.8 +import javax.lang.model.util.SimpleTypeVisitor7; 223.9 import javax.lang.model.util.Types; 223.10 223.11 import javax.tools.Diagnostic; 223.12 @@ -76,7 +76,7 @@ 223.13 * Javah generates support files for native methods. 223.14 * Parse commandline options & Invokes javadoc to execute those commands. 223.15 * 223.16 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 223.17 + * <p><b>This is NOT part of any supported API. 223.18 * If you write code that depends on this, you do so at your own 223.19 * risk. This code and its internal interfaces are subject to change 223.20 * or deletion without notice.</b></p> 223.21 @@ -705,7 +705,7 @@ 223.22 } 223.23 223.24 private TypeVisitor<Void,Types> checkMethodParametersVisitor = 223.25 - new SimpleTypeVisitor6<Void,Types>() { 223.26 + new SimpleTypeVisitor7<Void,Types>() { 223.27 @Override 223.28 public Void visitArray(ArrayType t, Types types) { 223.29 visit(t.getComponentType(), types);
224.1 --- a/src/share/classes/com/sun/tools/javah/JavahTool.java Thu Jun 17 16:28:21 2010 -0700 224.2 +++ b/src/share/classes/com/sun/tools/javah/JavahTool.java Mon Jun 21 22:09:18 2010 -0700 224.3 @@ -40,7 +40,7 @@ 224.4 import javax.tools.StandardJavaFileManager; 224.5 224.6 /* 224.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 224.8 + * <p><b>This is NOT part of any supported API. 224.9 * If you write code that depends on this, you do so at your own 224.10 * risk. This code and its internal interfaces are subject to change 224.11 * or deletion without notice.</b></p>
225.1 --- a/src/share/classes/com/sun/tools/javah/LLNI.java Thu Jun 17 16:28:21 2010 -0700 225.2 +++ b/src/share/classes/com/sun/tools/javah/LLNI.java Mon Jun 21 22:09:18 2010 -0700 225.3 @@ -45,10 +45,10 @@ 225.4 import javax.lang.model.type.TypeMirror; 225.5 import javax.lang.model.type.TypeVisitor; 225.6 import javax.lang.model.util.ElementFilter; 225.7 -import javax.lang.model.util.SimpleTypeVisitor6; 225.8 +import javax.lang.model.util.SimpleTypeVisitor7; 225.9 225.10 /* 225.11 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 225.12 + * <p><b>This is NOT part of any supported API. 225.13 * If you write code that depends on this, you do so at your own 225.14 * risk. This code and its internal interfaces are subject to change 225.15 * or deletion without notice.</b></p> 225.16 @@ -620,7 +620,7 @@ 225.17 } 225.18 225.19 protected final boolean isLongOrDouble(TypeMirror t) { 225.20 - TypeVisitor<Boolean,Void> v = new SimpleTypeVisitor6<Boolean,Void>() { 225.21 + TypeVisitor<Boolean,Void> v = new SimpleTypeVisitor7<Boolean,Void>() { 225.22 public Boolean defaultAction(TypeMirror t, Void p){ 225.23 return false; 225.24 }
226.1 --- a/src/share/classes/com/sun/tools/javah/Main.java Thu Jun 17 16:28:21 2010 -0700 226.2 +++ b/src/share/classes/com/sun/tools/javah/Main.java Mon Jun 21 22:09:18 2010 -0700 226.3 @@ -30,8 +30,8 @@ 226.4 /** 226.5 * Main entry point. 226.6 * 226.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 226.8 - * you write code that depends on this, you do so at your own risk. 226.9 + * <p><b>This is NOT part of any supported API. 226.10 + * If you write code that depends on this, you do so at your own risk. 226.11 * This code and its internal interfaces are subject to change or 226.12 * deletion without notice.</b> 226.13 */
227.1 --- a/src/share/classes/com/sun/tools/javah/Mangle.java Thu Jun 17 16:28:21 2010 -0700 227.2 +++ b/src/share/classes/com/sun/tools/javah/Mangle.java Mon Jun 21 22:09:18 2010 -0700 227.3 @@ -37,7 +37,7 @@ 227.4 * this more fine grained and distribute the functionality to the 227.5 * generators. 227.6 * 227.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 227.8 + * <p><b>This is NOT part of any supported API. 227.9 * If you write code that depends on this, you do so at your own 227.10 * risk. This code and its internal interfaces are subject to change 227.11 * or deletion without notice.</b></p>
228.1 --- a/src/share/classes/com/sun/tools/javah/NativeHeaderTool.java Thu Jun 17 16:28:21 2010 -0700 228.2 +++ b/src/share/classes/com/sun/tools/javah/NativeHeaderTool.java Mon Jun 21 22:09:18 2010 -0700 228.3 @@ -44,8 +44,8 @@ 228.4 * @see JavaFileManager 228.5 * @since 1.7 228.6 * 228.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 228.8 - * you write code that depends on this, you do so at your own risk. 228.9 + * <p><b>This is NOT part of any supported API. 228.10 + * If you write code that depends on this, you do so at your own risk. 228.11 * This code and its internal interfaces are subject to change or 228.12 * deletion without notice.</b> 228.13 */
229.1 --- a/src/share/classes/com/sun/tools/javah/TypeSignature.java Thu Jun 17 16:28:21 2010 -0700 229.2 +++ b/src/share/classes/com/sun/tools/javah/TypeSignature.java Mon Jun 21 22:09:18 2010 -0700 229.3 @@ -38,12 +38,12 @@ 229.4 import javax.lang.model.type.TypeVariable; 229.5 import javax.lang.model.type.TypeVisitor; 229.6 import javax.lang.model.util.Elements; 229.7 -import javax.lang.model.util.SimpleTypeVisitor6; 229.8 +import javax.lang.model.util.SimpleTypeVisitor7; 229.9 229.10 /** 229.11 * Returns internal type signature. 229.12 * 229.13 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 229.14 + * <p><b>This is NOT part of any supported API. 229.15 * If you write code that depends on this, you do so at your own 229.16 * risk. This code and its internal interfaces are subject to change 229.17 * or deletion without notice.</b></p> 229.18 @@ -239,7 +239,7 @@ 229.19 229.20 229.21 String qualifiedTypeName(TypeMirror type) { 229.22 - TypeVisitor<Name, Void> v = new SimpleTypeVisitor6<Name, Void>() { 229.23 + TypeVisitor<Name, Void> v = new SimpleTypeVisitor7<Name, Void>() { 229.24 @Override 229.25 public Name visitArray(ArrayType t, Void p) { 229.26 return t.getComponentType().accept(this, p);
230.1 --- a/src/share/classes/com/sun/tools/javah/Util.java Thu Jun 17 16:28:21 2010 -0700 230.2 +++ b/src/share/classes/com/sun/tools/javah/Util.java Mon Jun 21 22:09:18 2010 -0700 230.3 @@ -44,7 +44,7 @@ 230.4 * bug -- Bug has occurred in javah 230.5 * fatal -- We can't even find resources, so bail fast, don't localize 230.6 * 230.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 230.8 + * <p><b>This is NOT part of any supported API. 230.9 * If you write code that depends on this, you do so at your own 230.10 * risk. This code and its internal interfaces are subject to change 230.11 * or deletion without notice.</b></p>
231.1 --- a/src/share/classes/com/sun/tools/javap/AnnotationWriter.java Thu Jun 17 16:28:21 2010 -0700 231.2 +++ b/src/share/classes/com/sun/tools/javap/AnnotationWriter.java Mon Jun 21 22:09:18 2010 -0700 231.3 @@ -40,8 +40,8 @@ 231.4 /** 231.5 * A writer for writing annotations as text. 231.6 * 231.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 231.8 - * you write code that depends on this, you do so at your own risk. 231.9 + * <p><b>This is NOT part of any supported API. 231.10 + * If you write code that depends on this, you do so at your own risk. 231.11 * This code and its internal interfaces are subject to change or 231.12 * deletion without notice.</b> 231.13 */
232.1 --- a/src/share/classes/com/sun/tools/javap/AttributeWriter.java Thu Jun 17 16:28:21 2010 -0700 232.2 +++ b/src/share/classes/com/sun/tools/javap/AttributeWriter.java Mon Jun 21 22:09:18 2010 -0700 232.3 @@ -64,8 +64,8 @@ 232.4 /* 232.5 * A writer for writing Attributes as text. 232.6 * 232.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 232.8 - * you write code that depends on this, you do so at your own risk. 232.9 + * <p><b>This is NOT part of any supported API. 232.10 + * If you write code that depends on this, you do so at your own risk. 232.11 * This code and its internal interfaces are subject to change or 232.12 * deletion without notice.</b> 232.13 */
233.1 --- a/src/share/classes/com/sun/tools/javap/BasicWriter.java Thu Jun 17 16:28:21 2010 -0700 233.2 +++ b/src/share/classes/com/sun/tools/javap/BasicWriter.java Mon Jun 21 22:09:18 2010 -0700 233.3 @@ -35,8 +35,8 @@ 233.4 * A writer similar to a PrintWriter but which does not hide exceptions. 233.5 * The standard print calls are line-buffered; report calls write messages directly. 233.6 * 233.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 233.8 - * you write code that depends on this, you do so at your own risk. 233.9 + * <p><b>This is NOT part of any supported API. 233.10 + * If you write code that depends on this, you do so at your own risk. 233.11 * This code and its internal interfaces are subject to change or 233.12 * deletion without notice.</b> 233.13 */
234.1 --- a/src/share/classes/com/sun/tools/javap/ClassWriter.java Thu Jun 17 16:28:21 2010 -0700 234.2 +++ b/src/share/classes/com/sun/tools/javap/ClassWriter.java Mon Jun 21 22:09:18 2010 -0700 234.3 @@ -54,8 +54,8 @@ 234.4 /* 234.5 * The main javap class to write the contents of a class file as text. 234.6 * 234.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 234.8 - * you write code that depends on this, you do so at your own risk. 234.9 + * <p><b>This is NOT part of any supported API. 234.10 + * If you write code that depends on this, you do so at your own risk. 234.11 * This code and its internal interfaces are subject to change or 234.12 * deletion without notice.</b> 234.13 */
235.1 --- a/src/share/classes/com/sun/tools/javap/CodeWriter.java Thu Jun 17 16:28:21 2010 -0700 235.2 +++ b/src/share/classes/com/sun/tools/javap/CodeWriter.java Mon Jun 21 22:09:18 2010 -0700 235.3 @@ -40,8 +40,8 @@ 235.4 /* 235.5 * Write the contents of a Code attribute. 235.6 * 235.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 235.8 - * you write code that depends on this, you do so at your own risk. 235.9 + * <p><b>This is NOT part of any supported API. 235.10 + * If you write code that depends on this, you do so at your own risk. 235.11 * This code and its internal interfaces are subject to change or 235.12 * deletion without notice.</b> 235.13 */
236.1 --- a/src/share/classes/com/sun/tools/javap/ConstantWriter.java Thu Jun 17 16:28:21 2010 -0700 236.2 +++ b/src/share/classes/com/sun/tools/javap/ConstantWriter.java Mon Jun 21 22:09:18 2010 -0700 236.3 @@ -34,8 +34,8 @@ 236.4 /* 236.5 * Write a constant pool entry. 236.6 * 236.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 236.8 - * you write code that depends on this, you do so at your own risk. 236.9 + * <p><b>This is NOT part of any supported API. 236.10 + * If you write code that depends on this, you do so at your own risk. 236.11 * This code and its internal interfaces are subject to change or 236.12 * deletion without notice.</b> 236.13 */
237.1 --- a/src/share/classes/com/sun/tools/javap/Context.java Thu Jun 17 16:28:21 2010 -0700 237.2 +++ b/src/share/classes/com/sun/tools/javap/Context.java Mon Jun 21 22:09:18 2010 -0700 237.3 @@ -31,8 +31,8 @@ 237.4 /* 237.5 * Class from which to put/get shared resources. 237.6 * 237.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 237.8 - * you write code that depends on this, you do so at your own risk. 237.9 + * <p><b>This is NOT part of any supported API. 237.10 + * If you write code that depends on this, you do so at your own risk. 237.11 * This code and its internal interfaces are subject to change or 237.12 * deletion without notice.</b> 237.13 */
238.1 --- a/src/share/classes/com/sun/tools/javap/DisassemblerTool.java Thu Jun 17 16:28:21 2010 -0700 238.2 +++ b/src/share/classes/com/sun/tools/javap/DisassemblerTool.java Mon Jun 21 22:09:18 2010 -0700 238.3 @@ -44,8 +44,8 @@ 238.4 * @see JavaFileManager 238.5 * @since 1.7 238.6 * 238.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 238.8 - * you write code that depends on this, you do so at your own risk. 238.9 + * <p><b>This is NOT part of any supported API. 238.10 + * If you write code that depends on this, you do so at your own risk. 238.11 * This code and its internal interfaces are subject to change or 238.12 * deletion without notice.</b> 238.13 */
239.1 --- a/src/share/classes/com/sun/tools/javap/InstructionDetailWriter.java Thu Jun 17 16:28:21 2010 -0700 239.2 +++ b/src/share/classes/com/sun/tools/javap/InstructionDetailWriter.java Mon Jun 21 22:09:18 2010 -0700 239.3 @@ -31,8 +31,8 @@ 239.4 /* 239.5 * Write additional details for an instruction. 239.6 * 239.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 239.8 - * you write code that depends on this, you do so at your own risk. 239.9 + * <p><b>This is NOT part of any supported API. 239.10 + * If you write code that depends on this, you do so at your own risk. 239.11 * This code and its internal interfaces are subject to change or 239.12 * deletion without notice.</b> 239.13 */
240.1 --- a/src/share/classes/com/sun/tools/javap/InternalError.java Thu Jun 17 16:28:21 2010 -0700 240.2 +++ b/src/share/classes/com/sun/tools/javap/InternalError.java Mon Jun 21 22:09:18 2010 -0700 240.3 @@ -26,8 +26,8 @@ 240.4 package com.sun.tools.javap; 240.5 240.6 /** 240.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 240.8 - * you write code that depends on this, you do so at your own risk. 240.9 + * <p><b>This is NOT part of any supported API. 240.10 + * If you write code that depends on this, you do so at your own risk. 240.11 * This code and its internal interfaces are subject to change or 240.12 * deletion without notice.</b> 240.13 */
241.1 --- a/src/share/classes/com/sun/tools/javap/JavapFileManager.java Thu Jun 17 16:28:21 2010 -0700 241.2 +++ b/src/share/classes/com/sun/tools/javap/JavapFileManager.java Mon Jun 21 22:09:18 2010 -0700 241.3 @@ -36,8 +36,8 @@ 241.4 /** 241.5 * javap's implementation of JavaFileManager. 241.6 * 241.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 241.8 - * you write code that depends on this, you do so at your own risk. 241.9 + * <p><b>This is NOT part of any supported API. 241.10 + * If you write code that depends on this, you do so at your own risk. 241.11 * This code and its internal interfaces are subject to change or 241.12 * deletion without notice.</b> 241.13 */
242.1 --- a/src/share/classes/com/sun/tools/javap/JavapTask.java Thu Jun 17 16:28:21 2010 -0700 242.2 +++ b/src/share/classes/com/sun/tools/javap/JavapTask.java Mon Jun 21 22:09:18 2010 -0700 242.3 @@ -69,8 +69,8 @@ 242.4 * "Main" class for javap, normally accessed from the command line 242.5 * via Main, or from JSR199 via DisassemblerTool. 242.6 * 242.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 242.8 - * you write code that depends on this, you do so at your own risk. 242.9 + * <p><b>This is NOT part of any supported API. 242.10 + * If you write code that depends on this, you do so at your own risk. 242.11 * This code and its internal interfaces are subject to change or 242.12 * deletion without notice.</b> 242.13 */
243.1 --- a/src/share/classes/com/sun/tools/javap/LocalVariableTableWriter.java Thu Jun 17 16:28:21 2010 -0700 243.2 +++ b/src/share/classes/com/sun/tools/javap/LocalVariableTableWriter.java Mon Jun 21 22:09:18 2010 -0700 243.3 @@ -42,8 +42,8 @@ 243.4 /** 243.5 * Annotate instructions with details about local variables. 243.6 * 243.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 243.8 - * you write code that depends on this, you do so at your own risk. 243.9 + * <p><b>This is NOT part of any supported API. 243.10 + * If you write code that depends on this, you do so at your own risk. 243.11 * This code and its internal interfaces are subject to change or 243.12 * deletion without notice.</b> 243.13 */
244.1 --- a/src/share/classes/com/sun/tools/javap/LocalVariableTypeTableWriter.java Thu Jun 17 16:28:21 2010 -0700 244.2 +++ b/src/share/classes/com/sun/tools/javap/LocalVariableTypeTableWriter.java Mon Jun 21 22:09:18 2010 -0700 244.3 @@ -43,8 +43,8 @@ 244.4 /** 244.5 * Annotate instructions with details about local variables. 244.6 * 244.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 244.8 - * you write code that depends on this, you do so at your own risk. 244.9 + * <p><b>This is NOT part of any supported API. 244.10 + * If you write code that depends on this, you do so at your own risk. 244.11 * This code and its internal interfaces are subject to change or 244.12 * deletion without notice.</b> 244.13 */
245.1 --- a/src/share/classes/com/sun/tools/javap/Main.java Thu Jun 17 16:28:21 2010 -0700 245.2 +++ b/src/share/classes/com/sun/tools/javap/Main.java Mon Jun 21 22:09:18 2010 -0700 245.3 @@ -30,8 +30,8 @@ 245.4 /** 245.5 * Main entry point. 245.6 * 245.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 245.8 - * you write code that depends on this, you do so at your own risk. 245.9 + * <p><b>This is NOT part of any supported API. 245.10 + * If you write code that depends on this, you do so at your own risk. 245.11 * This code and its internal interfaces are subject to change or 245.12 * deletion without notice.</b> 245.13 */
246.1 --- a/src/share/classes/com/sun/tools/javap/Messages.java Thu Jun 17 16:28:21 2010 -0700 246.2 +++ b/src/share/classes/com/sun/tools/javap/Messages.java Mon Jun 21 22:09:18 2010 -0700 246.3 @@ -30,8 +30,8 @@ 246.4 /** 246.5 * Access to javap messages. 246.6 * 246.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 246.8 - * you write code that depends on this, you do so at your own risk. 246.9 + * <p><b>This is NOT part of any supported API. 246.10 + * If you write code that depends on this, you do so at your own risk. 246.11 * This code and its internal interfaces are subject to change or 246.12 * deletion without notice.</b> 246.13 */
247.1 --- a/src/share/classes/com/sun/tools/javap/Options.java Thu Jun 17 16:28:21 2010 -0700 247.2 +++ b/src/share/classes/com/sun/tools/javap/Options.java Mon Jun 21 22:09:18 2010 -0700 247.3 @@ -34,8 +34,8 @@ 247.4 /* 247.5 * Provides access to javap's options, set via the command line 247.6 * or JSR 199 API. 247.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 247.8 - * you write code that depends on this, you do so at your own risk. 247.9 + * <p><b>This is NOT part of any supported API. 247.10 + * If you write code that depends on this, you do so at your own risk. 247.11 * This code and its internal interfaces are subject to change or 247.12 * deletion without notice.</b> 247.13 */
248.1 --- a/src/share/classes/com/sun/tools/javap/SourceWriter.java Thu Jun 17 16:28:21 2010 -0700 248.2 +++ b/src/share/classes/com/sun/tools/javap/SourceWriter.java Mon Jun 21 22:09:18 2010 -0700 248.3 @@ -52,8 +52,8 @@ 248.4 /** 248.5 * Annotate instructions with source code. 248.6 * 248.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 248.8 - * you write code that depends on this, you do so at your own risk. 248.9 + * <p><b>This is NOT part of any supported API. 248.10 + * If you write code that depends on this, you do so at your own risk. 248.11 * This code and its internal interfaces are subject to change or 248.12 * deletion without notice.</b> 248.13 */
249.1 --- a/src/share/classes/com/sun/tools/javap/StackMapWriter.java Thu Jun 17 16:28:21 2010 -0700 249.2 +++ b/src/share/classes/com/sun/tools/javap/StackMapWriter.java Mon Jun 21 22:09:18 2010 -0700 249.3 @@ -45,8 +45,8 @@ 249.4 /** 249.5 * Annotate instructions with stack map. 249.6 * 249.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 249.8 - * you write code that depends on this, you do so at your own risk. 249.9 + * <p><b>This is NOT part of any supported API. 249.10 + * If you write code that depends on this, you do so at your own risk. 249.11 * This code and its internal interfaces are subject to change or 249.12 * deletion without notice.</b> 249.13 */
250.1 --- a/src/share/classes/com/sun/tools/javap/TryBlockWriter.java Thu Jun 17 16:28:21 2010 -0700 250.2 +++ b/src/share/classes/com/sun/tools/javap/TryBlockWriter.java Mon Jun 21 22:09:18 2010 -0700 250.3 @@ -37,8 +37,8 @@ 250.4 /** 250.5 * Annotate instructions with details about try blocks. 250.6 * 250.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 250.8 - * you write code that depends on this, you do so at your own risk. 250.9 + * <p><b>This is NOT part of any supported API. 250.10 + * If you write code that depends on this, you do so at your own risk. 250.11 * This code and its internal interfaces are subject to change or 250.12 * deletion without notice.</b> 250.13 */
251.1 --- a/src/share/classes/com/sun/tools/javap/TypeAnnotationWriter.java Thu Jun 17 16:28:21 2010 -0700 251.2 +++ b/src/share/classes/com/sun/tools/javap/TypeAnnotationWriter.java Mon Jun 21 22:09:18 2010 -0700 251.3 @@ -41,8 +41,8 @@ 251.4 /** 251.5 * Annotate instructions with details about type annotations. 251.6 * 251.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. If 251.8 - * you write code that depends on this, you do so at your own risk. 251.9 + * <p><b>This is NOT part of any supported API. 251.10 + * If you write code that depends on this, you do so at your own risk. 251.11 * This code and its internal interfaces are subject to change or 251.12 * deletion without notice.</b> 251.13 */
252.1 --- a/src/share/classes/javax/lang/model/element/ElementVisitor.java Thu Jun 17 16:28:21 2010 -0700 252.2 +++ b/src/share/classes/javax/lang/model/element/ElementVisitor.java Mon Jun 21 22:09:18 2010 -0700 252.3 @@ -62,6 +62,7 @@ 252.4 * @author Scott Seligman 252.5 * @author Peter von der Ahé 252.6 * @see AbstractElementVisitor6 252.7 + * @see AbstractElementVisitor7 252.8 * @since 1.6 252.9 */ 252.10 public interface ElementVisitor<R, P> {
253.1 --- a/src/share/classes/javax/lang/model/type/MirroredTypeException.java Thu Jun 17 16:28:21 2010 -0700 253.2 +++ b/src/share/classes/javax/lang/model/type/MirroredTypeException.java Mon Jun 21 22:09:18 2010 -0700 253.3 @@ -42,7 +42,7 @@ 253.4 * @see Element#getAnnotation(Class) 253.5 * @since 1.6 253.6 */ 253.7 -public class MirroredTypeException extends RuntimeException { 253.8 +public class MirroredTypeException extends MirroredTypesException { 253.9 253.10 private static final long serialVersionUID = 269; 253.11 253.12 @@ -54,7 +54,7 @@ 253.13 * @param type the type being accessed 253.14 */ 253.15 public MirroredTypeException(TypeMirror type) { 253.16 - super("Attempt to access Class object for TypeMirror " + type.toString()); 253.17 + super("Attempt to access Class object for TypeMirror " + type.toString(), type); 253.18 this.type = type; 253.19 } 253.20 253.21 @@ -76,5 +76,6 @@ 253.22 throws IOException, ClassNotFoundException { 253.23 s.defaultReadObject(); 253.24 type = null; 253.25 + types = null; 253.26 } 253.27 }
254.1 --- a/src/share/classes/javax/lang/model/type/MirroredTypesException.java Thu Jun 17 16:28:21 2010 -0700 254.2 +++ b/src/share/classes/javax/lang/model/type/MirroredTypesException.java Mon Jun 21 22:09:18 2010 -0700 254.3 @@ -49,7 +49,17 @@ 254.4 254.5 private static final long serialVersionUID = 269; 254.6 254.7 - private transient List<? extends TypeMirror> types; // cannot be serialized 254.8 + transient List<? extends TypeMirror> types; // cannot be serialized 254.9 + 254.10 + /* 254.11 + * Trusted constructor to be called by MirroredTypeException. 254.12 + */ 254.13 + MirroredTypesException(String message, TypeMirror type) { 254.14 + super(message); 254.15 + List<TypeMirror> tmp = (new ArrayList<TypeMirror>()); 254.16 + tmp.add(type); 254.17 + types = Collections.unmodifiableList(tmp); 254.18 + } 254.19 254.20 /** 254.21 * Constructs a new MirroredTypesException for the specified types.
255.1 --- a/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java Thu Jun 17 16:28:21 2010 -0700 255.2 +++ b/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java Mon Jun 21 22:09:18 2010 -0700 255.3 @@ -62,6 +62,8 @@ 255.4 * @author Joseph D. Darcy 255.5 * @author Scott Seligman 255.6 * @author Peter von der Ahé 255.7 + * 255.8 + * @see AbstractAnnotationValueVisitor7 255.9 * @since 1.6 255.10 */ 255.11 @SupportedSourceVersion(RELEASE_6)
256.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 256.2 +++ b/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor7.java Mon Jun 21 22:09:18 2010 -0700 256.3 @@ -0,0 +1,73 @@ 256.4 +/* 256.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 256.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 256.7 + * 256.8 + * This code is free software; you can redistribute it and/or modify it 256.9 + * under the terms of the GNU General Public License version 2 only, as 256.10 + * published by the Free Software Foundation. Oracle designates this 256.11 + * particular file as subject to the "Classpath" exception as provided 256.12 + * by Oracle in the LICENSE file that accompanied this code. 256.13 + * 256.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 256.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 256.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 256.17 + * version 2 for more details (a copy is included in the LICENSE file that 256.18 + * accompanied this code). 256.19 + * 256.20 + * You should have received a copy of the GNU General Public License version 256.21 + * 2 along with this work; if not, write to the Free Software Foundation, 256.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 256.23 + * 256.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 256.25 + * or visit www.oracle.com if you need additional information or have any 256.26 + * questions. 256.27 + */ 256.28 + 256.29 +package javax.lang.model.util; 256.30 + 256.31 +import java.util.List; 256.32 +import javax.lang.model.element.*; 256.33 + 256.34 +import javax.lang.model.type.TypeMirror; 256.35 +import static javax.lang.model.SourceVersion.*; 256.36 +import javax.lang.model.SourceVersion; 256.37 +import javax.annotation.processing.SupportedSourceVersion; 256.38 + 256.39 +/** 256.40 + * A skeletal visitor for annotation values with default behavior 256.41 + * appropriate for the {@link SourceVersion#RELEASE_7 RELEASE_7} 256.42 + * source version. 256.43 + * 256.44 + * <p> <b>WARNING:</b> The {@code AnnotationValueVisitor} interface 256.45 + * implemented by this class may have methods added to it in the 256.46 + * future to accommodate new, currently unknown, language structures 256.47 + * added to future versions of the Java™ programming language. 256.48 + * Therefore, methods whose names begin with {@code "visit"} may be 256.49 + * added to this class in the future; to avoid incompatibilities, 256.50 + * classes which extend this class should not declare any instance 256.51 + * methods with names beginning with {@code "visit"}. 256.52 + * 256.53 + * <p>When such a new visit method is added, the default 256.54 + * implementation in this class will be to call the {@link 256.55 + * #visitUnknown visitUnknown} method. A new abstract annotation 256.56 + * value visitor class will also be introduced to correspond to the 256.57 + * new language level; this visitor will have different default 256.58 + * behavior for the visit method in question. When the new visitor is 256.59 + * introduced, all or portions of this visitor may be deprecated. 256.60 + * 256.61 + * @param <R> the return type of this visitor's methods 256.62 + * @param <P> the type of the additional parameter to this visitor's methods. 256.63 + * 256.64 + * @see AbstractAnnotationValueVisitor6 256.65 + * @since 1.7 256.66 + */ 256.67 +@SupportedSourceVersion(RELEASE_7) 256.68 +public abstract class AbstractAnnotationValueVisitor7<R, P> extends AbstractAnnotationValueVisitor6<R, P> { 256.69 + 256.70 + /** 256.71 + * Constructor for concrete subclasses to call. 256.72 + */ 256.73 + protected AbstractAnnotationValueVisitor7() { 256.74 + super(); 256.75 + } 256.76 +}
257.1 --- a/src/share/classes/javax/lang/model/util/AbstractElementVisitor6.java Thu Jun 17 16:28:21 2010 -0700 257.2 +++ b/src/share/classes/javax/lang/model/util/AbstractElementVisitor6.java Mon Jun 21 22:09:18 2010 -0700 257.3 @@ -65,6 +65,8 @@ 257.4 * @author Joseph D. Darcy 257.5 * @author Scott Seligman 257.6 * @author Peter von der Ahé 257.7 + * 257.8 + * @see AbstractElementVisitor7 257.9 * @since 1.6 257.10 */ 257.11 @SupportedSourceVersion(RELEASE_6)
258.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 258.2 +++ b/src/share/classes/javax/lang/model/util/AbstractElementVisitor7.java Mon Jun 21 22:09:18 2010 -0700 258.3 @@ -0,0 +1,75 @@ 258.4 +/* 258.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 258.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 258.7 + * 258.8 + * This code is free software; you can redistribute it and/or modify it 258.9 + * under the terms of the GNU General Public License version 2 only, as 258.10 + * published by the Free Software Foundation. Oracle designates this 258.11 + * particular file as subject to the "Classpath" exception as provided 258.12 + * by Oracle in the LICENSE file that accompanied this code. 258.13 + * 258.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 258.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 258.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 258.17 + * version 2 for more details (a copy is included in the LICENSE file that 258.18 + * accompanied this code). 258.19 + * 258.20 + * You should have received a copy of the GNU General Public License version 258.21 + * 2 along with this work; if not, write to the Free Software Foundation, 258.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 258.23 + * 258.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 258.25 + * or visit www.oracle.com if you need additional information or have any 258.26 + * questions. 258.27 + */ 258.28 + 258.29 +package javax.lang.model.util; 258.30 + 258.31 +import javax.lang.model.element.*; 258.32 +import javax.annotation.processing.SupportedSourceVersion; 258.33 +import javax.lang.model.element.*; 258.34 +import static javax.lang.model.element.ElementKind.*; 258.35 +import static javax.lang.model.SourceVersion.*; 258.36 +import javax.lang.model.SourceVersion; 258.37 + 258.38 + 258.39 +/** 258.40 + * A skeletal visitor of program elements with default behavior 258.41 + * appropriate for the {@link SourceVersion#RELEASE_7 RELEASE_7} 258.42 + * source version. 258.43 + * 258.44 + * <p> <b>WARNING:</b> The {@code ElementVisitor} interface 258.45 + * implemented by this class may have methods added to it in the 258.46 + * future to accommodate new, currently unknown, language structures 258.47 + * added to future versions of the Java™ programming language. 258.48 + * Therefore, methods whose names begin with {@code "visit"} may be 258.49 + * added to this class in the future; to avoid incompatibilities, 258.50 + * classes which extend this class should not declare any instance 258.51 + * methods with names beginning with {@code "visit"}. 258.52 + * 258.53 + * <p>When such a new visit method is added, the default 258.54 + * implementation in this class will be to call the {@link 258.55 + * #visitUnknown visitUnknown} method. A new abstract element visitor 258.56 + * class will also be introduced to correspond to the new language 258.57 + * level; this visitor will have different default behavior for the 258.58 + * visit method in question. When the new visitor is introduced, all 258.59 + * or portions of this visitor may be deprecated. 258.60 + * 258.61 + * @param <R> the return type of this visitor's methods. Use {@link 258.62 + * Void} for visitors that do not need to return results. 258.63 + * @param <P> the type of the additional parameter to this visitor's 258.64 + * methods. Use {@code Void} for visitors that do not need an 258.65 + * additional parameter. 258.66 + * 258.67 + * @see AbstractElementVisitor6 258.68 + * @since 1.7 258.69 + */ 258.70 +@SupportedSourceVersion(RELEASE_7) 258.71 +public abstract class AbstractElementVisitor7<R, P> extends AbstractElementVisitor6<R, P> { 258.72 + /** 258.73 + * Constructor for concrete subclasses to call. 258.74 + */ 258.75 + protected AbstractElementVisitor7(){ 258.76 + super(); 258.77 + } 258.78 +}
259.1 --- a/src/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java Thu Jun 17 16:28:21 2010 -0700 259.2 +++ b/src/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java Mon Jun 21 22:09:18 2010 -0700 259.3 @@ -57,6 +57,8 @@ 259.4 * @author Joseph D. Darcy 259.5 * @author Scott Seligman 259.6 * @author Peter von der Ahé 259.7 + * 259.8 + * @see AbstractTypeVisitor7 259.9 * @since 1.6 259.10 */ 259.11 public abstract class AbstractTypeVisitor6<R, P> implements TypeVisitor<R, P> {
260.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 260.2 +++ b/src/share/classes/javax/lang/model/util/AbstractTypeVisitor7.java Mon Jun 21 22:09:18 2010 -0700 260.3 @@ -0,0 +1,67 @@ 260.4 +/* 260.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 260.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 260.7 + * 260.8 + * This code is free software; you can redistribute it and/or modify it 260.9 + * under the terms of the GNU General Public License version 2 only, as 260.10 + * published by the Free Software Foundation. Oracle designates this 260.11 + * particular file as subject to the "Classpath" exception as provided 260.12 + * by Oracle in the LICENSE file that accompanied this code. 260.13 + * 260.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 260.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 260.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 260.17 + * version 2 for more details (a copy is included in the LICENSE file that 260.18 + * accompanied this code). 260.19 + * 260.20 + * You should have received a copy of the GNU General Public License version 260.21 + * 2 along with this work; if not, write to the Free Software Foundation, 260.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 260.23 + * 260.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 260.25 + * or visit www.oracle.com if you need additional information or have any 260.26 + * questions. 260.27 + */ 260.28 + 260.29 +package javax.lang.model.util; 260.30 + 260.31 +import javax.lang.model.type.*; 260.32 + 260.33 +/** 260.34 + * A skeletal visitor of types with default behavior appropriate for 260.35 + * the version 7 language level. 260.36 + * 260.37 + * <p> <b>WARNING:</b> The {@code TypeVisitor} interface implemented 260.38 + * by this class may have methods added to it in the future to 260.39 + * accommodate new, currently unknown, language structures added to 260.40 + * future versions of the Java™ programming language. 260.41 + * Therefore, methods whose names begin with {@code "visit"} may be 260.42 + * added to this class in the future; to avoid incompatibilities, 260.43 + * classes which extend this class should not declare any instance 260.44 + * methods with names beginning with {@code "visit"}. 260.45 + * 260.46 + * <p>When such a new visit method is added, the default 260.47 + * implementation in this class will be to call the {@link 260.48 + * #visitUnknown visitUnknown} method. A new abstract type visitor 260.49 + * class will also be introduced to correspond to the new language 260.50 + * level; this visitor will have different default behavior for the 260.51 + * visit method in question. When the new visitor is introduced, all 260.52 + * or portions of this visitor may be deprecated. 260.53 + * 260.54 + * @param <R> the return type of this visitor's methods. Use {@link 260.55 + * Void} for visitors that do not need to return results. 260.56 + * @param <P> the type of the additional parameter to this visitor's 260.57 + * methods. Use {@code Void} for visitors that do not need an 260.58 + * additional parameter. 260.59 + * 260.60 + * @see AbstractTypeVisitor6 260.61 + * @since 1.7 260.62 + */ 260.63 +public abstract class AbstractTypeVisitor7<R, P> extends AbstractTypeVisitor6<R, P> { 260.64 + /** 260.65 + * Constructor for concrete subclasses to call. 260.66 + */ 260.67 + protected AbstractTypeVisitor7() { 260.68 + super(); 260.69 + } 260.70 +}
261.1 --- a/src/share/classes/javax/lang/model/util/ElementKindVisitor6.java Thu Jun 17 16:28:21 2010 -0700 261.2 +++ b/src/share/classes/javax/lang/model/util/ElementKindVisitor6.java Mon Jun 21 22:09:18 2010 -0700 261.3 @@ -76,6 +76,8 @@ 261.4 * @author Joseph D. Darcy 261.5 * @author Scott Seligman 261.6 * @author Peter von der Ahé 261.7 + * 261.8 + * @see ElementKindVisitor7 261.9 * @since 1.6 261.10 */ 261.11 @SupportedSourceVersion(RELEASE_6)
262.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 262.2 +++ b/src/share/classes/javax/lang/model/util/ElementKindVisitor7.java Mon Jun 21 22:09:18 2010 -0700 262.3 @@ -0,0 +1,97 @@ 262.4 +/* 262.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 262.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 262.7 + * 262.8 + * This code is free software; you can redistribute it and/or modify it 262.9 + * under the terms of the GNU General Public License version 2 only, as 262.10 + * published by the Free Software Foundation. Oracle designates this 262.11 + * particular file as subject to the "Classpath" exception as provided 262.12 + * by Oracle in the LICENSE file that accompanied this code. 262.13 + * 262.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 262.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 262.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 262.17 + * version 2 for more details (a copy is included in the LICENSE file that 262.18 + * accompanied this code). 262.19 + * 262.20 + * You should have received a copy of the GNU General Public License version 262.21 + * 2 along with this work; if not, write to the Free Software Foundation, 262.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 262.23 + * 262.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 262.25 + * or visit www.oracle.com if you need additional information or have any 262.26 + * questions. 262.27 + */ 262.28 + 262.29 +package javax.lang.model.util; 262.30 + 262.31 +import javax.lang.model.element.*; 262.32 +import static javax.lang.model.element.ElementKind.*; 262.33 +import javax.annotation.processing.SupportedSourceVersion; 262.34 +import static javax.lang.model.SourceVersion.*; 262.35 +import javax.lang.model.SourceVersion; 262.36 + 262.37 +/** 262.38 + * A visitor of program elements based on their {@linkplain 262.39 + * ElementKind kind} with default behavior appropriate for the {@link 262.40 + * SourceVersion#RELEASE_6 RELEASE_6} source version. For {@linkplain 262.41 + * Element elements} <tt><i>XYZ</i></tt> that may have more than one 262.42 + * kind, the <tt>visit<i>XYZ</i></tt> methods in this class delegate 262.43 + * to the <tt>visit<i>XYZKind</i></tt> method corresponding to the 262.44 + * first argument's kind. The <tt>visit<i>XYZKind</i></tt> methods 262.45 + * call {@link #defaultAction defaultAction}, passing their arguments 262.46 + * to {@code defaultAction}'s corresponding parameters. 262.47 + * 262.48 + * <p> Methods in this class may be overridden subject to their 262.49 + * general contract. Note that annotating methods in concrete 262.50 + * subclasses with {@link java.lang.Override @Override} will help 262.51 + * ensure that methods are overridden as intended. 262.52 + * 262.53 + * <p> <b>WARNING:</b> The {@code ElementVisitor} interface 262.54 + * implemented by this class may have methods added to it or the 262.55 + * {@code ElementKind} {@code enum} used in this case may have 262.56 + * constants added to it in the future to accommodate new, currently 262.57 + * unknown, language structures added to future versions of the 262.58 + * Java™ programming language. Therefore, methods whose names 262.59 + * begin with {@code "visit"} may be added to this class in the 262.60 + * future; to avoid incompatibilities, classes which extend this class 262.61 + * should not declare any instance methods with names beginning with 262.62 + * {@code "visit"}. 262.63 + * 262.64 + * <p>When such a new visit method is added, the default 262.65 + * implementation in this class will be to call the {@link 262.66 + * #visitUnknown visitUnknown} method. A new abstract element kind 262.67 + * visitor class will also be introduced to correspond to the new 262.68 + * language level; this visitor will have different default behavior 262.69 + * for the visit method in question. When the new visitor is 262.70 + * introduced, all or portions of this visitor may be deprecated. 262.71 + * 262.72 + * @param <R> the return type of this visitor's methods. Use {@link 262.73 + * Void} for visitors that do not need to return results. 262.74 + * @param <P> the type of the additional parameter to this visitor's 262.75 + * methods. Use {@code Void} for visitors that do not need an 262.76 + * additional parameter. 262.77 + * 262.78 + * @see ElementKindVisitor6 262.79 + * @since 1.7 262.80 + */ 262.81 +@SupportedSourceVersion(RELEASE_7) 262.82 +public class ElementKindVisitor7<R, P> extends ElementKindVisitor6<R, P> { 262.83 + /** 262.84 + * Constructor for concrete subclasses; uses {@code null} for the 262.85 + * default value. 262.86 + */ 262.87 + protected ElementKindVisitor7() { 262.88 + super(null); 262.89 + } 262.90 + 262.91 + /** 262.92 + * Constructor for concrete subclasses; uses the argument for the 262.93 + * default value. 262.94 + * 262.95 + * @param defaultValue the value to assign to {@link #DEFAULT_VALUE} 262.96 + */ 262.97 + protected ElementKindVisitor7(R defaultValue) { 262.98 + super(defaultValue); 262.99 + } 262.100 +}
263.1 --- a/src/share/classes/javax/lang/model/util/ElementScanner6.java Thu Jun 17 16:28:21 2010 -0700 263.2 +++ b/src/share/classes/javax/lang/model/util/ElementScanner6.java Mon Jun 21 22:09:18 2010 -0700 263.3 @@ -88,6 +88,8 @@ 263.4 * @author Joseph D. Darcy 263.5 * @author Scott Seligman 263.6 * @author Peter von der Ahé 263.7 + * 263.8 + * @see ElementScanner7 263.9 * @since 1.6 263.10 */ 263.11 @SupportedSourceVersion(RELEASE_6)
264.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 264.2 +++ b/src/share/classes/javax/lang/model/util/ElementScanner7.java Mon Jun 21 22:09:18 2010 -0700 264.3 @@ -0,0 +1,108 @@ 264.4 +/* 264.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 264.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 264.7 + * 264.8 + * This code is free software; you can redistribute it and/or modify it 264.9 + * under the terms of the GNU General Public License version 2 only, as 264.10 + * published by the Free Software Foundation. Oracle designates this 264.11 + * particular file as subject to the "Classpath" exception as provided 264.12 + * by Oracle in the LICENSE file that accompanied this code. 264.13 + * 264.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 264.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 264.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 264.17 + * version 2 for more details (a copy is included in the LICENSE file that 264.18 + * accompanied this code). 264.19 + * 264.20 + * You should have received a copy of the GNU General Public License version 264.21 + * 2 along with this work; if not, write to the Free Software Foundation, 264.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 264.23 + * 264.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 264.25 + * or visit www.oracle.com if you need additional information or have any 264.26 + * questions. 264.27 + */ 264.28 + 264.29 +package javax.lang.model.util; 264.30 + 264.31 +import javax.lang.model.element.*; 264.32 +import javax.annotation.processing.SupportedSourceVersion; 264.33 +import static javax.lang.model.element.ElementKind.*; 264.34 +import javax.lang.model.SourceVersion; 264.35 +import static javax.lang.model.SourceVersion.*; 264.36 + 264.37 + 264.38 +/** 264.39 + * A scanning visitor of program elements with default behavior 264.40 + * appropriate for the {@link SourceVersion#RELEASE_7 RELEASE_7} 264.41 + * source version. The <tt>visit<i>XYZ</i></tt> methods in this 264.42 + * class scan their component elements by calling {@code scan} on 264.43 + * their {@linkplain Element#getEnclosedElements enclosed elements}, 264.44 + * {@linkplain ExecutableElement#getParameters parameters}, etc., as 264.45 + * indicated in the individual method specifications. A subclass can 264.46 + * control the order elements are visited by overriding the 264.47 + * <tt>visit<i>XYZ</i></tt> methods. Note that clients of a scanner 264.48 + * may get the desired behavior be invoking {@code v.scan(e, p)} rather 264.49 + * than {@code v.visit(e, p)} on the root objects of interest. 264.50 + * 264.51 + * <p>When a subclass overrides a <tt>visit<i>XYZ</i></tt> method, the 264.52 + * new method can cause the enclosed elements to be scanned in the 264.53 + * default way by calling <tt>super.visit<i>XYZ</i></tt>. In this 264.54 + * fashion, the concrete visitor can control the ordering of traversal 264.55 + * over the component elements with respect to the additional 264.56 + * processing; for example, consistently calling 264.57 + * <tt>super.visit<i>XYZ</i></tt> at the start of the overridden 264.58 + * methods will yield a preorder traversal, etc. If the component 264.59 + * elements should be traversed in some other order, instead of 264.60 + * calling <tt>super.visit<i>XYZ</i></tt>, an overriding visit method 264.61 + * should call {@code scan} with the elements in the desired order. 264.62 + * 264.63 + * <p> Methods in this class may be overridden subject to their 264.64 + * general contract. Note that annotating methods in concrete 264.65 + * subclasses with {@link java.lang.Override @Override} will help 264.66 + * ensure that methods are overridden as intended. 264.67 + * 264.68 + * <p> <b>WARNING:</b> The {@code ElementVisitor} interface 264.69 + * implemented by this class may have methods added to it in the 264.70 + * future to accommodate new, currently unknown, language structures 264.71 + * added to future versions of the Java™ programming language. 264.72 + * Therefore, methods whose names begin with {@code "visit"} may be 264.73 + * added to this class in the future; to avoid incompatibilities, 264.74 + * classes which extend this class should not declare any instance 264.75 + * methods with names beginning with {@code "visit"}. 264.76 + * 264.77 + * <p>When such a new visit method is added, the default 264.78 + * implementation in this class will be to call the {@link 264.79 + * #visitUnknown visitUnknown} method. A new element scanner visitor 264.80 + * class will also be introduced to correspond to the new language 264.81 + * level; this visitor will have different default behavior for the 264.82 + * visit method in question. When the new visitor is introduced, all 264.83 + * or portions of this visitor may be deprecated. 264.84 + * 264.85 + * @param <R> the return type of this visitor's methods. Use {@link 264.86 + * Void} for visitors that do not need to return results. 264.87 + * @param <P> the type of the additional parameter to this visitor's 264.88 + * methods. Use {@code Void} for visitors that do not need an 264.89 + * additional parameter. 264.90 + * 264.91 + * @see ElementScanner6 264.92 + * @since 1.7 264.93 + */ 264.94 +@SupportedSourceVersion(RELEASE_7) 264.95 +public class ElementScanner7<R, P> extends ElementScanner6<R, P> { 264.96 + /** 264.97 + * Constructor for concrete subclasses; uses {@code null} for the 264.98 + * default value. 264.99 + */ 264.100 + protected ElementScanner7(){ 264.101 + super(null); 264.102 + } 264.103 + 264.104 + /** 264.105 + * Constructor for concrete subclasses; uses the argument for the 264.106 + * default value. 264.107 + */ 264.108 + protected ElementScanner7(R defaultValue){ 264.109 + super(defaultValue); 264.110 + } 264.111 +}
265.1 --- a/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor6.java Thu Jun 17 16:28:21 2010 -0700 265.2 +++ b/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor6.java Mon Jun 21 22:09:18 2010 -0700 265.3 @@ -69,6 +69,8 @@ 265.4 * @author Joseph D. Darcy 265.5 * @author Scott Seligman 265.6 * @author Peter von der Ahé 265.7 + * 265.8 + * @see SimpleAnnotationValueVisitor7 265.9 * @since 1.6 265.10 */ 265.11 @SupportedSourceVersion(RELEASE_6)
266.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 266.2 +++ b/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor7.java Mon Jun 21 22:09:18 2010 -0700 266.3 @@ -0,0 +1,90 @@ 266.4 +/* 266.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 266.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 266.7 + * 266.8 + * This code is free software; you can redistribute it and/or modify it 266.9 + * under the terms of the GNU General Public License version 2 only, as 266.10 + * published by the Free Software Foundation. Oracle designates this 266.11 + * particular file as subject to the "Classpath" exception as provided 266.12 + * by Oracle in the LICENSE file that accompanied this code. 266.13 + * 266.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 266.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 266.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 266.17 + * version 2 for more details (a copy is included in the LICENSE file that 266.18 + * accompanied this code). 266.19 + * 266.20 + * You should have received a copy of the GNU General Public License version 266.21 + * 2 along with this work; if not, write to the Free Software Foundation, 266.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 266.23 + * 266.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 266.25 + * or visit www.oracle.com if you need additional information or have any 266.26 + * questions. 266.27 + */ 266.28 + 266.29 +package javax.lang.model.util; 266.30 + 266.31 +import java.util.List; 266.32 +import javax.lang.model.element.*; 266.33 + 266.34 +import javax.lang.model.type.TypeMirror; 266.35 +import static javax.lang.model.SourceVersion.*; 266.36 +import javax.lang.model.SourceVersion; 266.37 +import javax.annotation.processing.SupportedSourceVersion; 266.38 + 266.39 +/** 266.40 + * A simple visitor for annotation values with default behavior 266.41 + * appropriate for the {@link SourceVersion#RELEASE_7 RELEASE_7} 266.42 + * source version. Visit methods call {@link 266.43 + * #defaultAction} passing their arguments to {@code defaultAction}'s 266.44 + * corresponding parameters. 266.45 + * 266.46 + * <p> Methods in this class may be overridden subject to their 266.47 + * general contract. Note that annotating methods in concrete 266.48 + * subclasses with {@link java.lang.Override @Override} will help 266.49 + * ensure that methods are overridden as intended. 266.50 + * 266.51 + * <p> <b>WARNING:</b> The {@code AnnotationValueVisitor} interface 266.52 + * implemented by this class may have methods added to it in the 266.53 + * future to accommodate new, currently unknown, language structures 266.54 + * added to future versions of the Java™ programming language. 266.55 + * Therefore, methods whose names begin with {@code "visit"} may be 266.56 + * added to this class in the future; to avoid incompatibilities, 266.57 + * classes which extend this class should not declare any instance 266.58 + * methods with names beginning with {@code "visit"}. 266.59 + * 266.60 + * <p>When such a new visit method is added, the default 266.61 + * implementation in this class will be to call the {@link 266.62 + * #visitUnknown visitUnknown} method. A new simple annotation 266.63 + * value visitor class will also be introduced to correspond to the 266.64 + * new language level; this visitor will have different default 266.65 + * behavior for the visit method in question. When the new visitor is 266.66 + * introduced, all or portions of this visitor may be deprecated. 266.67 + * 266.68 + * @param <R> the return type of this visitor's methods 266.69 + * @param <P> the type of the additional parameter to this visitor's methods. 266.70 + * 266.71 + * @see SimpleAnnotationValueVisitor6 266.72 + * @since 1.7 266.73 + */ 266.74 +@SupportedSourceVersion(RELEASE_7) 266.75 +public class SimpleAnnotationValueVisitor7<R, P> extends SimpleAnnotationValueVisitor6<R, P> { 266.76 + /** 266.77 + * Constructor for concrete subclasses; uses {@code null} for the 266.78 + * default value. 266.79 + */ 266.80 + protected SimpleAnnotationValueVisitor7() { 266.81 + super(null); 266.82 + } 266.83 + 266.84 + /** 266.85 + * Constructor for concrete subclasses; uses the argument for the 266.86 + * default value. 266.87 + * 266.88 + * @param defaultValue the value to assign to {@link #DEFAULT_VALUE} 266.89 + */ 266.90 + protected SimpleAnnotationValueVisitor7(R defaultValue) { 266.91 + super(defaultValue); 266.92 + } 266.93 +}
267.1 --- a/src/share/classes/javax/lang/model/util/SimpleElementVisitor6.java Thu Jun 17 16:28:21 2010 -0700 267.2 +++ b/src/share/classes/javax/lang/model/util/SimpleElementVisitor6.java Mon Jun 21 22:09:18 2010 -0700 267.3 @@ -71,6 +71,8 @@ 267.4 * @author Joseph D. Darcy 267.5 * @author Scott Seligman 267.6 * @author Peter von der Ahé 267.7 + * 267.8 + * @see SimpleElementVisitor7 267.9 * @since 1.6 267.10 */ 267.11 @SupportedSourceVersion(RELEASE_6)
268.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 268.2 +++ b/src/share/classes/javax/lang/model/util/SimpleElementVisitor7.java Mon Jun 21 22:09:18 2010 -0700 268.3 @@ -0,0 +1,92 @@ 268.4 +/* 268.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 268.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 268.7 + * 268.8 + * This code is free software; you can redistribute it and/or modify it 268.9 + * under the terms of the GNU General Public License version 2 only, as 268.10 + * published by the Free Software Foundation. Oracle designates this 268.11 + * particular file as subject to the "Classpath" exception as provided 268.12 + * by Oracle in the LICENSE file that accompanied this code. 268.13 + * 268.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 268.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 268.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 268.17 + * version 2 for more details (a copy is included in the LICENSE file that 268.18 + * accompanied this code). 268.19 + * 268.20 + * You should have received a copy of the GNU General Public License version 268.21 + * 2 along with this work; if not, write to the Free Software Foundation, 268.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 268.23 + * 268.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 268.25 + * or visit www.oracle.com if you need additional information or have any 268.26 + * questions. 268.27 + */ 268.28 + 268.29 +package javax.lang.model.util; 268.30 + 268.31 +import javax.lang.model.element.*; 268.32 +import javax.annotation.processing.SupportedSourceVersion; 268.33 +import static javax.lang.model.element.ElementKind.*; 268.34 +import javax.lang.model.SourceVersion; 268.35 +import static javax.lang.model.SourceVersion.*; 268.36 + 268.37 +/** 268.38 + * A simple visitor of program elements with default behavior 268.39 + * appropriate for the {@link SourceVersion#RELEASE_7 RELEASE_7} 268.40 + * source version. 268.41 + * 268.42 + * Visit methods corresponding to {@code RELEASE_7} language 268.43 + * constructs call {@link #defaultAction}, passing their arguments to 268.44 + * {@code defaultAction}'s corresponding parameters. 268.45 + * 268.46 + * <p> Methods in this class may be overridden subject to their 268.47 + * general contract. Note that annotating methods in concrete 268.48 + * subclasses with {@link java.lang.Override @Override} will help 268.49 + * ensure that methods are overridden as intended. 268.50 + * 268.51 + * <p> <b>WARNING:</b> The {@code ElementVisitor} interface 268.52 + * implemented by this class may have methods added to it in the 268.53 + * future to accommodate new, currently unknown, language structures 268.54 + * added to future versions of the Java™ programming language. 268.55 + * Therefore, methods whose names begin with {@code "visit"} may be 268.56 + * added to this class in the future; to avoid incompatibilities, 268.57 + * classes which extend this class should not declare any instance 268.58 + * methods with names beginning with {@code "visit"}. 268.59 + * 268.60 + * <p>When such a new visit method is added, the default 268.61 + * implementation in this class will be to call the {@link 268.62 + * #visitUnknown visitUnknown} method. A new simple element visitor 268.63 + * class will also be introduced to correspond to the new language 268.64 + * level; this visitor will have different default behavior for the 268.65 + * visit method in question. When the new visitor is introduced, all 268.66 + * or portions of this visitor may be deprecated. 268.67 + * 268.68 + * @param <R> the return type of this visitor's methods. Use {@code Void} 268.69 + * for visitors that do not need to return results. 268.70 + * @param <P> the type of the additional parameter to this visitor's methods. Use {@code Void} 268.71 + * for visitors that do not need an additional parameter. 268.72 + * 268.73 + * @see SimpleElementVisitor6 268.74 + * @since 1.7 268.75 + */ 268.76 +@SupportedSourceVersion(RELEASE_7) 268.77 +public class SimpleElementVisitor7<R, P> extends SimpleElementVisitor6<R, P> { 268.78 + /** 268.79 + * Constructor for concrete subclasses; uses {@code null} for the 268.80 + * default value. 268.81 + */ 268.82 + protected SimpleElementVisitor7(){ 268.83 + super(null); 268.84 + } 268.85 + 268.86 + /** 268.87 + * Constructor for concrete subclasses; uses the argument for the 268.88 + * default value. 268.89 + * 268.90 + * @param defaultValue the value to assign to {@link #DEFAULT_VALUE} 268.91 + */ 268.92 + protected SimpleElementVisitor7(R defaultValue){ 268.93 + super(defaultValue); 268.94 + } 268.95 +}
269.1 --- a/src/share/classes/javax/lang/model/util/SimpleTypeVisitor6.java Thu Jun 17 16:28:21 2010 -0700 269.2 +++ b/src/share/classes/javax/lang/model/util/SimpleTypeVisitor6.java Mon Jun 21 22:09:18 2010 -0700 269.3 @@ -70,6 +70,8 @@ 269.4 * @author Joseph D. Darcy 269.5 * @author Scott Seligman 269.6 * @author Peter von der Ahé 269.7 + * 269.8 + * @see SimpleTypeVisitor7 269.9 * @since 1.6 269.10 */ 269.11 @SupportedSourceVersion(RELEASE_6)
270.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 270.2 +++ b/src/share/classes/javax/lang/model/util/SimpleTypeVisitor7.java Mon Jun 21 22:09:18 2010 -0700 270.3 @@ -0,0 +1,91 @@ 270.4 +/* 270.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 270.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 270.7 + * 270.8 + * This code is free software; you can redistribute it and/or modify it 270.9 + * under the terms of the GNU General Public License version 2 only, as 270.10 + * published by the Free Software Foundation. Oracle designates this 270.11 + * particular file as subject to the "Classpath" exception as provided 270.12 + * by Oracle in the LICENSE file that accompanied this code. 270.13 + * 270.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 270.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 270.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 270.17 + * version 2 for more details (a copy is included in the LICENSE file that 270.18 + * accompanied this code). 270.19 + * 270.20 + * You should have received a copy of the GNU General Public License version 270.21 + * 2 along with this work; if not, write to the Free Software Foundation, 270.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 270.23 + * 270.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 270.25 + * or visit www.oracle.com if you need additional information or have any 270.26 + * questions. 270.27 + */ 270.28 + 270.29 +package javax.lang.model.util; 270.30 + 270.31 +import javax.lang.model.type.*; 270.32 +import javax.annotation.processing.SupportedSourceVersion; 270.33 +import javax.lang.model.SourceVersion; 270.34 +import static javax.lang.model.SourceVersion.*; 270.35 + 270.36 +/** 270.37 + * A simple visitor of types with default behavior appropriate for the 270.38 + * {@link SourceVersion#RELEASE_7 RELEASE_7} source version. 270.39 + * 270.40 + * Visit methods corresponding to {@code RELEASE_7} language 270.41 + * constructs call {@link #defaultAction}, passing their arguments to 270.42 + * {@code defaultAction}'s corresponding parameters. 270.43 + * 270.44 + * <p> Methods in this class may be overridden subject to their 270.45 + * general contract. Note that annotating methods in concrete 270.46 + * subclasses with {@link java.lang.Override @Override} will help 270.47 + * ensure that methods are overridden as intended. 270.48 + * 270.49 + * <p> <b>WARNING:</b> The {@code TypeVisitor} interface implemented 270.50 + * by this class may have methods added to it in the future to 270.51 + * accommodate new, currently unknown, language structures added to 270.52 + * future versions of the Java™ programming language. 270.53 + * Therefore, methods whose names begin with {@code "visit"} may be 270.54 + * added to this class in the future; to avoid incompatibilities, 270.55 + * classes which extend this class should not declare any instance 270.56 + * methods with names beginning with {@code "visit"}. 270.57 + * 270.58 + * <p>When such a new visit method is added, the default 270.59 + * implementation in this class will be to call the {@link 270.60 + * #visitUnknown visitUnknown} method. A new simple type visitor 270.61 + * class will also be introduced to correspond to the new language 270.62 + * level; this visitor will have different default behavior for the 270.63 + * visit method in question. When the new visitor is introduced, all 270.64 + * or portions of this visitor may be deprecated. 270.65 + * 270.66 + * @param <R> the return type of this visitor's methods. Use {@link 270.67 + * Void} for visitors that do not need to return results. 270.68 + * @param <P> the type of the additional parameter to this visitor's 270.69 + * methods. Use {@code Void} for visitors that do not need an 270.70 + * additional parameter. 270.71 + * 270.72 + * @see SimpleTypeVisitor6 270.73 + * @since 1.7 270.74 + */ 270.75 +@SupportedSourceVersion(RELEASE_7) 270.76 +public class SimpleTypeVisitor7<R, P> extends SimpleTypeVisitor6<R, P> { 270.77 + /** 270.78 + * Constructor for concrete subclasses; uses {@code null} for the 270.79 + * default value. 270.80 + */ 270.81 + protected SimpleTypeVisitor7(){ 270.82 + super(null); 270.83 + } 270.84 + 270.85 + /** 270.86 + * Constructor for concrete subclasses; uses the argument for the 270.87 + * default value. 270.88 + * 270.89 + * @param defaultValue the value to assign to {@link #DEFAULT_VALUE} 270.90 + */ 270.91 + protected SimpleTypeVisitor7(R defaultValue){ 270.92 + super(defaultValue); 270.93 + } 270.94 +}
271.1 --- a/src/share/classes/javax/lang/model/util/TypeKindVisitor6.java Thu Jun 17 16:28:21 2010 -0700 271.2 +++ b/src/share/classes/javax/lang/model/util/TypeKindVisitor6.java Mon Jun 21 22:09:18 2010 -0700 271.3 @@ -74,6 +74,8 @@ 271.4 * @author Joseph D. Darcy 271.5 * @author Scott Seligman 271.6 * @author Peter von der Ahé 271.7 + * 271.8 + * @see TypeKindVisitor7 271.9 * @since 1.6 271.10 */ 271.11 @SupportedSourceVersion(RELEASE_6)
272.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 272.2 +++ b/src/share/classes/javax/lang/model/util/TypeKindVisitor7.java Mon Jun 21 22:09:18 2010 -0700 272.3 @@ -0,0 +1,95 @@ 272.4 +/* 272.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 272.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 272.7 + * 272.8 + * This code is free software; you can redistribute it and/or modify it 272.9 + * under the terms of the GNU General Public License version 2 only, as 272.10 + * published by the Free Software Foundation. Oracle designates this 272.11 + * particular file as subject to the "Classpath" exception as provided 272.12 + * by Oracle in the LICENSE file that accompanied this code. 272.13 + * 272.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 272.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 272.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 272.17 + * version 2 for more details (a copy is included in the LICENSE file that 272.18 + * accompanied this code). 272.19 + * 272.20 + * You should have received a copy of the GNU General Public License version 272.21 + * 2 along with this work; if not, write to the Free Software Foundation, 272.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 272.23 + * 272.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 272.25 + * or visit www.oracle.com if you need additional information or have any 272.26 + * questions. 272.27 + */ 272.28 + 272.29 +package javax.lang.model.util; 272.30 + 272.31 +import javax.lang.model.type.*; 272.32 +import javax.annotation.processing.SupportedSourceVersion; 272.33 +import static javax.lang.model.element.ElementKind.*; 272.34 +import static javax.lang.model.SourceVersion.*; 272.35 +import javax.lang.model.SourceVersion; 272.36 + 272.37 +/** 272.38 + * A visitor of types based on their {@linkplain TypeKind kind} with 272.39 + * default behavior appropriate for the {@link SourceVersion#RELEASE_7 272.40 + * RELEASE_7} source version. For {@linkplain 272.41 + * TypeMirror types} <tt><i>XYZ</i></tt> that may have more than one 272.42 + * kind, the <tt>visit<i>XYZ</i></tt> methods in this class delegate 272.43 + * to the <tt>visit<i>XYZKind</i></tt> method corresponding to the 272.44 + * first argument's kind. The <tt>visit<i>XYZKind</i></tt> methods 272.45 + * call {@link #defaultAction defaultAction}, passing their arguments 272.46 + * to {@code defaultAction}'s corresponding parameters. 272.47 + * 272.48 + * <p> Methods in this class may be overridden subject to their 272.49 + * general contract. Note that annotating methods in concrete 272.50 + * subclasses with {@link java.lang.Override @Override} will help 272.51 + * ensure that methods are overridden as intended. 272.52 + * 272.53 + * <p> <b>WARNING:</b> The {@code TypeVisitor} interface implemented 272.54 + * by this class may have methods added to it in the future to 272.55 + * accommodate new, currently unknown, language structures added to 272.56 + * future versions of the Java™ programming language. 272.57 + * Therefore, methods whose names begin with {@code "visit"} may be 272.58 + * added to this class in the future; to avoid incompatibilities, 272.59 + * classes which extend this class should not declare any instance 272.60 + * methods with names beginning with {@code "visit"}. 272.61 + * 272.62 + * <p>When such a new visit method is added, the default 272.63 + * implementation in this class will be to call the {@link 272.64 + * #visitUnknown visitUnknown} method. A new type kind visitor class 272.65 + * will also be introduced to correspond to the new language level; 272.66 + * this visitor will have different default behavior for the visit 272.67 + * method in question. When the new visitor is introduced, all or 272.68 + * portions of this visitor may be deprecated. 272.69 + * 272.70 + * @param <R> the return type of this visitor's methods. Use {@link 272.71 + * Void} for visitors that do not need to return results. 272.72 + * @param <P> the type of the additional parameter to this visitor's 272.73 + * methods. Use {@code Void} for visitors that do not need an 272.74 + * additional parameter. 272.75 + * 272.76 + * @see TypeKindVisitor6 272.77 + * @since 1.7 272.78 + */ 272.79 +@SupportedSourceVersion(RELEASE_7) 272.80 +public class TypeKindVisitor7<R, P> extends TypeKindVisitor6<R, P> { 272.81 + /** 272.82 + * Constructor for concrete subclasses to call; uses {@code null} 272.83 + * for the default value. 272.84 + */ 272.85 + protected TypeKindVisitor7() { 272.86 + super(null); 272.87 + } 272.88 + 272.89 + /** 272.90 + * Constructor for concrete subclasses to call; uses the argument 272.91 + * for the default value. 272.92 + * 272.93 + * @param defaultValue the value to assign to {@link #DEFAULT_VALUE} 272.94 + */ 272.95 + protected TypeKindVisitor7(R defaultValue) { 272.96 + super(defaultValue); 272.97 + } 272.98 +}
273.1 --- a/src/share/classes/javax/tools/JavaFileManager.java Thu Jun 17 16:28:21 2010 -0700 273.2 +++ b/src/share/classes/javax/tools/JavaFileManager.java Mon Jun 21 22:09:18 2010 -0700 273.3 @@ -256,7 +256,7 @@ 273.4 * 273.5 * <p>Optionally, this file manager might consider the sibling as 273.6 * a hint for where to place the output. The exact semantics of 273.7 - * this hint is unspecified. Sun's compiler, javac, for 273.8 + * this hint is unspecified. The JDK compiler, javac, for 273.9 * example, will place class files in the same directories as 273.10 * originating source files unless a class file output directory 273.11 * is provided. To facilitate this behavior, javac might provide 273.12 @@ -338,7 +338,7 @@ 273.13 * 273.14 * <p>Optionally, this file manager might consider the sibling as 273.15 * a hint for where to place the output. The exact semantics of 273.16 - * this hint is unspecified. Sun's compiler, javac, for 273.17 + * this hint is unspecified. The JDK compiler, javac, for 273.18 * example, will place class files in the same directories as 273.19 * originating source files unless a class file output directory 273.20 * is provided. To facilitate this behavior, javac might provide
274.1 --- a/src/share/sample/javac/processing/src/CheckNamesProcessor.java Thu Jun 17 16:28:21 2010 -0700 274.2 +++ b/src/share/sample/javac/processing/src/CheckNamesProcessor.java Mon Jun 21 22:09:18 2010 -0700 274.3 @@ -138,7 +138,7 @@ 274.4 public SourceVersion getSupportedSourceVersion() { 274.5 /* 274.6 * Return latest source version instead of a fixed version 274.7 - * like RELEASE_6. To return a fixed version, this class 274.8 + * like RELEASE_7. To return a fixed version, this class 274.9 * could be annotated with a SupportedSourceVersion 274.10 * annotation. 274.11 * 274.12 @@ -190,7 +190,7 @@ 274.13 /** 274.14 * Visitor to implement name checks. 274.15 */ 274.16 - private class NameCheckScanner extends ElementScanner6<Void, Void> { 274.17 + private class NameCheckScanner extends ElementScanner7<Void, Void> { 274.18 // The visitor could be enhanced to return true/false if 274.19 // there were warnings reported or a count of the number 274.20 // of warnings. This could be facilitated by using 274.21 @@ -312,7 +312,7 @@ 274.22 @Override 274.23 public Void visitUnknown(Element e, Void p) { 274.24 // This method will be called if a kind of element 274.25 - // added after JDK 6 is visited. Since as of this 274.26 + // added after JDK 7 is visited. Since as of this 274.27 // writing the conventions for such constructs aren't 274.28 // known, issue a warning. 274.29 messager.printMessage(WARNING,
275.1 --- a/test/tools/apt/mirror/declaration/pkg1/pkg2/package.html Thu Jun 17 16:28:21 2010 -0700 275.2 +++ b/test/tools/apt/mirror/declaration/pkg1/pkg2/package.html Mon Jun 21 22:09:18 2010 -0700 275.3 @@ -24,7 +24,6 @@ 275.4 Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 275.5 or visit www.oracle.com if you need additional information or have any 275.6 questions. 275.7 - 275.8 --> 275.9 275.10 </head>
276.1 --- a/test/tools/javac/6402516/CheckLocalElements.java Thu Jun 17 16:28:21 2010 -0700 276.2 +++ b/test/tools/javac/6402516/CheckLocalElements.java Mon Jun 21 22:09:18 2010 -0700 276.3 @@ -95,7 +95,7 @@ 276.4 return encl == null ? "" : encl.accept(qualNameVisitor, null); 276.5 } 276.6 276.7 - private ElementVisitor<String,Void> qualNameVisitor = new SimpleElementVisitor6<String,Void>() { 276.8 + private ElementVisitor<String,Void> qualNameVisitor = new SimpleElementVisitor7<String,Void>() { 276.9 protected String defaultAction(Element e, Void ignore) { 276.10 return ""; 276.11 }
277.1 --- a/test/tools/javac/6948381/T6948381.java Thu Jun 17 16:28:21 2010 -0700 277.2 +++ b/test/tools/javac/6948381/T6948381.java Mon Jun 21 22:09:18 2010 -0700 277.3 @@ -1,5 +1,5 @@ 277.4 /* 277.5 - * Copyright 2010 Sun Microsystems, Inc. All Rights Reserved. 277.6 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 277.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 277.8 * 277.9 * This code is free software; you can redistribute it and/or modify it 277.10 @@ -16,9 +16,9 @@ 277.11 * 2 along with this work; if not, write to the Free Software Foundation, 277.12 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 277.13 * 277.14 - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 277.15 - * CA 95054 USA or visit www.sun.com if you need additional information or 277.16 - * have any questions. 277.17 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 277.18 + * or visit www.oracle.com if you need additional information or have any 277.19 + * questions. 277.20 */ 277.21 277.22 /**
278.1 --- a/test/tools/javac/6948381/npe/A.java Thu Jun 17 16:28:21 2010 -0700 278.2 +++ b/test/tools/javac/6948381/npe/A.java Mon Jun 21 22:09:18 2010 -0700 278.3 @@ -1,5 +1,5 @@ 278.4 /* 278.5 - * Copyright 2010 Sun Microsystems, Inc. All Rights Reserved. 278.6 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 278.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 278.8 * 278.9 * This code is free software; you can redistribute it and/or modify it 278.10 @@ -16,9 +16,9 @@ 278.11 * 2 along with this work; if not, write to the Free Software Foundation, 278.12 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 278.13 * 278.14 - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 278.15 - * CA 95054 USA or visit www.sun.com if you need additional information or 278.16 - * have any questions. 278.17 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 278.18 + * or visit www.oracle.com if you need additional information or have any 278.19 + * questions. 278.20 */ 278.21 278.22 package npe;
279.1 --- a/test/tools/javac/6948381/npe/B.java Thu Jun 17 16:28:21 2010 -0700 279.2 +++ b/test/tools/javac/6948381/npe/B.java Mon Jun 21 22:09:18 2010 -0700 279.3 @@ -1,5 +1,5 @@ 279.4 /* 279.5 - * Copyright 2010 Sun Microsystems, Inc. All Rights Reserved. 279.6 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 279.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 279.8 * 279.9 * This code is free software; you can redistribute it and/or modify it 279.10 @@ -16,9 +16,9 @@ 279.11 * 2 along with this work; if not, write to the Free Software Foundation, 279.12 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 279.13 * 279.14 - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 279.15 - * CA 95054 USA or visit www.sun.com if you need additional information or 279.16 - * have any questions. 279.17 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 279.18 + * or visit www.oracle.com if you need additional information or have any 279.19 + * questions. 279.20 */ 279.21 279.22 package npe;
280.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 280.2 +++ b/test/tools/javac/T6956638.java Mon Jun 21 22:09:18 2010 -0700 280.3 @@ -0,0 +1,156 @@ 280.4 +/* 280.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 280.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 280.7 + * 280.8 + * This code is free software; you can redistribute it and/or modify it 280.9 + * under the terms of the GNU General Public License version 2 only, as 280.10 + * published by the Free Software Foundation. 280.11 + * 280.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 280.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 280.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 280.15 + * version 2 for more details (a copy is included in the LICENSE file that 280.16 + * accompanied this code). 280.17 + * 280.18 + * You should have received a copy of the GNU General Public License version 280.19 + * 2 along with this work; if not, write to the Free Software Foundation, 280.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 280.21 + * 280.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 280.23 + * or visit www.oracle.com if you need additional information or have any 280.24 + * questions. 280.25 + */ 280.26 + 280.27 +import java.io.BufferedWriter; 280.28 +import java.io.File; 280.29 +import java.io.FileWriter; 280.30 +import java.io.IOException; 280.31 +import java.io.StringWriter; 280.32 +import java.util.Arrays; 280.33 +import java.util.Iterator; 280.34 +import java.util.List; 280.35 + 280.36 +import javax.lang.model.element.Element; 280.37 +import javax.tools.DiagnosticCollector; 280.38 +import javax.tools.JavaCompiler; 280.39 +import javax.tools.JavaFileObject; 280.40 +import javax.tools.StandardJavaFileManager; 280.41 +import javax.tools.ToolProvider; 280.42 + 280.43 +import com.sun.source.tree.CompilationUnitTree; 280.44 +import com.sun.source.util.JavacTask; 280.45 + 280.46 +/** 280.47 + * @test 280.48 + * @bug 6956638 280.49 + * @summary JavacTask.generate does not generate all required files 280.50 + */ 280.51 +public class T6956638 { 280.52 + public static void main(String[] args) throws Exception { 280.53 + new T6956638().run(); 280.54 + } 280.55 + 280.56 + void run() throws Exception { 280.57 + File srcDir = new File("src"); 280.58 + 280.59 + File[] files = { 280.60 + writeFile(new File(srcDir, "T1.java"), 280.61 + "public class T1 extends T2 {}\n"), 280.62 + writeFile(new File(srcDir, "T2.java"), 280.63 + "public class T2 extends T3 {}\n"), 280.64 + writeFile(new File(srcDir, "T3.java"), 280.65 + "public class T3 { public static final int C = 1; }\n"), 280.66 + writeFile(new File(srcDir, "Test.java"), 280.67 + "public class Test { public static final int D = T1.C; }\n") 280.68 + }; 280.69 + 280.70 + for (File f1: files) { 280.71 + for (File f2: files) { 280.72 + if (f2 == f1) continue; 280.73 + for (File f3: files) { 280.74 + if (f3 == f2 || f3 == f1) continue; 280.75 + for (File f4: files) { 280.76 + if (f4 == f3 || f4 == f2 || f4 == f1) continue; 280.77 + try { 280.78 + test(f1, f2, f3, f4); 280.79 + } catch (Exception e) { 280.80 + error(e); 280.81 + } 280.82 + } 280.83 + } 280.84 + } 280.85 + } 280.86 + 280.87 + if (errors > 0) 280.88 + throw new Exception(errors + " tests failed"); 280.89 + } 280.90 + 280.91 + void test(File... sourceFiles) throws Exception { 280.92 + System.err.println("Test " + (++count) + ": " + Arrays.asList(sourceFiles)); 280.93 + 280.94 + File classesDir = new File("classes" + count); 280.95 + classesDir.mkdirs(); 280.96 + 280.97 + StringWriter compilerOutputStream = new StringWriter(); 280.98 + 280.99 + List<String> compileOptions = Arrays.asList("-d", classesDir.getPath()); 280.100 + JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); 280.101 + DiagnosticCollector<JavaFileObject> diagnosticCollector = new DiagnosticCollector<JavaFileObject>(); 280.102 + StandardJavaFileManager fileManager = compiler.getStandardFileManager(diagnosticCollector, null, null); 280.103 + Iterable<? extends JavaFileObject> sourceFileObjects = fileManager.getJavaFileObjects(sourceFiles); 280.104 + System.err.println("1- javac given java source JavaFileObjects " + sourceFileObjects); 280.105 + JavaCompiler.CompilationTask task = compiler.getTask(compilerOutputStream, fileManager, null, compileOptions, null, sourceFileObjects); 280.106 + JavacTask javacTask = (JavacTask) task; 280.107 + 280.108 + Iterable<? extends CompilationUnitTree> parsedTrees = javacTask.parse(); 280.109 + Iterable<? extends Element> analyzedTrees = javacTask.analyze(); 280.110 + Iterable<? extends JavaFileObject> generatedFiles = javacTask.generate(); 280.111 + 280.112 + System.err.println("2- parsed:" + size(parsedTrees) + " analysed:" + size(analyzedTrees) + " generated:" + size(generatedFiles)); 280.113 + 280.114 + System.err.print("3-"); 280.115 + for (JavaFileObject f : generatedFiles) 280.116 + System.err.print(" " + f); 280.117 + System.err.println(""); 280.118 + 280.119 + System.err.print("5-"); 280.120 + for (File f : classesDir.listFiles()) 280.121 + System.err.print(" " + f); 280.122 + System.err.println(""); 280.123 + 280.124 + System.err.println("----"); 280.125 + System.err.println(compilerOutputStream.toString()); 280.126 + 280.127 + if (size(generatedFiles) != size(parsedTrees)) { 280.128 + throw new Exception("wrong number of files generated: " + size(generatedFiles) 280.129 + + " expected: " + size(parsedTrees)); 280.130 + } 280.131 + } 280.132 + 280.133 + private void error(Throwable t) { 280.134 + t.printStackTrace(); 280.135 + errors++; 280.136 + } 280.137 + 280.138 + int count; 280.139 + int errors; 280.140 + 280.141 + private static <E> int size(Iterable<E> x) { 280.142 + int n = 0; 280.143 + for (Iterator<E> iter = x.iterator(); iter.hasNext(); ++n) 280.144 + iter.next(); 280.145 + return n; 280.146 + } 280.147 + 280.148 + private static File writeFile(File f, String str) throws IOException { 280.149 + f.getParentFile().mkdirs(); 280.150 + BufferedWriter fout = new BufferedWriter(new FileWriter(f)); 280.151 + try { 280.152 + fout.write(str); 280.153 + fout.flush(); 280.154 + } finally { 280.155 + fout.close(); 280.156 + } 280.157 + return f; 280.158 + } 280.159 +}
281.1 --- a/test/tools/javac/api/TestOperators.java Thu Jun 17 16:28:21 2010 -0700 281.2 +++ b/test/tools/javac/api/TestOperators.java Mon Jun 21 22:09:18 2010 -0700 281.3 @@ -299,7 +299,7 @@ 281.4 final Trees trees = Trees.instance(processingEnv); 281.5 final Messager log = processingEnv.getMessager(); 281.6 final Elements elements = processingEnv.getElementUtils(); 281.7 - class Scan extends ElementScanner6<Void,Void> { 281.8 + class Scan extends ElementScanner7<Void,Void> { 281.9 @Override 281.10 public Void visitExecutable(ExecutableElement e, Void p) { 281.11 Object debug = e; // info for exception handler
282.1 --- a/test/tools/javac/api/evalexpr/ByteArrayClassLoader.java Thu Jun 17 16:28:21 2010 -0700 282.2 +++ b/test/tools/javac/api/evalexpr/ByteArrayClassLoader.java Mon Jun 21 22:09:18 2010 -0700 282.3 @@ -28,7 +28,7 @@ 282.4 /** 282.5 * A class loader which loads classes from byte arrays. 282.6 * 282.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 282.8 + * <p><b>This is NOT part of any supported API. 282.9 * If you write code that depends on this, you do so at your own 282.10 * risk. This code and its internal interfaces are subject to change 282.11 * or deletion without notice.</b></p>
283.1 --- a/test/tools/javac/api/evalexpr/CompileFromString.java Thu Jun 17 16:28:21 2010 -0700 283.2 +++ b/test/tools/javac/api/evalexpr/CompileFromString.java Mon Jun 21 22:09:18 2010 -0700 283.3 @@ -32,7 +32,7 @@ 283.4 /** 283.5 * JSR 199 Demo application: compile from a String. 283.6 * 283.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 283.8 + * <p><b>This is NOT part of any supported API. 283.9 * If you write code that depends on this, you do so at your own 283.10 * risk. This code and its internal interfaces are subject to change 283.11 * or deletion without notice.</b></p>
284.1 --- a/test/tools/javac/api/evalexpr/MemoryFileManager.java Thu Jun 17 16:28:21 2010 -0700 284.2 +++ b/test/tools/javac/api/evalexpr/MemoryFileManager.java Mon Jun 21 22:09:18 2010 -0700 284.3 @@ -43,7 +43,7 @@ 284.4 * This file manager delegates to another file manager 284.5 * to lookup classes on boot class path. 284.6 * 284.7 - * <p><b>This is NOT part of any API supported by Sun Microsystems. 284.8 + * <p><b>This is NOT part of any supported API. 284.9 * If you write code that depends on this, you do so at your own 284.10 * risk. This code and its internal interfaces are subject to change 284.11 * or deletion without notice.</b></p>
285.1 --- a/test/tools/javac/enum/6424358/T6424358.java Thu Jun 17 16:28:21 2010 -0700 285.2 +++ b/test/tools/javac/enum/6424358/T6424358.java Mon Jun 21 22:09:18 2010 -0700 285.3 @@ -48,7 +48,7 @@ 285.4 final Messager log = processingEnv.getMessager(); 285.5 final Elements elements = processingEnv.getElementUtils(); 285.6 final TypeElement testMe = elements.getTypeElement("TestMe"); 285.7 - class Scan extends ElementScanner6<Void,Void> { 285.8 + class Scan extends ElementScanner7<Void,Void> { 285.9 @Override 285.10 public Void visitExecutable(ExecutableElement e, Void p) { 285.11 System.err.println("Looking at " + e);
286.1 --- a/test/tools/javac/generics/diamond/T6951833.java Thu Jun 17 16:28:21 2010 -0700 286.2 +++ b/test/tools/javac/generics/diamond/T6951833.java Mon Jun 21 22:09:18 2010 -0700 286.3 @@ -1,5 +1,5 @@ 286.4 /* 286.5 - * Copyright 2010 Sun Microsystems, Inc. All Rights Reserved. 286.6 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 286.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 286.8 * 286.9 * This code is free software; you can redistribute it and/or modify it 286.10 @@ -16,9 +16,9 @@ 286.11 * 2 along with this work; if not, write to the Free Software Foundation, 286.12 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 286.13 * 286.14 - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 286.15 - * CA 95054 USA or visit www.sun.com if you need additional information or 286.16 - * have any questions. 286.17 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 286.18 + * or visit www.oracle.com if you need additional information or have any 286.19 + * questions. 286.20 */ 286.21 286.22 /*
287.1 --- a/test/tools/javac/generics/typevars/T6880344.java Thu Jun 17 16:28:21 2010 -0700 287.2 +++ b/test/tools/javac/generics/typevars/T6880344.java Mon Jun 21 22:09:18 2010 -0700 287.3 @@ -1,5 +1,5 @@ 287.4 /* 287.5 - * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. 287.6 + * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved. 287.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 287.8 * 287.9 * This code is free software; you can redistribute it and/or modify it 287.10 @@ -16,9 +16,9 @@ 287.11 * 2 along with this work; if not, write to the Free Software Foundation, 287.12 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 287.13 * 287.14 - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 287.15 - * CA 95054 USA or visit www.sun.com if you need additional information or 287.16 - * have any questions. 287.17 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 287.18 + * or visit www.oracle.com if you need additional information or have any 287.19 + * questions. 287.20 */ 287.21 287.22 /*
288.1 --- a/test/tools/javac/processing/model/6194785/T6194785.java Thu Jun 17 16:28:21 2010 -0700 288.2 +++ b/test/tools/javac/processing/model/6194785/T6194785.java Mon Jun 21 22:09:18 2010 -0700 288.3 @@ -43,7 +43,7 @@ 288.4 { 288.5 final Messager log = processingEnv.getMessager(); 288.6 final Elements elements = processingEnv.getElementUtils(); 288.7 - class Scan extends ElementScanner6<Void,Void> { 288.8 + class Scan extends ElementScanner7<Void,Void> { 288.9 @Override 288.10 public Void visitExecutable(ExecutableElement e, Void ignored) { 288.11 for (VariableElement p : e.getParameters())
289.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 289.2 +++ b/test/tools/javac/processing/model/type/MirroredTypeEx/Plurality.java Mon Jun 21 22:09:18 2010 -0700 289.3 @@ -0,0 +1,192 @@ 289.4 +/* 289.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 289.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 289.7 + * 289.8 + * This code is free software; you can redistribute it and/or modify it 289.9 + * under the terms of the GNU General Public License version 2 only, as 289.10 + * published by the Free Software Foundation. 289.11 + * 289.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 289.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 289.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 289.15 + * version 2 for more details (a copy is included in the LICENSE file that 289.16 + * accompanied this code). 289.17 + * 289.18 + * You should have received a copy of the GNU General Public License version 289.19 + * 2 along with this work; if not, write to the Free Software Foundation, 289.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 289.21 + * 289.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 289.23 + * or visit www.oracle.com if you need additional information or have any 289.24 + * questions. 289.25 + */ 289.26 + 289.27 +/* 289.28 + * @test 289.29 + * @bug 6519115 289.30 + * @summary Verify MirroredTypeException vs MirroredTypesException is thrown 289.31 + * @compile Plurality.java 289.32 + * @compile -processor Plurality -proc:only Plurality.java 289.33 + * @author Joseph D. Darcy 289.34 + */ 289.35 +import java.lang.annotation.*; 289.36 +import java.math.BigDecimal; 289.37 +import java.util.*; 289.38 +import javax.annotation.processing.*; 289.39 +import javax.lang.model.*; 289.40 +import javax.lang.model.element.*; 289.41 +import javax.lang.model.type.*; 289.42 +import javax.lang.model.util.*; 289.43 + 289.44 +@SupportedAnnotationTypes("*") 289.45 +@P0 289.46 +@P1 289.47 +@P2 289.48 +@S1 289.49 +public class Plurality extends AbstractProcessor { 289.50 + private boolean executed = false; 289.51 + 289.52 + Elements elements; 289.53 + Types types; 289.54 + 289.55 + @Override 289.56 + public void init(ProcessingEnvironment penv) { 289.57 + super.init(penv); 289.58 + elements = penv.getElementUtils(); 289.59 + types = penv.getTypeUtils(); 289.60 + } 289.61 + 289.62 + 289.63 + public boolean process(Set<? extends TypeElement> annotations, 289.64 + RoundEnvironment roundEnv) { 289.65 + if (!roundEnv.processingOver()) { 289.66 + executed = true; 289.67 + // Processing just this type 289.68 + Element e = elements.getTypeElement("Plurality"); 289.69 + Class[] classes = null; 289.70 + 289.71 + P0 p0 = e.getAnnotation(P0.class); 289.72 + try { 289.73 + classes = p0.value(); 289.74 + } catch (MirroredTypesException mtse) { 289.75 + if (mtse instanceof MirroredTypeException) { 289.76 + throw new RuntimeException("Wrong exception type!"); 289.77 + } 289.78 + 289.79 + List<? extends TypeMirror> types = mtse.getTypeMirrors(); 289.80 + if (types.size() != 0) 289.81 + throw new RuntimeException("List size != 0: " + 289.82 + types); 289.83 + } 289.84 + 289.85 + P1 p1 = e.getAnnotation(P1.class); 289.86 + try { 289.87 + classes = p1.value(); 289.88 + } catch (MirroredTypesException mtse) { 289.89 + if (mtse instanceof MirroredTypeException) { 289.90 + throw new RuntimeException("Wrong exception type!"); 289.91 + } 289.92 + 289.93 + List<? extends TypeMirror> types = mtse.getTypeMirrors(); 289.94 + if (types.size() != 1) 289.95 + throw new RuntimeException("List size != 1: " + 289.96 + types); 289.97 + checkTypeListMatchesClasses(types, 289.98 + this.getClass().getAnnotation(P1.class).value()); 289.99 + } 289.100 + 289.101 + 289.102 + P2 p2 = e.getAnnotation(P2.class); 289.103 + try { 289.104 + classes = p2.value(); 289.105 + } catch(MirroredTypesException mtse) { 289.106 + if (mtse instanceof MirroredTypeException) { 289.107 + throw new RuntimeException("Wrong exception type!"); 289.108 + } 289.109 + 289.110 + List<? extends TypeMirror> types = mtse.getTypeMirrors(); 289.111 + if (types.size() != 2) 289.112 + throw new RuntimeException("List size != 2: " + 289.113 + types); 289.114 + checkTypeListMatchesClasses(types, 289.115 + this.getClass().getAnnotation(P2.class).value()); 289.116 + } 289.117 + 289.118 + Class<?> clazz = null; 289.119 + S1 s1 = e.getAnnotation(S1.class); 289.120 + try { 289.121 + clazz = s1.value(); 289.122 + } catch(MirroredTypesException mtse) { 289.123 + List<? extends TypeMirror> types = mtse.getTypeMirrors(); 289.124 + if (types.size() != 1) 289.125 + throw new RuntimeException("List size != 1: " + 289.126 + types); 289.127 + Class<?>[] clazzes = new Class<?>[1]; 289.128 + clazzes[0] = this.getClass().getAnnotation(S1.class).value(); 289.129 + checkTypeListMatchesClasses(types, 289.130 + clazzes); 289.131 + } 289.132 + 289.133 + try { 289.134 + clazz = s1.value(); 289.135 + } catch(MirroredTypeException mte) { 289.136 + TypeMirror type = mte.getTypeMirror(); 289.137 + if (type == null) { 289.138 + throw new RuntimeException("Expected null"); 289.139 + } 289.140 + List<TypeMirror> types = new ArrayList<>(); 289.141 + types.add(type); 289.142 + Class<?>[] clazzes = new Class<?>[1]; 289.143 + clazzes[0] = this.getClass().getAnnotation(S1.class).value(); 289.144 + checkTypeListMatchesClasses(types, clazzes); 289.145 + } 289.146 + } else { 289.147 + if (!executed) { 289.148 + throw new RuntimeException("Didn't seem to do anything!"); 289.149 + } 289.150 + } 289.151 + return true; 289.152 + } 289.153 + 289.154 + private static void checkTypeListMatchesClasses(List<? extends TypeMirror> types, 289.155 + Class<?>[] classes) { 289.156 + if (types.size() != classes.length) 289.157 + throw new RuntimeException("Size mismatch:\n\t" + types + 289.158 + "\n\t" + Arrays.toString(classes)); 289.159 + int i = -1; 289.160 + for(Class<?> clazz : classes) { 289.161 + i++; 289.162 + String canonicalName = clazz.getCanonicalName(); 289.163 + String toStringName = types.get(i).toString(); 289.164 + if (!canonicalName.equals(toStringName)) 289.165 + throw new RuntimeException("Mismatched names: " + 289.166 + canonicalName + "\t" + 289.167 + toStringName); 289.168 + } 289.169 + } 289.170 + 289.171 + @Override 289.172 + public SourceVersion getSupportedSourceVersion() { 289.173 + return SourceVersion.latest(); 289.174 + } 289.175 +} 289.176 + 289.177 +@Retention(RetentionPolicy.RUNTIME) 289.178 +@interface P0 { 289.179 + Class[] value() default {}; 289.180 +} 289.181 + 289.182 +@Retention(RetentionPolicy.RUNTIME) 289.183 +@interface P1 { 289.184 + Class[] value() default {Integer.class}; 289.185 +} 289.186 + 289.187 +@Retention(RetentionPolicy.RUNTIME) 289.188 +@interface P2 { 289.189 + Class[] value() default {String.class, Number.class}; 289.190 +} 289.191 + 289.192 +@Retention(RetentionPolicy.RUNTIME) 289.193 +@interface S1 { 289.194 + Class value() default BigDecimal.class; 289.195 +}
290.1 --- a/test/tools/javac/processing/model/type/NoTypes.java Thu Jun 17 16:28:21 2010 -0700 290.2 +++ b/test/tools/javac/processing/model/type/NoTypes.java Mon Jun 21 22:09:18 2010 -0700 290.3 @@ -89,7 +89,7 @@ 290.4 verifyKind(NONE, types.getNoType(NONE)); 290.5 290.6 // The return type of a constructor or void method is VOID. 290.7 - class Scanner extends ElementScanner6<Void, Void> { 290.8 + class Scanner extends ElementScanner7<Void, Void> { 290.9 @Override 290.10 public Void visitExecutable(ExecutableElement e, Void p) { 290.11 verifyKind(VOID, e.getReturnType()); 290.12 @@ -104,10 +104,10 @@ 290.13 290.14 /** 290.15 * Verify that a NoType instance is of a particular kind, 290.16 - * and that TypeKindVisitor6 properly dispatches on it. 290.17 + * and that TypeKindVisitor7 properly dispatches on it. 290.18 */ 290.19 private void verifyKind(TypeKind kind, TypeMirror type) { 290.20 - class Vis extends TypeKindVisitor6<TypeKind, Void> { 290.21 + class Vis extends TypeKindVisitor7<TypeKind, Void> { 290.22 @Override 290.23 public TypeKind visitNoTypeAsVoid(NoType t, Void p) { 290.24 return VOID;
291.1 --- a/test/tools/javac/processing/model/util/deprecation/TestDeprecation.java Thu Jun 17 16:28:21 2010 -0700 291.2 +++ b/test/tools/javac/processing/model/util/deprecation/TestDeprecation.java Mon Jun 21 22:09:18 2010 -0700 291.3 @@ -67,7 +67,7 @@ 291.4 return true; 291.5 } 291.6 291.7 - private class DeprecationChecker extends ElementScanner6<Boolean,Void> { 291.8 + private class DeprecationChecker extends ElementScanner7<Boolean,Void> { 291.9 private Elements elementUtils; 291.10 private boolean failure; 291.11 DeprecationChecker() {
292.1 --- a/test/tools/javac/varargs/6730476/T6730476a.java Thu Jun 17 16:28:21 2010 -0700 292.2 +++ b/test/tools/javac/varargs/6730476/T6730476a.java Mon Jun 21 22:09:18 2010 -0700 292.3 @@ -27,7 +27,7 @@ 292.4 * 292.5 * @summary invalid "unchecked generic array" warning 292.6 * @author mcimadamore 292.7 - * @compile T6730476a.java -Xlint -Werror 292.8 + * @compile T6730476a.java -Xlint:unchecked -Werror 292.9 * 292.10 */ 292.11
293.1 --- a/test/tools/javac/varargs/6806876/T6806876.out Thu Jun 17 16:28:21 2010 -0700 293.2 +++ b/test/tools/javac/varargs/6806876/T6806876.out Mon Jun 21 22:09:18 2010 -0700 293.3 @@ -1,4 +1,6 @@ 293.4 T6806876.java:11:32: compiler.warn.unchecked.generic.array.creation: java.lang.Number&java.lang.Comparable<? extends java.lang.Number&java.lang.Comparable<?>>[] 293.5 - compiler.err.warnings.and.werror 293.6 +- compiler.note.varargs.filename: T6806876.java 293.7 +- compiler.note.varargs.recompile 293.8 1 error 293.9 1 warning
294.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 294.2 +++ b/test/tools/javac/varargs/warning/Warn4.java Mon Jun 21 22:09:18 2010 -0700 294.3 @@ -0,0 +1,259 @@ 294.4 +/* 294.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 294.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 294.7 + * 294.8 + * This code is free software; you can redistribute it and/or modify it 294.9 + * under the terms of the GNU General Public License version 2 only, as 294.10 + * published by the Free Software Foundation. 294.11 + * 294.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 294.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 294.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 294.15 + * version 2 for more details (a copy is included in the LICENSE file that 294.16 + * accompanied this code). 294.17 + * 294.18 + * You should have received a copy of the GNU General Public License version 294.19 + * 2 along with this work; if not, write to the Free Software Foundation, 294.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 294.21 + * 294.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 294.23 + * or visit www.oracle.com if you need additional information or have any 294.24 + * questions. 294.25 + */ 294.26 + 294.27 +/** 294.28 + * @test 294.29 + * @bug 6945418 294.30 + * @summary Project Coin: Simplified Varargs Method Invocation 294.31 + * @author mcimadamore 294.32 + * @run main Warn4 294.33 + */ 294.34 +import com.sun.source.util.JavacTask; 294.35 +import java.net.URI; 294.36 +import java.util.Arrays; 294.37 +import java.util.Set; 294.38 +import java.util.HashSet; 294.39 +import javax.tools.Diagnostic; 294.40 +import javax.tools.JavaCompiler; 294.41 +import javax.tools.JavaFileObject; 294.42 +import javax.tools.SimpleJavaFileObject; 294.43 +import javax.tools.ToolProvider; 294.44 + 294.45 +public class Warn4 { 294.46 + 294.47 + final static Warning[] error = null; 294.48 + final static Warning[] none = new Warning[] {}; 294.49 + final static Warning[] vararg = new Warning[] { Warning.VARARGS }; 294.50 + final static Warning[] unchecked = new Warning[] { Warning.UNCHECKED }; 294.51 + final static Warning[] both = new Warning[] { Warning.VARARGS, Warning.UNCHECKED }; 294.52 + 294.53 + enum Warning { 294.54 + UNCHECKED("unchecked"), 294.55 + VARARGS("varargs"); 294.56 + 294.57 + String category; 294.58 + 294.59 + Warning(String category) { 294.60 + this.category = category; 294.61 + } 294.62 + 294.63 + boolean isEnabled(XlintOption xlint, SuppressLevel suppressLevel) { 294.64 + return Arrays.asList(xlint.enabledWarnings).contains(this); 294.65 + } 294.66 + 294.67 + boolean isSuppressed(SuppressLevel suppressLevel) { 294.68 + return Arrays.asList(suppressLevel.suppressedWarnings).contains(VARARGS); 294.69 + } 294.70 + } 294.71 + 294.72 + enum XlintOption { 294.73 + NONE(), 294.74 + UNCHECKED(Warning.UNCHECKED), 294.75 + VARARGS(Warning.VARARGS), 294.76 + ALL(Warning.UNCHECKED, Warning.VARARGS); 294.77 + 294.78 + Warning[] enabledWarnings; 294.79 + 294.80 + XlintOption(Warning... enabledWarnings) { 294.81 + this.enabledWarnings = enabledWarnings; 294.82 + } 294.83 + 294.84 + String getXlintOption() { 294.85 + StringBuilder buf = new StringBuilder(); 294.86 + String sep = ""; 294.87 + for (Warning w : enabledWarnings) { 294.88 + buf.append(sep); 294.89 + buf.append(w.category); 294.90 + sep=","; 294.91 + } 294.92 + return "-Xlint:" + 294.93 + (this == NONE ? "none" : buf.toString()); 294.94 + } 294.95 + } 294.96 + 294.97 + enum SuppressLevel { 294.98 + NONE(), 294.99 + UNCHECKED(Warning.UNCHECKED), 294.100 + VARARGS(Warning.VARARGS), 294.101 + ALL(Warning.UNCHECKED, Warning.VARARGS); 294.102 + 294.103 + Warning[] suppressedWarnings; 294.104 + 294.105 + SuppressLevel(Warning... suppressedWarnings) { 294.106 + this.suppressedWarnings = suppressedWarnings; 294.107 + } 294.108 + 294.109 + String getSuppressAnnotation() { 294.110 + StringBuilder buf = new StringBuilder(); 294.111 + String sep = ""; 294.112 + for (Warning w : suppressedWarnings) { 294.113 + buf.append(sep); 294.114 + buf.append("\""); 294.115 + buf.append(w.category); 294.116 + buf.append("\""); 294.117 + sep=","; 294.118 + } 294.119 + return this == NONE ? "" : 294.120 + "@SuppressWarnings({" + buf.toString() + "})"; 294.121 + } 294.122 + } 294.123 + 294.124 + enum Signature { 294.125 + 294.126 + EXTENDS_TVAR("<Z> void #name(List<? extends Z>#arity arg) { #body }", 294.127 + new Warning[][] {both, both, both, both, error, both, both, both, error}), 294.128 + SUPER_TVAR("<Z> void #name(List<? super Z>#arity arg) { #body }", 294.129 + new Warning[][] {error, both, error, both, error, error, both, both, error}), 294.130 + UNBOUND("void #name(List<?>#arity arg) { #body }", 294.131 + new Warning[][] {none, none, none, none, none, none, none, none, error}), 294.132 + INVARIANT_TVAR("<Z> void #name(List<Z>#arity arg) { #body }", 294.133 + new Warning[][] {both, both, both, both, error, both, both, both, error}), 294.134 + TVAR("<Z> void #name(Z#arity arg) { #body }", 294.135 + new Warning[][] {both, both, both, both, both, both, both, both, vararg}), 294.136 + EXTENDS("void #name(List<? extends String>#arity arg) { #body }", 294.137 + new Warning[][] {error, error, error, error, error, both, error, both, error}), 294.138 + SUPER("void #name(List<? super String>#arity arg) { #body }", 294.139 + new Warning[][] {error, error, error, error, error, error, both, both, error}), 294.140 + INVARIANT("void #name(List<String>#arity arg) { #body }", 294.141 + new Warning[][] {error, error, error, error, error, error, error, both, error}), 294.142 + UNPARAMETERIZED("void #name(String#arity arg) { #body }", 294.143 + new Warning[][] {error, error, error, error, error, error, error, error, none}); 294.144 + 294.145 + String template; 294.146 + Warning[][] warnings; 294.147 + 294.148 + Signature(String template, Warning[][] warnings) { 294.149 + this.template = template; 294.150 + this.warnings = warnings; 294.151 + } 294.152 + 294.153 + boolean isApplicableTo(Signature other) { 294.154 + return warnings[other.ordinal()] != null; 294.155 + } 294.156 + 294.157 + boolean giveUnchecked(Signature other) { 294.158 + return warnings[other.ordinal()] == unchecked || 294.159 + warnings[other.ordinal()] == both; 294.160 + } 294.161 + 294.162 + boolean giveVarargs(Signature other) { 294.163 + return warnings[other.ordinal()] == vararg || 294.164 + warnings[other.ordinal()] == both; 294.165 + } 294.166 + } 294.167 + 294.168 + public static void main(String... args) throws Exception { 294.169 + for (XlintOption xlint : XlintOption.values()) { 294.170 + for (SuppressLevel suppressLevel : SuppressLevel.values()) { 294.171 + for (Signature vararg_meth : Signature.values()) { 294.172 + for (Signature client_meth : Signature.values()) { 294.173 + if (vararg_meth.isApplicableTo(client_meth)) { 294.174 + test(xlint, 294.175 + suppressLevel, 294.176 + vararg_meth, 294.177 + client_meth); 294.178 + } 294.179 + } 294.180 + } 294.181 + } 294.182 + } 294.183 + } 294.184 + 294.185 + static void test(XlintOption xlint, SuppressLevel suppressLevel, 294.186 + Signature vararg_meth, Signature client_meth) throws Exception { 294.187 + final JavaCompiler tool = ToolProvider.getSystemJavaCompiler(); 294.188 + JavaSource source = new JavaSource(suppressLevel, vararg_meth, client_meth); 294.189 + DiagnosticChecker dc = new DiagnosticChecker(); 294.190 + JavacTask ct = (JavacTask)tool.getTask(null, null, dc, 294.191 + Arrays.asList(xlint.getXlintOption()), null, Arrays.asList(source)); 294.192 + ct.generate(); //to get mandatory notes 294.193 + check(dc.warnings, 294.194 + dc.notes, 294.195 + new boolean[] {vararg_meth.giveUnchecked(client_meth), 294.196 + vararg_meth.giveVarargs(client_meth)}, 294.197 + source, xlint, suppressLevel); 294.198 + } 294.199 + 294.200 + static void check(Set<Warning> warnings, Set<Warning> notes, boolean[] warnArr, JavaSource source, XlintOption xlint, SuppressLevel suppressLevel) { 294.201 + boolean badOutput = false; 294.202 + for (Warning wkind : Warning.values()) { 294.203 + badOutput |= (warnArr[wkind.ordinal()] && !wkind.isSuppressed(suppressLevel)) != 294.204 + (wkind.isEnabled(xlint, suppressLevel) ? 294.205 + warnings.contains(wkind) : 294.206 + notes.contains(wkind)); 294.207 + } 294.208 + if (badOutput) { 294.209 + throw new Error("invalid diagnostics for source:\n" + 294.210 + source.getCharContent(true) + 294.211 + "\nOptions: " + xlint.getXlintOption() + 294.212 + "\nExpected unchecked warning: " + warnArr[0] + 294.213 + "\nExpected unsafe vararg warning: " + warnArr[1] + 294.214 + "\nWarnings: " + warnings + 294.215 + "\nNotes: " + notes); 294.216 + } 294.217 + } 294.218 + 294.219 + static class JavaSource extends SimpleJavaFileObject { 294.220 + 294.221 + String source; 294.222 + 294.223 + public JavaSource(SuppressLevel suppressLevel, Signature vararg_meth, Signature client_meth) { 294.224 + super(URI.create("myfo:/Test.java"), JavaFileObject.Kind.SOURCE); 294.225 + String meth1 = vararg_meth.template.replace("#arity", "..."); 294.226 + meth1 = meth1.replace("#name", "m"); 294.227 + meth1 = meth1.replace("#body", ""); 294.228 + meth1 = suppressLevel.getSuppressAnnotation() + meth1; 294.229 + String meth2 = client_meth.template.replace("#arity", ""); 294.230 + meth2 = meth2.replace("#name", "test"); 294.231 + meth2 = meth2.replace("#body", "m(arg);"); 294.232 + source = "import java.util.List;\n" + 294.233 + "class Test {\n" + meth1 + 294.234 + "\n" + meth2 + "\n}\n"; 294.235 + } 294.236 + 294.237 + @Override 294.238 + public CharSequence getCharContent(boolean ignoreEncodingErrors) { 294.239 + return source; 294.240 + } 294.241 + } 294.242 + 294.243 + static class DiagnosticChecker implements javax.tools.DiagnosticListener<JavaFileObject> { 294.244 + 294.245 + Set<Warning> warnings = new HashSet<>(); 294.246 + Set<Warning> notes = new HashSet<>(); 294.247 + 294.248 + public void report(Diagnostic<? extends JavaFileObject> diagnostic) { 294.249 + if (diagnostic.getKind() == Diagnostic.Kind.MANDATORY_WARNING || 294.250 + diagnostic.getKind() == Diagnostic.Kind.WARNING) { 294.251 + warnings.add(diagnostic.getCode().contains("varargs") ? 294.252 + Warning.VARARGS : 294.253 + Warning.UNCHECKED); 294.254 + } 294.255 + else if (diagnostic.getKind() == Diagnostic.Kind.NOTE) { 294.256 + notes.add(diagnostic.getCode().contains("varargs") ? 294.257 + Warning.VARARGS : 294.258 + Warning.UNCHECKED); 294.259 + } 294.260 + } 294.261 + } 294.262 +}
295.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 295.2 +++ b/test/tools/javadoc/6958836/Test.java Mon Jun 21 22:09:18 2010 -0700 295.3 @@ -0,0 +1,120 @@ 295.4 +/* 295.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 295.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 295.7 + * 295.8 + * This code is free software; you can redistribute it and/or modify it 295.9 + * under the terms of the GNU General Public License version 2 only, as 295.10 + * published by the Free Software Foundation. 295.11 + * 295.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 295.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 295.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 295.15 + * version 2 for more details (a copy is included in the LICENSE file that 295.16 + * accompanied this code). 295.17 + * 295.18 + * You should have received a copy of the GNU General Public License version 295.19 + * 2 along with this work; if not, write to the Free Software Foundation, 295.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 295.21 + * 295.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 295.23 + * or visit www.oracle.com if you need additional information or have any 295.24 + * questions. 295.25 + */ 295.26 + 295.27 +/* 295.28 + * @test 295.29 + * @bug 6958836 295.30 + * @summary javadoc should support -Xmaxerrs and -Xmaxwarns 295.31 + */ 295.32 + 295.33 +import java.io.*; 295.34 +import java.util.*; 295.35 + 295.36 +public class Test { 295.37 + public static void main(String... args) throws Exception { 295.38 + new Test().run(); 295.39 + } 295.40 + 295.41 + void run() throws Exception { 295.42 + javadoc("errs", list(), 10, 0); 295.43 + javadoc("errs", list("-Xmaxerrs", "0"), 10, 0); 295.44 + javadoc("errs", list("-Xmaxerrs", "2"), 2, 0); 295.45 + javadoc("errs", list("-Xmaxerrs", "4"), 4, 0); 295.46 + javadoc("errs", list("-Xmaxerrs", "20"), 10, 0); 295.47 + 295.48 + javadoc("warns", list(), 0, 10); 295.49 + javadoc("warns", list("-Xmaxwarns", "0"), 0, 10); 295.50 + javadoc("warns", list("-Xmaxwarns", "2"), 0, 2); 295.51 + javadoc("warns", list("-Xmaxwarns", "4"), 0, 4); 295.52 + javadoc("warns", list("-Xmaxwarns", "20"), 0, 10); 295.53 + 295.54 + if (errors > 0) 295.55 + throw new Exception(errors + " errors occurred."); 295.56 + } 295.57 + 295.58 + void javadoc(String pkg, List<String> testOpts, 295.59 + int expectErrs, int expectWarns) { 295.60 + System.err.println("Test " + (++count) + ": " + pkg + " " + testOpts); 295.61 + File testOutDir = new File("test" + count); 295.62 + 295.63 + List<String> opts = new ArrayList<String>(); 295.64 + // Force en_US locale in lieu of something like -XDrawDiagnostics. 295.65 + // For some reason, this must be the first option when used. 295.66 + opts.addAll(list("-locale", "en_US")); 295.67 + opts.addAll(list("-classpath", System.getProperty("test.src"))); 295.68 + opts.addAll(list("-d", testOutDir.getPath())); 295.69 + opts.addAll(testOpts); 295.70 + opts.add(pkg); 295.71 + 295.72 + StringWriter errSW = new StringWriter(); 295.73 + PrintWriter errPW = new PrintWriter(errSW); 295.74 + StringWriter warnSW = new StringWriter(); 295.75 + PrintWriter warnPW = new PrintWriter(warnSW); 295.76 + StringWriter noteSW = new StringWriter(); 295.77 + PrintWriter notePW = new PrintWriter(noteSW); 295.78 + 295.79 + int rc = com.sun.tools.javadoc.Main.execute("javadoc", 295.80 + errPW, warnPW, notePW, 295.81 + "com.sun.tools.doclets.standard.Standard", 295.82 + getClass().getClassLoader(), 295.83 + opts.toArray(new String[opts.size()])); 295.84 + System.err.println("rc: " + rc); 295.85 + 295.86 + errPW.close(); 295.87 + String errOut = errSW.toString(); 295.88 + System.err.println("Errors:\n" + errOut); 295.89 + warnPW.close(); 295.90 + String warnOut = warnSW.toString(); 295.91 + System.err.println("Warnings:\n" + warnOut); 295.92 + notePW.close(); 295.93 + String noteOut = noteSW.toString(); 295.94 + System.err.println("Notes:\n" + noteOut); 295.95 + 295.96 + check(errOut, "Errors.java", expectErrs); 295.97 + check(warnOut, " warning ", expectWarns); // requires -locale en_US 295.98 + } 295.99 + 295.100 + void check(String text, String expectText, int expectCount) { 295.101 + int foundCount = 0; 295.102 + for (String line: text.split("[\r\n]+")) { 295.103 + if (line.contains(expectText)) 295.104 + foundCount++; 295.105 + } 295.106 + if (foundCount != expectCount) { 295.107 + error("incorrect number of matches found: " + foundCount 295.108 + + ", expected: " + expectCount); 295.109 + } 295.110 + } 295.111 + 295.112 + private List<String> list(String... args) { 295.113 + return Arrays.asList(args); 295.114 + } 295.115 + 295.116 + void error(String msg) { 295.117 + System.err.println(msg); 295.118 + errors++; 295.119 + } 295.120 + 295.121 + int count; 295.122 + int errors; 295.123 +}
296.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 296.2 +++ b/test/tools/javadoc/6958836/errs/Errors.java Mon Jun 21 22:09:18 2010 -0700 296.3 @@ -0,0 +1,38 @@ 296.4 +/* 296.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 296.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 296.7 + * 296.8 + * This code is free software; you can redistribute it and/or modify it 296.9 + * under the terms of the GNU General Public License version 2 only, as 296.10 + * published by the Free Software Foundation. 296.11 + * 296.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 296.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 296.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 296.15 + * version 2 for more details (a copy is included in the LICENSE file that 296.16 + * accompanied this code). 296.17 + * 296.18 + * You should have received a copy of the GNU General Public License version 296.19 + * 2 along with this work; if not, write to the Free Software Foundation, 296.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 296.21 + * 296.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 296.23 + * or visit www.oracle.com if you need additional information or have any 296.24 + * questions. 296.25 + */ 296.26 + 296.27 +package errs; 296.28 + 296.29 +// class with 10 errors 296.30 +class Errors { 296.31 + X m0() { } 296.32 + X m1() { } 296.33 + X m2() { } 296.34 + X m3() { } 296.35 + X m4() { } 296.36 + X m5() { } 296.37 + X m6() { } 296.38 + X m7() { } 296.39 + X m8() { } 296.40 + X m9() { } 296.41 +}
297.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 297.2 +++ b/test/tools/javadoc/6958836/warns/Warnings.java Mon Jun 21 22:09:18 2010 -0700 297.3 @@ -0,0 +1,57 @@ 297.4 +/* 297.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 297.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 297.7 + * 297.8 + * This code is free software; you can redistribute it and/or modify it 297.9 + * under the terms of the GNU General Public License version 2 only, as 297.10 + * published by the Free Software Foundation. 297.11 + * 297.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 297.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 297.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 297.15 + * version 2 for more details (a copy is included in the LICENSE file that 297.16 + * accompanied this code). 297.17 + * 297.18 + * You should have received a copy of the GNU General Public License version 297.19 + * 2 along with this work; if not, write to the Free Software Foundation, 297.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 297.21 + * 297.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 297.23 + * or visit www.oracle.com if you need additional information or have any 297.24 + * questions. 297.25 + */ 297.26 + 297.27 +package warns; 297.28 + 297.29 +// class with 10 warnings 297.30 +public class Warnings { 297.31 + /** @param x */ 297.32 + public void m0() { } 297.33 + 297.34 + /** @param x */ 297.35 + public void m1() { } 297.36 + 297.37 + /** @param x */ 297.38 + public void m2() { } 297.39 + 297.40 + /** @param x */ 297.41 + public void m3() { } 297.42 + 297.43 + /** @param x */ 297.44 + public void m4() { } 297.45 + 297.46 + /** @param x */ 297.47 + public void m5() { } 297.48 + 297.49 + /** @param x */ 297.50 + public void m6() { } 297.51 + 297.52 + /** @param x */ 297.53 + public void m7() { } 297.54 + 297.55 + /** @param x */ 297.56 + public void m8() { } 297.57 + 297.58 + /** @param x */ 297.59 + public void m9() { } 297.60 +}