changeset 4602:fb110f661e8c jdk7u2-b08

Merge
author cgruszka
date Fri, 16 Sep 2011 13:56:52 -0400
parents 825430a003d4 529910e1e1d2
children f9c04c78a9b3 f4da7747a2d9 eb2569cfcdab
files
diffstat 520 files changed, 6137 insertions(+), 748 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Thu Sep 15 13:59:13 2011 -0400
+++ b/.hgtags	Fri Sep 16 13:56:52 2011 -0400
@@ -125,3 +125,5 @@
 9b8c96f96a0f9a5801b55530a387fefbe50482a3 jdk7u2-b01
 449f7f1bb73563a3858e18a46f6e1d63fd7ac39e jdk7u2-b04
 775d67f1d144692888a63a9268d55f69f7d01e9d jdk7u2-b05
+1da81fa43d480272440052f3f254eb2f0dc30da4 jdk7u2-b06
+d26cd028ee0b241175b8a31fb6c28a52993e288e jdk7u2-b07
--- a/.jcheck/conf	Thu Sep 15 13:59:13 2011 -0400
+++ b/.jcheck/conf	Fri Sep 16 13:56:52 2011 -0400
@@ -1,1 +1,2 @@
 project=jdk7
+bugids=dup
--- a/make/common/Defs.gmk	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/common/Defs.gmk	Fri Sep 16 13:56:52 2011 -0400
@@ -300,6 +300,9 @@
 #where the demo source can be found
 DEMOSRCDIR          = $(SHARE_SRC)/demo
 
+#where the sample source can be found
+SAMPLESRCDIR          = $(SHARE_SRC)/sample
+
 # An attempt is made to generate unique enough directories for the
 # generated files to not have name collisisons. Most build units
 # defines PRODUCT (except Release.gmk), but then they may or may 
--- a/make/common/Release-embedded.gmk	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/common/Release-embedded.gmk	Fri Sep 16 13:56:52 2011 -0400
@@ -161,6 +161,9 @@
 	$(RM) -r $(JRE_REDUCED_IMAGE_DIR)/man
 	$(RM) -f $(JRE_REDUCED_IMAGE_DIR)/CHANGES
 
+	@# Copy back in the attach library
+	$(CP) $(JDK_IMAGE_DIR)/jre/lib/$(LIBARCH)/$(LIB_PREFIX)attach.$(LIB_SUFFIX) $(JRE_REDUCED_IMAGE_DIR)/lib/$(LIBARCH)
+
 	@$(ECHO) Done Creating Reduced JRE
 
 #
--- a/make/java/fdlibm/FILES_c.gmk	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/java/fdlibm/FILES_c.gmk	Fri Sep 16 13:56:52 2011 -0400
@@ -30,21 +30,13 @@
 	k_sin.c \
 	k_tan.c \
 	e_acos.c \
-	e_acosh.c \
 	e_asin.c \
 	e_atan2.c \
 	e_atanh.c \
 	e_cosh.c \
 	e_exp.c \
 	e_fmod.c \
-	e_gamma.c \
-	e_gamma_r.c \
 	e_hypot.c \
-	e_j0.c \
-	e_j1.c \
-	e_jn.c \
-	e_lgamma.c \
-	e_lgamma_r.c \
 	e_log.c \
 	e_log10.c \
 	e_pow.c \
@@ -54,21 +46,13 @@
 	e_sinh.c \
 	e_sqrt.c \
 	w_acos.c \
-	w_acosh.c \
 	w_asin.c \
 	w_atan2.c \
 	w_atanh.c \
 	w_cosh.c \
 	w_exp.c \
 	w_fmod.c \
-	w_gamma.c \
-	w_gamma_r.c \
 	w_hypot.c \
-	w_j0.c \
-	w_j1.c \
-	w_jn.c \
-	w_lgamma.c \
-	w_lgamma_r.c \
 	w_log.c \
 	w_log10.c \
 	w_pow.c \
@@ -76,13 +60,11 @@
 	w_scalb.c \
 	w_sinh.c \
 	w_sqrt.c \
-	s_asinh.c \
 	s_atan.c \
 	s_cbrt.c \
 	s_ceil.c \
 	s_copysign.c \
 	s_cos.c \
-	s_erf.c \
 	s_expm1.c \
 	s_fabs.c \
 	s_finite.c \
--- a/make/mkdemo/Makefile	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/mkdemo/Makefile	Fri Sep 16 13:56:52 2011 -0400
@@ -39,9 +39,14 @@
 
 include $(BUILDDIR)/common/Subdirs.gmk
 
+TOPLEVEL_FILES =							\
+	$(DEMODIR)/README
+
 all build:: nbproject
 	$(SUBDIRS-loop)
 
+all build:: $(TOPLEVEL_FILES)
+
 nbproject:
 	$(RM) -r $(DEMODIR)/nbproject
 	$(MKDIR) -p $(DEMODIR)
@@ -54,8 +59,10 @@
 	  ( $(CD) $(DEMODIR) && $(TAR) -xf - )
 endif
 
+$(DEMODIR)/%: $(DEMOSRCDIR)/%
+	$(install-file)
+
 clean clobber::
 	$(SUBDIRS-loop)
 	$(RM) -r $(DEMODIR)
 	$(RM) -r $(DEMOCLASSDIR)
-
--- a/make/mksample/Makefile	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/mksample/Makefile	Fri Sep 16 13:56:52 2011 -0400
@@ -49,8 +49,16 @@
 
 include $(BUILDDIR)/common/Subdirs.gmk
 
+TOPLEVEL_FILES =							\
+	$(SAMPLEDIR)/README
+
 all build clean clobber::
 	$(SUBDIRS-loop)
 
+all build:: $(TOPLEVEL_FILES)
+
+$(SAMPLEDIR)/%: $(SAMPLESRCDIR)/%
+	$(install-file)
+
 clobber clean ::
 	$(RM) -r $(SAMPLEDIR)
--- a/make/sun/javazic/tzdata/VERSION	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/VERSION	Fri Sep 16 13:56:52 2011 -0400
@@ -21,4 +21,4 @@
 # or visit www.oracle.com if you need additional information or have any
 # questions.
 #
-tzdata2011g
+tzdata2011j
--- a/make/sun/javazic/tzdata/africa	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/africa	Fri Sep 16 13:56:52 2011 -0400
@@ -80,7 +80,7 @@
 # I invented the following abbreviations; corrections are welcome!
 #	 2:00	WAST	West Africa Summer Time
 #	 2:30	BEAT	British East Africa Time (no longer used)
-#	 2:44:45 BEAUT	British East Africa Unified Time (no longer used)
+#	 2:45	BEAUT	British East Africa Unified Time (no longer used)
 #	 3:00	CAST	Central Africa Summer Time (no longer used)
 #	 3:00	SAST	South Africa Summer Time (no longer used)
 #	 3:00	EAT	East Africa Time
@@ -418,7 +418,7 @@
 Zone	Africa/Nairobi	2:27:16	-	LMT	1928 Jul
 			3:00	-	EAT	1930
 			2:30	-	BEAT	1940
-			2:44:45	-	BEAUT	1960
+			2:45	-	BEAUT	1960
 			3:00	-	EAT
 
 # Lesotho
@@ -979,6 +979,11 @@
 			2:00	Sudan	CA%sT	2000 Jan 15 12:00
 			3:00	-	EAT
 
+# South Sudan
+Zone	Africa/Juba	2:06:24 -	LMT	1931
+			2:00	Sudan	CA%sT	2000 Jan 15 12:00
+			3:00	-	EAT
+
 # Swaziland
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Africa/Mbabane	2:04:24 -	LMT	1903 Mar
@@ -988,7 +993,7 @@
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone Africa/Dar_es_Salaam 2:37:08 -	LMT	1931
 			3:00	-	EAT	1948
-			2:44:45	-	BEAUT	1961
+			2:45	-	BEAUT	1961
 			3:00	-	EAT
 
 # Togo
@@ -1114,7 +1119,7 @@
 Zone	Africa/Kampala	2:09:40 -	LMT	1928 Jul
 			3:00	-	EAT	1930
 			2:30	-	BEAT	1948
-			2:44:45	-	BEAUT	1957
+			2:45	-	BEAUT	1957
 			3:00	-	EAT
 
 # Zambia
--- a/make/sun/javazic/tzdata/antarctica	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/antarctica	Fri Sep 16 13:56:52 2011 -0400
@@ -41,18 +41,6 @@
 # I made up all time zone abbreviations mentioned here; corrections welcome!
 # FORMAT is `zzz' and GMTOFF is 0 for locations while uninhabited.
 
-# These rules are stolen from the `europe' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	RussAQ	1981	1984	-	Apr	 1	 0:00	1:00	S
-Rule	RussAQ	1981	1983	-	Oct	 1	 0:00	0	-
-Rule	RussAQ	1984	1991	-	Sep	lastSun	 2:00s	0	-
-Rule	RussAQ	1985	1991	-	Mar	lastSun	 2:00s	1:00	S
-Rule	RussAQ	1992	only	-	Mar	lastSat	 23:00	1:00	S
-Rule	RussAQ	1992	only	-	Sep	lastSat	 23:00	0	-
-Rule	RussAQ	1993	max	-	Mar	lastSun	 2:00s	1:00	S
-Rule	RussAQ	1993	1995	-	Sep	lastSun	 2:00s	0	-
-Rule	RussAQ	1996	max	-	Oct	lastSun	 2:00s	0	-
-
 # These rules are stolen from the `southamerica' file.
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	ArgAQ	1964	1966	-	Mar	 1	0:00	0	-
--- a/make/sun/javazic/tzdata/asia	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/asia	Fri Sep 16 13:56:52 2011 -0400
@@ -99,6 +99,10 @@
 Rule RussiaAsia	1993	1995	-	Sep	lastSun	 2:00s	0	-
 Rule RussiaAsia	1996	max	-	Oct	lastSun	 2:00s	0	-
 
+# From Arthur David Olson (2011-06-15):
+# While Russia abandoned DST in 2011, Armenia may choose to
+# follow Russia's "old" rules.
+
 # Afghanistan
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Asia/Kabul	4:36:48 -	LMT	1890
--- a/make/sun/javazic/tzdata/australasia	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/australasia	Fri Sep 16 13:56:52 2011 -0400
@@ -521,7 +521,7 @@
 # http://www.parliament.gov.ws/documents/acts/Daylight%20Saving%20Act%20%202009%20%28English%29%20-%20Final%207-7-091.pdf
 # </a>
 
-# From Raymond Hughes (2010-10-07):
+# From Laupue Raymond Hughes (2010-10-07):
 # Please see
 # <a href="http://www.mcil.gov.ws">
 # http://www.mcil.gov.ws
@@ -531,7 +531,7 @@
 # to 01:00am and First Sunday April 2011 (03/04/11) - adjust clocks
 # backwards from 1:00am to 12:00am"
 
-# From Raymond Hughes (2011-03-07)
+# From Laupue Raymond Hughes (2011-03-07):
 # I believe this will be posted shortly on the website
 # <a href="http://www.mcil.gov.ws">
 # www.mcil.gov.ws
@@ -551,12 +551,74 @@
 # Margaret Fruean ACTING CHIEF EXECUTIVE OFFICER MINISTRY OF COMMERCE,
 # INDUSTRY AND LABOUR 28th February 2011
 
+# From David Zuelke (2011-05-09):
+# Subject: Samoa to move timezone from east to west of international date line
+# 
+# <a href="http://www.morningstar.co.uk/uk/markets/newsfeeditem.aspx?id=138501958347963">
+# http://www.morningstar.co.uk/uk/markets/newsfeeditem.aspx?id=138501958347963
+# </a>
+
+# From Mark Sim-Smith (2011-08-17):
+# I have been in contact with Leilani Tuala Warren from the Samoa Law
+# Reform Commission, and she has sent me a copy of the Bill that she
+# confirmed has been passed...Most of the sections are about maps rather
+# than the time zone change, but I'll paste the relevant bits below. But
+# the essence is that at midnight 29 Dec (UTC-11 I suppose), Samoa
+# changes from UTC-11 to UTC+13:
+#
+# International Date Line Bill 2011
+#
+# AN ACT to provide for the change to standard time in Samoa and to make
+# consequential amendments to the position of the International Date
+# Line, and for related purposes.
+#
+# BE IT ENACTED by the Legislative Assembly of Samoa in Parliament
+# assembled as follows:
+#
+# 1. Short title and commencement-(1) This Act may be cited as the
+# International Date Line Act 2011. (2) Except for section 5(3) this Act
+# commences at 12 o'clock midnight, on Thursday 29th December 2011. (3)
+# Section 5(3) commences on the date of assent by the Head of State.
+#
+# [snip]
+#
+# 3. Interpretation - [snip] "Samoa standard time" in this Act and any
+# other statute of Samoa which refers to 'Samoa standard time' means the
+# time 13 hours in advance of Co-ordinated Universal Time.
+#
+# 4. Samoa standard time - (1) Upon the commencement of this Act, Samoa
+# standard time shall be set at 13 hours in advance of Co-ordinated
+# Universal Time for the whole of Samoa. (2) All references to Samoa's
+# time zone and to Samoa standard time in Samoa in all legislation and
+# instruments after the commencement of this Act shall be references to
+# Samoa standard time as provided for in this Act. (3) Nothing in this
+# Act affects the provisions of the Daylight Saving Act 2009, except that
+# it defines Samoa standard time....
+
+# From Laupue Raymond Hughes (2011-09-02):
+# <a href="http://www.mcil.gov.ws/mcil_publications.html">
+# http://www.mcil.gov.ws/mcil_publications.html
+# </a>
+#
+# here is the official website publication for Samoa DST and dateline change
+#
+# DST
+# Year	End	Time	Start	Time
+# 2011	- - -	- - -	24 September	3:00am to 4:00am
+# 2012	01 April	4:00am to 3:00am	- - -	- - -
+#
+# Dateline Change skip Friday 30th Dec 2011
+# Thursday 29th December 2011	23:59:59 Hours
+# Saturday 31st December 2011	00:00:00 Hours
 Zone Pacific/Apia	 12:33:04 -	LMT	1879 Jul  5
 			-11:26:56 -	LMT	1911
 			-11:30	-	SAMT	1950		# Samoa Time
 			-11:00	-	WST	2010 Sep 26
 			-11:00	1:00	WSDT	2011 Apr 2 4:00
-			-11:00	-	WST
+			-11:00	-	WST	2011 Sep 24 3:00
+			-11:00	1:00	WSDT	2011 Dec 30
+			 13:00	1:00	WSDT	2012 Apr 1 4:00
+			 13:00	-	WST
 
 # Solomon Is
 # excludes Bougainville, for which see Papua New Guinea
@@ -1228,7 +1290,7 @@
 # Lord Howe Island Board (controlling authority for the Island) is
 # seeking the community's views on various options for summer time
 # arrangements on the Island, e.g. advance clocks by 1 full hour
-# instead of only 30 minutes.  Dependant on the wishes of residents
+# instead of only 30 minutes.  [Dependent] on the wishes of residents
 # the Board may approach the NSW government to change the existing
 # arrangements.  The starting date for summer time on the Island will
 # however always coincide with the rest of NSW.
@@ -1354,7 +1416,7 @@
 
 # From Paul Eggert (1996-01-22):
 # Today's _Wall Street Journal_ (page 1) reports that Kiribati
-# ``declared it the same day throught the country as of Jan. 1, 1995''
+# ``declared it the same day [throughout] the country as of Jan. 1, 1995''
 # as part of the competition to be first into the 21st century.
 
 
--- a/make/sun/javazic/tzdata/europe	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/europe	Fri Sep 16 13:56:52 2011 -0400
@@ -587,6 +587,26 @@
 Rule	Russia	1993	1995	-	Sep	lastSun	 2:00s	0	-
 Rule	Russia	1996	max	-	Oct	lastSun	 2:00s	0	-
 
+# From Alexander Krivenyshev (2011-06-14):
+# According to Kremlin press service, Russian President Dmitry Medvedev
+# signed a federal law "On calculation of time" on June 9, 2011.
+# According to the law Russia is abolishing daylight saving time.
+# 
+# Medvedev signed a law "On the Calculation of Time" (in russian): 
+# <a href="http://bmockbe.ru/events/?ID=7583">
+# http://bmockbe.ru/events/?ID=7583
+# </a>
+# 
+# Medvedev signed a law on the calculation of the time (in russian):
+# <a href="http://www.regnum.ru/news/polit/1413906.html">
+# http://www.regnum.ru/news/polit/1413906.html
+# </a>
+
+# From Arthur David Olson (2011-06-15):
+# Take "abolishing daylight saving time" to mean that time is now considered
+# to be standard.
+# At least for now, keep the "old" Russia rules for the benefit of Belarus.
+
 # These are for backward compatibility with older versions.
 
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
@@ -2035,7 +2055,8 @@
 			 1:00	C-Eur	CE%sT	1945
 			 2:00	Poland	CE%sT	1946
 			 3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
-			 2:00	Russia	EE%sT
+			 2:00	Russia	EE%sT	2011 Mar 27 2:00s
+			 3:00	-	KALT
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Respublika Adygeya, Arkhangel'skaya oblast',
@@ -2064,7 +2085,8 @@
 			 2:00	-	EET	1930 Jun 21
 			 3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
 			 2:00	Russia	EE%sT	1992 Jan 19 2:00s
-			 3:00	Russia	MSK/MSD
+			 3:00	Russia	MSK/MSD	2011 Mar 27 2:00s
+			 4:00	-	MSK
 #
 # Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast',
 # Volgogradskaya oblast'.  Shanks & Pottenger say Kirov is still at +0400
@@ -2077,7 +2099,8 @@
 			 4:00	Russia	VOL%sT	1989 Mar 26 2:00s # Volgograd T
 			 3:00	Russia	VOL%sT	1991 Mar 31 2:00s
 			 4:00	-	VOLT	1992 Mar 29 2:00s
-			 3:00	Russia	VOL%sT
+			 3:00	Russia	VOL%sT	2011 Mar 27 2:00s
+			 4:00	-	VOLT
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Samarskaya oblast', Udmyrtskaya respublika
@@ -2089,7 +2112,8 @@
 			 2:00	Russia	KUY%sT	1991 Sep 29 2:00s
 			 3:00	-	KUYT	1991 Oct 20 3:00
 			 4:00	Russia	SAM%sT	2010 Mar 28 2:00s # Samara Time
-			 3:00	Russia	SAM%sT
+			 3:00	Russia	SAM%sT	2011 Mar 27 2:00s
+			 4:00	-	SAMT
 
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
@@ -2102,7 +2126,8 @@
 			 4:00	-	SVET	1930 Jun 21 # Sverdlovsk Time
 			 5:00	Russia	SVE%sT	1991 Mar 31 2:00s
 			 4:00	Russia	SVE%sT	1992 Jan 19 2:00s
-			 5:00	Russia	YEK%sT	# Yekaterinburg Time
+			 5:00	Russia	YEK%sT	2011 Mar 27 2:00s
+			 6:00	-	YEKT	# Yekaterinburg Time
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Respublika Altaj, Altajskij kraj, Omskaya oblast'.
@@ -2110,7 +2135,8 @@
 			 5:00	-	OMST	1930 Jun 21 # Omsk TIme
 			 6:00	Russia	OMS%sT	1991 Mar 31 2:00s
 			 5:00	Russia	OMS%sT	1992 Jan 19 2:00s
-			 6:00	Russia	OMS%sT
+			 6:00	Russia	OMS%sT	2011 Mar 27 2:00s
+			 7:00	-	OMST
 #
 # From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
 # not clear when it switched from +7 to +6.
@@ -2120,7 +2146,8 @@
 			 7:00	Russia	NOV%sT	1991 Mar 31 2:00s
 			 6:00	Russia	NOV%sT	1992 Jan 19 2:00s
 			 7:00	Russia	NOV%sT	1993 May 23 # say Shanks & P.
-			 6:00	Russia	NOV%sT
+			 6:00	Russia	NOV%sT	2011 Mar 27 2:00s
+			 7:00	-	NOVT
 
 # From Alexander Krivenyshev (2009-10-13):
 # Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on
@@ -2153,7 +2180,8 @@
 			 7:00	Russia	KRA%sT	1991 Mar 31 2:00s
 			 6:00	Russia	KRA%sT	1992 Jan 19 2:00s
 			 7:00	Russia	KRA%sT	2010 Mar 28 2:00s
-			 6:00	Russia	NOV%sT # Novosibirsk/Novokuznetsk Time
+			 6:00	Russia	NOV%sT	2011 Mar 27 2:00s
+			 7:00	-	NOVT # Novosibirsk/Novokuznetsk Time
 
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
@@ -2164,7 +2192,8 @@
 			 6:00	-	KRAT	1930 Jun 21 # Krasnoyarsk Time
 			 7:00	Russia	KRA%sT	1991 Mar 31 2:00s
 			 6:00	Russia	KRA%sT	1992 Jan 19 2:00s
-			 7:00	Russia	KRA%sT
+			 7:00	Russia	KRA%sT	2011 Mar 27 2:00s
+			 8:00	-	KRAT
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Respublika Buryatiya, Irkutskaya oblast',
@@ -2174,7 +2203,8 @@
 			 7:00	-	IRKT	1930 Jun 21 # Irkutsk Time
 			 8:00	Russia	IRK%sT	1991 Mar 31 2:00s
 			 7:00	Russia	IRK%sT	1992 Jan 19 2:00s
-			 8:00	Russia	IRK%sT
+			 8:00	Russia	IRK%sT	2011 Mar 27 2:00s
+			 9:00	-	IRKT
 #
 # From Oscar van Vlijmen (2003-10-18): [This region consists of]
 # Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast',
@@ -2197,7 +2227,8 @@
 			 8:00	-	YAKT	1930 Jun 21 # Yakutsk Time
 			 9:00	Russia	YAK%sT	1991 Mar 31 2:00s
 			 8:00	Russia	YAK%sT	1992 Jan 19 2:00s
-			 9:00	Russia	YAK%sT
+			 9:00	Russia	YAK%sT	2011 Mar 27 2:00s
+			 10:00	-	YAKT
 #
 # From Oscar van Vlijmen (2003-10-18): [This region consists of]
 # Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj,
@@ -2210,7 +2241,8 @@
 			 9:00	-	VLAT	1930 Jun 21 # Vladivostok Time
 			10:00	Russia	VLA%sT	1991 Mar 31 2:00s
 			 9:00	Russia	VLA%sST	1992 Jan 19 2:00s
-			10:00	Russia	VLA%sT
+			10:00	Russia	VLA%sT	2011 Mar 27 2:00s
+			11:00	-	VLAT
 #
 # Sakhalinskaya oblast'.
 # The Zone name should be Yuzhno-Sakhalinsk, but that's too long.
@@ -2220,7 +2252,8 @@
 			11:00	Russia	SAK%sT	1991 Mar 31 2:00s # Sakhalin T.
 			10:00	Russia	SAK%sT	1992 Jan 19 2:00s
 			11:00	Russia	SAK%sT	1997 Mar lastSun 2:00s
-			10:00	Russia	SAK%sT
+			10:00	Russia	SAK%sT	2011 Mar 27 2:00s
+			11:00	-	SAKT
 #
 # From Oscar van Vlijmen (2003-10-18): [This region consists of]
 # Magadanskaya oblast', Respublika Sakha (Yakutiya).
@@ -2233,7 +2266,8 @@
 			10:00	-	MAGT	1930 Jun 21 # Magadan Time
 			11:00	Russia	MAG%sT	1991 Mar 31 2:00s
 			10:00	Russia	MAG%sT	1992 Jan 19 2:00s
-			11:00	Russia	MAG%sT
+			11:00	Russia	MAG%sT	2011 Mar 27 2:00s
+			12:00	-	MAGT
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Kamchatskaya oblast', Koryakskij avtonomnyj okrug.
@@ -2244,7 +2278,8 @@
 			12:00	Russia	PET%sT	1991 Mar 31 2:00s
 			11:00	Russia	PET%sT	1992 Jan 19 2:00s
 			12:00	Russia	PET%sT	2010 Mar 28 2:00s
-			11:00	Russia	PET%sT
+			11:00	Russia	PET%sT	2011 Mar 27 2:00s
+			12:00	-	PETT
 #
 # Chukotskij avtonomnyj okrug
 Zone Asia/Anadyr	11:49:56 -	LMT	1924 May  2
@@ -2253,7 +2288,8 @@
 			12:00	Russia	ANA%sT	1991 Mar 31 2:00s
 			11:00	Russia	ANA%sT	1992 Jan 19 2:00s
 			12:00	Russia	ANA%sT	2010 Mar 28 2:00s
-			11:00	Russia	ANA%sT
+			11:00	Russia	ANA%sT	2011 Mar 27 2:00s
+			12:00	-	ANAT
 
 # Serbia
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
--- a/make/sun/javazic/tzdata/iso3166.tab	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/iso3166.tab	Fri Sep 16 13:56:52 2011 -0400
@@ -43,6 +43,9 @@
 #
 # Lines beginning with `#' are comments.
 #
+# From Arthur David Olson (2011-08-17):
+# Resynchronized today with the ISO 3166 site (adding SS for South Sudan).
+#
 #country-
 #code	country name
 AD	Andorra
@@ -52,7 +55,6 @@
 AI	Anguilla
 AL	Albania
 AM	Armenia
-AN	Netherlands Antilles
 AO	Angola
 AQ	Antarctica
 AR	Argentina
@@ -75,6 +77,7 @@
 BM	Bermuda
 BN	Brunei
 BO	Bolivia
+BQ	Bonaire Sint Eustatius & Saba
 BR	Brazil
 BS	Bahamas
 BT	Bhutan
@@ -97,6 +100,7 @@
 CR	Costa Rica
 CU	Cuba
 CV	Cape Verde
+CW	Curacao
 CX	Christmas Island
 CY	Cyprus
 CZ	Czech Republic
@@ -251,8 +255,10 @@
 SN	Senegal
 SO	Somalia
 SR	Suriname
+SS	South Sudan
 ST	Sao Tome & Principe
 SV	El Salvador
+SX	Sint Maarten
 SY	Syria
 SZ	Swaziland
 TC	Turks & Caicos Is
--- a/make/sun/javazic/tzdata/northamerica	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/northamerica	Fri Sep 16 13:56:52 2011 -0400
@@ -490,6 +490,10 @@
 # own time. I asked about daylight saving; they said it wasn't used. I
 # did not inquire about practices in the past.
 
+# From Arthur David Olson (2011-08-17):
+# For lack of better information, assume that Metlakatla's
+# abandonment of use of daylight saving resulted from the 1983 vote.
+
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone America/Juneau	 15:02:19 -	LMT	1867 Oct 18
 			 -8:57:41 -	LMT	1900 Aug 20 12:00
@@ -515,7 +519,7 @@
 			 -8:00	US	P%sT	1946
 			 -8:00	-	PST	1969
 			 -8:00	US	P%sT	1983 Oct 30 2:00
-			 -8:00	US	MeST
+			 -8:00	-	MeST
 Zone America/Yakutat	 14:41:05 -	LMT	1867 Oct 18
 			 -9:18:55 -	LMT	1900 Aug 20 12:00
 			 -9:00	-	YST	1942
@@ -615,8 +619,8 @@
 			-10:30	-	HST	1933 Apr 30 2:00 #Laws 1933
 			-10:30	1:00	HDT	1933 May 21 12:00 #Laws 1933+12
 			-10:30	-	HST	1942 Feb 09 2:00 #Schmitt&Cox+2
-			-10:30	1:00	HDT	1945 Sep 30 2:00 #Schmitt&Fox+2
-			-10:30	US	H%sT	1947 Jun  8 2:00 #Schmitt&Fox+2
+			-10:30	1:00	HDT	1945 Sep 30 2:00 #Schmitt&Cox+2
+			-10:30	-	HST	1947 Jun  8 2:00 #Schmitt&Cox+2
 			-10:00	-	HST
 
 # Now we turn to US areas that have diverged from the consensus since 1970.
@@ -1185,12 +1189,39 @@
 # From Paul Eggert (2000-10-02):
 # INMS (2000-09-12) says that, since 1988 at least, Newfoundland switches
 # at 00:01 local time.  For now, assume it started in 1987.
+
+# From Michael Pelley (2011-08-05):
+# The Government of Newfoundland and Labrador has pending changes to
+# modify the hour for daylight savings time to come into effect in
+# November 2011. This modification would change the time from 12:01AM to
+# 2:00AM on the dates of the switches of Daylight Savings Time to/from
+# Standard Time.
+#
+# As a matter of reference, in Canada provinces have the authority of
+# setting time zone information. The legislation has passed our
+# legislative body (The House of Assembly) and is awaiting the
+# proclamation to come into effect. You may find this information at:
+# <a href="http://www.assembly.nl.ca/legislation/sr/lists/Proclamation.htm">
+# http://www.assembly.nl.ca/legislation/sr/lists/Proclamation.htm
+# </a>
+# and
+# search within that web page for Standard Time (Amendment) Act. The Act
+# may be found at:
+# <a href="http://www.assembly.nl.ca/business/bills/Bill1106.htm">
+# http://www.assembly.nl.ca/business/bills/Bill1106.htm
+# </a>
+# ...
+# MICHAEL PELLEY | Manager of Enterprise Architecture - Solution Delivery
+# Office of the Chief Information Officer Executive Council Government of
+# Newfoundland & Labrador P.O. Box 8700, 40 Higgins Line, St. John's NL
+# A1B 4J6
+
 Rule	StJohns	1987	only	-	Apr	Sun>=1	0:01	1:00	D
 Rule	StJohns	1987	2006	-	Oct	lastSun	0:01	0	S
 Rule	StJohns	1988	only	-	Apr	Sun>=1	0:01	2:00	DD
 Rule	StJohns	1989	2006	-	Apr	Sun>=1	0:01	1:00	D
-Rule	StJohns	2007	max	-	Mar	Sun>=8	0:01	1:00	D
-Rule	StJohns	2007	max	-	Nov	Sun>=1	0:01	0	S
+Rule	StJohns	2007	2011	-	Mar	Sun>=8	0:01	1:00	D
+Rule	StJohns	2007	2010	-	Nov	Sun>=1	0:01	0	S
 #
 # St John's has an apostrophe, but Posix file names can't have apostrophes.
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
@@ -1200,7 +1231,8 @@
 			-3:30:52 StJohns N%sT	1935 Mar 30
 			-3:30	StJohns	N%sT	1942 May 11
 			-3:30	Canada	N%sT	1946
-			-3:30	StJohns	N%sT
+			-3:30	StJohns	N%sT	2011 Nov
+			-3:30	Canada	N%sT
 
 # most of east Labrador
 
@@ -1214,7 +1246,8 @@
 			-3:30	StJohns	N%sT	1942 May 11
 			-3:30	Canada	N%sT	1946
 			-3:30	StJohns	N%sT	1966 Mar 15 2:00
-			-4:00	StJohns	A%sT
+			-4:00	StJohns	A%sT	2011 Nov
+			-4:00	Canada	A%sT
 
 
 # west Labrador, Nova Scotia, Prince Edward I
@@ -1946,20 +1979,69 @@
 # daylight saving....
 # http://www.nnsl.com/frames/newspapers/2006-11/nov13_06none.html
 
-# From Chris Walton (2007-03-14):
-# Today I phoned the "hamlet office" to find out what Resolute was doing with
-# its clocks.
+# From Chris Walton (2011-03-21):
+# Back in 2007 I initiated the creation of a new "zone file" for Resolute
+# Bay. Resolute Bay is a small community located about 900km north of
+# the Arctic Circle. The zone file was required because Resolute Bay had
+# decided to use UTC-5 instead of UTC-6 for the winter of 2006-2007.
 #
-# The individual that answered the phone confirmed that the clocks did not
-# move at the end of daylight saving on October 29/2006.  He also told me that
-# the clocks did not move this past weekend (March 11/2007)....
-
-# From Chris Walton (2008-11-13):
-# ...the residents of Resolute believe that they are changing "time zones"
-# twice a year.  In winter months, local time is qualified with "Eastern
-# Time" which is really "Eastern Standard Time (UTC-5)".  In summer
-# months, local time is qualified with "Central Time" which is really
-# "Central Daylight Time (UTC-5)"...
+# According to new information which I received last week, Resolute Bay
+# went back to using UTC-6 in the winter of 2007-2008...
+#
+# On March 11/2007 most of Canada went onto daylight saving. On March
+# 14/2007 I phoned the Resolute Bay hamlet office to do a "time check." I
+# talked to somebody that was both knowledgeable and helpful. I was able
+# to confirm that Resolute Bay was still operating on UTC-5. It was
+# explained to me that Resolute Bay had been on the Eastern Time zone
+# (EST) in the winter, and was now back on the Central Time zone (CDT).
+# i.e. the time zone had changed twice in the last year but the clocks
+# had not moved. The residents had to know which time zone they were in
+# so they could follow the correct TV schedule...
+#
+# On Nov 02/2008 most of Canada went onto standard time. On Nov 03/2008 I
+# phoned the Resolute Bay hamlet office...[D]ue to the challenging nature
+# of the phone call, I decided to seek out an alternate source of
+# information. I found an e-mail address for somebody by the name of
+# Stephanie Adams whose job was listed as "Inns North Support Officer for
+# Arctic Co-operatives." I was under the impression that Stephanie lived
+# and worked in Resolute Bay...
+#
+# On March 14/2011 I phoned the hamlet office again. I was told that
+# Resolute Bay had been using Central Standard Time over the winter of
+# 2010-2011 and that the clocks had therefore been moved one hour ahead
+# on March 13/2011. The person I talked to was aware that Resolute Bay
+# had previously experimented with Eastern Standard Time but he could not
+# tell me when the practice had stopped.
+#
+# On March 17/2011 I searched the Web to find an e-mail address of
+# somebody that might be able to tell me exactly when Resolute Bay went
+# off Eastern Standard Time. I stumbled on the name "Aziz Kheraj." Aziz
+# used to be the mayor of Resolute Bay and he apparently owns half the
+# businesses including "South Camp Inn." This website has some info on
+# Aziz:
+# <a href="http://www.uphere.ca/node/493">
+# http://www.uphere.ca/node/493
+# </a>
+#
+# I sent Aziz an e-mail asking when Resolute Bay had stopped using
+# Eastern Standard Time.
+#
+# Aziz responded quickly with this: "hi, The time was not changed for the
+# 1 year only, the following year, the community went back to the old way
+# of "spring ahead-fall behind" currently we are zulu plus 5 hrs and in
+# the winter Zulu plus 6 hrs"
+#
+# This of course conflicted with everything I had ascertained in November 2008.
+#
+# I sent Aziz a copy of my 2008 e-mail exchange with Stephanie. Aziz
+# responded with this: "Hi, Stephanie lives in Winnipeg. I live here, You
+# may want to check with the weather office in Resolute Bay or do a
+# search on the weather through Env. Canada. web site"
+#
+# If I had realized the Stephanie did not live in Resolute Bay I would
+# never have contacted her.  I now believe that all the information I
+# obtained in November 2008 should be ignored...
+# I apologize for reporting incorrect information in 2008.
 
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	NT_YK	1918	only	-	Apr	14	2:00	1:00	D
@@ -1987,14 +2069,12 @@
 			-6:00	Canada	C%sT	2000 Oct 29 2:00
 			-5:00	Canada	E%sT
 # aka Qausuittuq
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Resolute 2006	max	-	Nov	Sun>=1	2:00	0	ES
-Rule	Resolute 2007	max	-	Mar	Sun>=8	2:00	0	CD
 Zone America/Resolute	0	-	zzz	1947 Aug 31 # Resolute founded
 			-6:00	NT_YK	C%sT	2000 Oct 29 2:00
 			-5:00	-	EST	2001 Apr  1 3:00
 			-6:00	Canada	C%sT	2006 Oct 29 2:00
-			-5:00	Resolute	%sT
+			-5:00	-	EST	2007 Mar 11 3:00
+			-6:00	Canada	C%sT
 # aka Kangiqiniq
 Zone America/Rankin_Inlet 0	-	zzz	1957 # Rankin Inlet founded
 			-6:00	NT_YK	C%sT	2000 Oct 29 2:00
--- a/make/sun/javazic/tzdata/southamerica	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/southamerica	Fri Sep 16 13:56:52 2011 -0400
@@ -1298,6 +1298,14 @@
 			-4:30	-	ANT	1965 # Netherlands Antilles Time
 			-4:00	-	AST
 
+# From Arthur David Olson (2011-06-15):
+# At least for now, use links for places with new iso3166 codes.
+# The name "Lower Prince's Quarter" is both longer than fourteen charaters
+# and contains an apostrophe; use "Lower_Princes" below.
+
+Link	America/Curacao	America/Lower_Princes # Sint Maarten
+Link	America/Curacao	America/Kralendijk # Bonaire, Sint Estatius and Saba
+
 # Ecuador
 #
 # From Paul Eggert (2007-03-04):
--- a/make/sun/javazic/tzdata/zone.tab	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/sun/javazic/tzdata/zone.tab	Fri Sep 16 13:56:52 2011 -0400
@@ -54,7 +54,6 @@
 AI	+1812-06304	America/Anguilla
 AL	+4120+01950	Europe/Tirane
 AM	+4011+04430	Asia/Yerevan
-AN	+1211-06900	America/Curacao
 AO	-0848+01314	Africa/Luanda
 AQ	-7750+16636	Antarctica/McMurdo	McMurdo Station, Ross Island
 AQ	-9000+00000	Antarctica/South_Pole	Amundsen-Scott Station, South Pole
@@ -109,6 +108,7 @@
 BM	+3217-06446	Atlantic/Bermuda
 BN	+0456+11455	Asia/Brunei
 BO	-1630-06809	America/La_Paz
+BQ	+120903-0681636	America/Kralendijk
 BR	-0351-03225	America/Noronha	Atlantic islands
 BR	-0127-04829	America/Belem	Amapa, E Para
 BR	-0343-03830	America/Fortaleza	NE Brazil (MA, PI, CE, RN, PB)
@@ -142,7 +142,7 @@
 CA	+4823-08915	America/Thunder_Bay	Eastern Time - Thunder Bay, Ontario
 CA	+6344-06828	America/Iqaluit	Eastern Time - east Nunavut - most locations
 CA	+6608-06544	America/Pangnirtung	Eastern Time - Pangnirtung, Nunavut
-CA	+744144-0944945	America/Resolute	Eastern Standard Time - Resolute, Nunavut
+CA	+744144-0944945	America/Resolute	Central Standard Time - Resolute, Nunavut
 CA	+484531-0913718	America/Atikokan	Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
 CA	+624900-0920459	America/Rankin_Inlet	Central Time - central Nunavut
 CA	+4953-09709	America/Winnipeg	Central Time - Manitoba & west Ontario
@@ -177,6 +177,7 @@
 CR	+0956-08405	America/Costa_Rica
 CU	+2308-08222	America/Havana
 CV	+1455-02331	Atlantic/Cape_Verde
+CW	+1211-06900	America/Curacao
 CX	-1025+10543	Indian/Christmas
 CY	+3510+03322	Asia/Nicosia
 CZ	+5005+01426	Europe/Prague
@@ -382,8 +383,10 @@
 SN	+1440-01726	Africa/Dakar
 SO	+0204+04522	Africa/Mogadishu
 SR	+0550-05510	America/Paramaribo
+SS	+0451+03136	Africa/Juba
 ST	+0020+00644	Africa/Sao_Tome
 SV	+1342-08912	America/El_Salvador
+SX	+180305-0630250	America/Lower_Princes
 SY	+3330+03618	Asia/Damascus
 SZ	-2618+03106	Africa/Mbabane
 TC	+2128-07108	America/Grand_Turk
--- a/make/tools/src/build/tools/javazic/Mappings.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/make/tools/src/build/tools/javazic/Mappings.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,9 +26,6 @@
 package build.tools.javazic;
 
 import  java.util.ArrayList;
-import  java.util.HashMap;
-import  java.util.HashSet;
-import  java.util.Iterator;
 import  java.util.LinkedList;
 import  java.util.List;
 import  java.util.Map;
@@ -79,8 +76,8 @@
             // If the GMT offset of this Zone will change in some
             // future time, this Zone is added to the exclude list.
             boolean isExcluded = false;
-            if (zone.size() > 1) {
-                ZoneRec zrec = zone.get(zone.size()-2);
+            for (int i = 0; i < zone.size(); i++) {
+                ZoneRec zrec = zone.get(i);
                 if ((zrec.getGmtOffset() != rawOffset)
                     && (zrec.getUntilTime(0) > Time.getCurrentTime())) {
                     if (excludeList == null) {
@@ -88,6 +85,7 @@
                     }
                     excludeList.add(zone.getName());
                     isExcluded = true;
+                    break;
                 }
             }
 
--- a/src/share/classes/com/sun/security/auth/module/NTSystem.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/security/auth/module/NTSystem.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
 public class NTSystem {
 
     private native void getCurrent(boolean debug);
+    private native long getImpersonationToken0();
 
     private String userName;
     private String domain;
@@ -132,10 +133,14 @@
      *
      * @return an impersonation token for the current NT user.
      */
-    public long getImpersonationToken() {
+    public synchronized long getImpersonationToken() {
+        if (impersonationToken == 0) {
+            impersonationToken = getImpersonationToken0();
+        }
         return impersonationToken;
     }
 
+
     private void loadNative() {
         System.loadLibrary("jaas_nt");
     }
--- a/src/share/classes/com/sun/tools/example/debug/bdi/AccessWatchpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/AccessWatchpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/AmbiguousMethodException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/AmbiguousMethodException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class AmbiguousMethodException extends Exception
--- a/src/share/classes/com/sun/tools/example/debug/bdi/BreakpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/BreakpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public abstract class BreakpointSpec extends EventRequestSpec {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ChildSession.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ChildSession.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/EvaluationException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/EvaluationException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class EvaluationException extends Exception {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpecList.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpecList.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ExceptionSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ExceptionSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.ReferenceType;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/FrameIndexOutOfBoundsException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/FrameIndexOutOfBoundsException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class FrameIndexOutOfBoundsException extends IndexOutOfBoundsException {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/InputListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/InputListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public interface InputListener {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/LineNotFoundException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/LineNotFoundException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class LineNotFoundException extends Exception
--- a/src/share/classes/com/sun/tools/example/debug/bdi/MalformedMemberNameException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/MalformedMemberNameException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 class MalformedMemberNameException extends Exception {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/MethodNotFoundException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/MethodNotFoundException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class MethodNotFoundException extends Exception
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ModificationWatchpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ModificationWatchpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/NoSessionException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/NoSessionException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class NoSessionException extends Exception {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/NoThreadException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/NoThreadException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class NoThreadException extends Exception {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/OutputListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/OutputListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public interface OutputListener {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ParseException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ParseException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 // dummy placeholder for javaCC-generated code.
--- a/src/share/classes/com/sun/tools/example/debug/bdi/PatternReferenceTypeSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/PatternReferenceTypeSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ReferenceTypeSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ReferenceTypeSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/Session.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/Session.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.VirtualMachine;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/SessionListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/SessionListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import java.util.EventObject;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/SourceNameReferenceTypeSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/SourceNameReferenceTypeSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/SpecErrorEvent.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/SpecErrorEvent.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class SpecErrorEvent extends SpecEvent {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/SpecEvent.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/SpecEvent.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import java.util.EventObject;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/SpecListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/SpecListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import java.util.EventListener;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.ThreadGroupReference;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ThreadInfo.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ThreadInfo.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.ThreadGroupReference;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/Utils.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/Utils.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;   //### does it belong here?
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/VMLaunchFailureException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/VMLaunchFailureException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class VMLaunchFailureException extends Exception {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/VMNotInterruptedException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/VMNotInterruptedException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class VMNotInterruptedException extends Exception {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/WatchpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/WatchpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public abstract class WatchpointSpec extends EventRequestSpec {
--- a/src/share/classes/com/sun/tools/example/debug/event/AbstractEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/AbstractEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/AccessWatchpointEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/AccessWatchpointEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/ClassPrepareEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/ClassPrepareEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/ClassUnloadEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/ClassUnloadEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/ExceptionEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/ExceptionEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/JDIAdapter.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/JDIAdapter.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 /**
--- a/src/share/classes/com/sun/tools/example/debug/event/JDIListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/JDIListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import java.util.EventListener;
--- a/src/share/classes/com/sun/tools/example/debug/event/LocatableEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/LocatableEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/LocationTriggerEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/LocationTriggerEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/ModificationWatchpointEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/ModificationWatchpointEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/ThreadDeathEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/ThreadDeathEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/ThreadStartEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/ThreadStartEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/VMDeathEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/VMDeathEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/VMDisconnectEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/VMDisconnectEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/VMStartEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/VMStartEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/event/WatchpointEventSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/event/WatchpointEventSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/expr/ASCII_UCodeESC_CharStream.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/expr/ASCII_UCodeESC_CharStream.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ASCII_UCodeESC_CharStream.java Version 0.7pre6 */
 
 package com.sun.tools.example.debug.expr;
--- a/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParser.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParser.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ExpressionParser.java */
 package com.sun.tools.example.debug.expr;
 
--- a/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserConstants.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserConstants.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ExpressionParserConstants.java */
 package com.sun.tools.example.debug.expr;
 
--- a/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserTokenManager.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserTokenManager.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ExpressionParserTokenManager.java */
 package com.sun.tools.example.debug.expr;
 
--- a/src/share/classes/com/sun/tools/example/debug/expr/LValue.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/expr/LValue.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.expr;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/expr/ParseException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/expr/ParseException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ParseException.java Version 0.7pre6 */
 package com.sun.tools.example.debug.expr;
 
--- a/src/share/classes/com/sun/tools/example/debug/expr/Token.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/expr/Token.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. Token.java Version 0.7pre3 */
 package com.sun.tools.example.debug.expr;
 
--- a/src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 0.7pre2 */
 package com.sun.tools.example.debug.expr;
 
--- a/src/share/classes/com/sun/tools/example/debug/gui/ApplicationTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/ApplicationTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/ClassManager.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/ClassManager.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 public class ClassManager {
--- a/src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/CommandTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/CommandTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/ContextListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/ContextListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 public interface ContextListener {
--- a/src/share/classes/com/sun/tools/example/debug/gui/ContextManager.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/ContextManager.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/CurrentFrameChangedEvent.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/CurrentFrameChangedEvent.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/Environment.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/Environment.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/GUI.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/GUI.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/Icons.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/Icons.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.Icon;
--- a/src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.File;
--- a/src/share/classes/com/sun/tools/example/debug/gui/JDBMenuBar.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/JDBMenuBar.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/JDBToolBar.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/JDBToolBar.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.List;
--- a/src/share/classes/com/sun/tools/example/debug/gui/MonitorListModel.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/MonitorListModel.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/MonitorTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/MonitorTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/OutputSink.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/OutputSink.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/SingleLeafTreeSelectionModel.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SingleLeafTreeSelectionModel.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.tree.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/SourceListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SourceListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 public interface SourceListener {
--- a/src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/SourceTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SourceTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/SourceTreeTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SourceTreeTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/SourcepathChangedEvent.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SourcepathChangedEvent.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.EventObject;
--- a/src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/TypeScript.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/TypeScript.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.awt.*;
--- a/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptOutputListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptOutputListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import com.sun.tools.example.debug.bdi.OutputListener;
--- a/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptWriter.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptWriter.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/AccessWatchpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/AccessWatchpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/AmbiguousMethodException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/AmbiguousMethodException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 public class AmbiguousMethodException extends Exception
--- a/src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/Commands.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/Commands.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/Env.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/Env.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/EventNotifier.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/EventNotifier.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.event.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.request.EventRequest;
--- a/src/share/classes/com/sun/tools/example/debug/tty/ExceptionSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ExceptionSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.ReferenceType;
--- a/src/share/classes/com/sun/tools/example/debug/tty/LineNotFoundException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/LineNotFoundException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 public class LineNotFoundException extends Exception
--- a/src/share/classes/com/sun/tools/example/debug/tty/MalformedMemberNameException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/MalformedMemberNameException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 class MalformedMemberNameException extends Exception {
--- a/src/share/classes/com/sun/tools/example/debug/tty/MessageOutput.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/MessageOutput.java	Fri Sep 16 13:56:52 2011 -0400
@@ -22,6 +22,15 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package com.sun.tools.example.debug.tty;
 
 import java.util.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/ModificationWatchpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ModificationWatchpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/PatternReferenceTypeSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/PatternReferenceTypeSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/ReferenceTypeSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ReferenceTypeSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.Location;
--- a/src/share/classes/com/sun/tools/example/debug/tty/TTY.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/TTY.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/TTYResources.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/TTYResources.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 /**
--- a/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 /**
--- a/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 /**
--- a/src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.ThreadGroupReference;
--- a/src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.ThreadReference;
--- a/src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.ThreadGroupReference;
--- a/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/debug/tty/VMNotConnectedException.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/VMNotConnectedException.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 public class VMNotConnectedException extends RuntimeException {
--- a/src/share/classes/com/sun/tools/example/debug/tty/WatchpointSpec.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/debug/tty/WatchpointSpec.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 abstract class WatchpointSpec extends EventRequestSpec {
--- a/src/share/classes/com/sun/tools/example/trace/EventThread.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/trace/EventThread.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.trace;
 
 import com.sun.jdi.*;
--- a/src/share/classes/com/sun/tools/example/trace/StreamRedirectThread.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/trace/StreamRedirectThread.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.trace;
 
 import java.io.*;
--- a/src/share/classes/com/sun/tools/example/trace/Trace.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/com/sun/tools/example/trace/Trace.java	Fri Sep 16 13:56:52 2011 -0400
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.trace;
 
 import com.sun.jdi.VirtualMachine;
--- a/src/share/classes/java/awt/Component.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/awt/Component.java	Fri Sep 16 13:56:52 2011 -0400
@@ -7910,7 +7910,7 @@
                 res = toFocus.requestFocusInWindow(CausedFocusEvent.Cause.TRAVERSAL_BACKWARD);
             }
         }
-        if (!res) {
+        if (clearOnFailure && !res) {
             if (focusLog.isLoggable(PlatformLogger.FINER)) {
                 focusLog.finer("clear global focus owner");
             }
--- a/src/share/classes/java/beans/Beans.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/beans/Beans.java	Fri Sep 16 13:56:52 2011 -0400
@@ -32,7 +32,6 @@
 import java.applet.AppletStub;
 import java.applet.AudioClip;
 
-import java.awt.GraphicsEnvironment;
 import java.awt.Image;
 
 import java.beans.beancontext.BeanContext;
@@ -53,15 +52,11 @@
 import java.util.Iterator;
 import java.util.Vector;
 
-import sun.awt.AppContext;
-
 /**
  * This class provides some general purpose beans control methods.
  */
 
 public class Beans {
-    private static final Object DESIGN_TIME = new Object();
-    private static final Object GUI_AVAILABLE = new Object();
 
     /**
      * <p>
@@ -395,8 +390,7 @@
      * @see DesignMode
      */
     public static boolean isDesignTime() {
-        Object value = AppContext.getAppContext().get(DESIGN_TIME);
-        return (value instanceof Boolean) && (Boolean) value;
+        return ThreadGroupContext.getContext().isDesignTime();
     }
 
     /**
@@ -413,8 +407,7 @@
      *
      */
     public static boolean isGuiAvailable() {
-        Object value = AppContext.getAppContext().get(GUI_AVAILABLE);
-        return (value instanceof Boolean) ? (Boolean) value : !GraphicsEnvironment.isHeadless();
+        return ThreadGroupContext.getContext().isGuiAvailable();
     }
 
     /**
@@ -440,7 +433,7 @@
         if (sm != null) {
             sm.checkPropertiesAccess();
         }
-        AppContext.getAppContext().put(DESIGN_TIME, Boolean.valueOf(isDesignTime));
+        ThreadGroupContext.getContext().setDesignTime(isDesignTime);
     }
 
     /**
@@ -466,7 +459,7 @@
         if (sm != null) {
             sm.checkPropertiesAccess();
         }
-        AppContext.getAppContext().put(GUI_AVAILABLE, Boolean.valueOf(isGuiAvailable));
+        ThreadGroupContext.getContext().setGuiAvailable(isGuiAvailable);
     }
 }
 
--- a/src/share/classes/java/beans/Introspector.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/beans/Introspector.java	Fri Sep 16 13:56:52 2011 -0400
@@ -26,7 +26,6 @@
 package java.beans;
 
 import com.sun.beans.WeakCache;
-import com.sun.beans.finder.BeanInfoFinder;
 import com.sun.beans.finder.ClassFinder;
 
 import java.awt.Component;
@@ -44,9 +43,7 @@
 import java.util.EventObject;
 import java.util.List;
 import java.util.TreeMap;
-import java.util.WeakHashMap;
 
-import sun.awt.AppContext;
 import sun.reflect.misc.ReflectUtil;
 
 /**
@@ -98,10 +95,7 @@
     public final static int IGNORE_ALL_BEANINFO        = 3;
 
     // Static Caches to speed up introspection.
-    private static WeakCache<Class<?>, Method[]> declaredMethodCache =
-            new WeakCache<Class<?>, Method[]>();
-
-    private static final Object BEANINFO_CACHE = new Object();
+    private static final WeakCache<Class<?>, Method[]> declaredMethodCache = new WeakCache<>();
 
     private Class beanClass;
     private BeanInfo explicitBeanInfo;
@@ -134,8 +128,6 @@
     static final String SET_PREFIX = "set";
     static final String IS_PREFIX = "is";
 
-    private static final Object FINDER_KEY = new Object();
-
     //======================================================================
     //                          Public methods
     //======================================================================
@@ -160,20 +152,15 @@
         if (!ReflectUtil.isPackageAccessible(beanClass)) {
             return (new Introspector(beanClass, null, USE_ALL_BEANINFO)).getBeanInfo();
         }
-        Map<Class<?>, BeanInfo> beanInfoCache;
+        ThreadGroupContext context = ThreadGroupContext.getContext();
         BeanInfo beanInfo;
-        synchronized (BEANINFO_CACHE) {
-            beanInfoCache = (Map<Class<?>, BeanInfo>) AppContext.getAppContext().get(BEANINFO_CACHE);
-            if (beanInfoCache == null) {
-                beanInfoCache = new WeakHashMap<Class<?>, BeanInfo>();
-                AppContext.getAppContext().put(BEANINFO_CACHE, beanInfoCache);
-            }
-            beanInfo = beanInfoCache.get(beanClass);
+        synchronized (declaredMethodCache) {
+            beanInfo = context.getBeanInfo(beanClass);
         }
         if (beanInfo == null) {
             beanInfo = new Introspector(beanClass, null, USE_ALL_BEANINFO).getBeanInfo();
-            synchronized (BEANINFO_CACHE) {
-                beanInfoCache.put(beanClass, beanInfo);
+            synchronized (declaredMethodCache) {
+                context.putBeanInfo(beanClass, beanInfo);
             }
         }
         return beanInfo;
@@ -306,7 +293,7 @@
      */
 
     public static String[] getBeanInfoSearchPath() {
-        return getFinder().getPackages();
+        return ThreadGroupContext.getContext().getBeanInfoFinder().getPackages();
     }
 
     /**
@@ -330,7 +317,7 @@
         if (sm != null) {
             sm.checkPropertiesAccess();
         }
-        getFinder().setPackages(path);
+        ThreadGroupContext.getContext().getBeanInfoFinder().setPackages(path);
     }
 
 
@@ -342,11 +329,8 @@
      */
 
     public static void flushCaches() {
-        synchronized (BEANINFO_CACHE) {
-            Map beanInfoCache = (Map) AppContext.getAppContext().get(BEANINFO_CACHE);
-            if (beanInfoCache != null) {
-                beanInfoCache.clear();
-            }
+        synchronized (declaredMethodCache) {
+            ThreadGroupContext.getContext().clearBeanInfoCache();
             declaredMethodCache.clear();
         }
     }
@@ -370,11 +354,8 @@
         if (clz == null) {
             throw new NullPointerException();
         }
-        synchronized (BEANINFO_CACHE) {
-            Map beanInfoCache = (Map) AppContext.getAppContext().get(BEANINFO_CACHE);
-            if (beanInfoCache != null) {
-                beanInfoCache.put(clz, null);
-            }
+        synchronized (declaredMethodCache) {
+            ThreadGroupContext.getContext().removeBeanInfo(clz);
             declaredMethodCache.put(clz, null);
         }
     }
@@ -452,7 +433,7 @@
      * @return Instance of an explicit BeanInfo class or null if one isn't found.
      */
     private static BeanInfo findExplicitBeanInfo(Class beanClass) {
-        return getFinder().find(beanClass);
+        return ThreadGroupContext.getContext().getBeanInfoFinder().find(beanClass);
     }
 
     /**
@@ -1275,7 +1256,7 @@
         if (!ReflectUtil.isPackageAccessible(clz)) {
             return new Method[0];
         }
-        synchronized (BEANINFO_CACHE) {
+        synchronized (declaredMethodCache) {
             Method[] result = declaredMethodCache.get(clz);
             if (result == null) {
                 result = clz.getMethods();
@@ -1426,17 +1407,6 @@
         return false;
     }
 
-    private static BeanInfoFinder getFinder() {
-        AppContext context = AppContext.getAppContext();
-        Object object = context.get(FINDER_KEY);
-        if (object instanceof BeanInfoFinder) {
-            return (BeanInfoFinder) object;
-        }
-        BeanInfoFinder finder = new BeanInfoFinder();
-        context.put(FINDER_KEY, finder);
-        return finder;
-    }
-
     /**
      * Try to create an instance of a named class.
      * First try the classloader of "sibling", then try the system
--- a/src/share/classes/java/beans/PropertyEditorManager.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/beans/PropertyEditorManager.java	Fri Sep 16 13:56:52 2011 -0400
@@ -25,9 +25,6 @@
 
 package java.beans;
 
-import com.sun.beans.finder.PropertyEditorFinder;
-import sun.awt.AppContext;
-
 /**
  * The PropertyEditorManager can be used to locate a property editor for
  * any given type name.  This property editor must support the
@@ -55,8 +52,6 @@
 
 public class PropertyEditorManager {
 
-    private static final Object FINDER_KEY = new Object();
-
     /**
      * Registers an editor class to edit values of the given target class.
      * If the editor class is {@code null},
@@ -81,7 +76,7 @@
         if (sm != null) {
             sm.checkPropertiesAccess();
         }
-        getFinder().register(targetType, editorClass);
+        ThreadGroupContext.getContext().getPropertyEditorFinder().register(targetType, editorClass);
     }
 
     /**
@@ -92,7 +87,7 @@
      * The result is null if no suitable editor can be found.
      */
     public static PropertyEditor findEditor(Class<?> targetType) {
-        return getFinder().find(targetType);
+        return ThreadGroupContext.getContext().getPropertyEditorFinder().find(targetType);
     }
 
     /**
@@ -104,7 +99,7 @@
      *         e.g. Sun implementation initially sets to  {"sun.beans.editors"}.
      */
     public static String[] getEditorSearchPath() {
-        return getFinder().getPackages();
+        return ThreadGroupContext.getContext().getPropertyEditorFinder().getPackages();
     }
 
     /**
@@ -125,17 +120,6 @@
         if (sm != null) {
             sm.checkPropertiesAccess();
         }
-        getFinder().setPackages(path);
-    }
-
-    private static PropertyEditorFinder getFinder() {
-        AppContext context = AppContext.getAppContext();
-        Object object = context.get(FINDER_KEY);
-        if (object instanceof PropertyEditorFinder) {
-            return (PropertyEditorFinder) object;
-        }
-        PropertyEditorFinder finder = new PropertyEditorFinder();
-        context.put(FINDER_KEY, finder);
-        return finder;
+        ThreadGroupContext.getContext().getPropertyEditorFinder().setPackages(path);
     }
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/share/classes/java/beans/ThreadGroupContext.java	Fri Sep 16 13:56:52 2011 -0400
@@ -0,0 +1,133 @@
+/*
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package java.beans;
+
+import com.sun.beans.finder.BeanInfoFinder;
+import com.sun.beans.finder.PropertyEditorFinder;
+
+import java.awt.GraphicsEnvironment;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.WeakHashMap;
+
+/**
+ * The {@code ThreadGroupContext} is an application-dependent
+ * context referenced by the specific {@link ThreadGroup}.
+ * This is a replacement for the {@link sun.awt.AppContext}.
+ *
+ * @author  Sergey Malenkov
+ */
+final class ThreadGroupContext {
+
+    private static final Map<ThreadGroup, ThreadGroupContext> contexts = new WeakHashMap<>();
+
+    /**
+     * Returns the appropriate {@code AppContext} for the caller,
+     * as determined by its {@code ThreadGroup}.
+     *
+     * @return  the application-dependent context
+     */
+    static ThreadGroupContext getContext() {
+        ThreadGroup group = Thread.currentThread().getThreadGroup();
+        synchronized (contexts) {
+            ThreadGroupContext context = contexts.get(group);
+            if (context == null) {
+                context = new ThreadGroupContext();
+                contexts.put(group, context);
+            }
+            return context;
+        }
+    }
+
+    private volatile boolean isDesignTime;
+    private volatile Boolean isGuiAvailable;
+
+    private Map<Class<?>, BeanInfo> beanInfoCache;
+    private BeanInfoFinder beanInfoFinder;
+    private PropertyEditorFinder propertyEditorFinder;
+
+
+    boolean isDesignTime() {
+        return this.isDesignTime;
+    }
+
+    void setDesignTime(boolean isDesignTime) {
+        this.isDesignTime = isDesignTime;
+    }
+
+
+    boolean isGuiAvailable() {
+        Boolean isGuiAvailable = this.isGuiAvailable;
+        return (isGuiAvailable != null)
+                ? isGuiAvailable.booleanValue()
+                : !GraphicsEnvironment.isHeadless();
+    }
+
+    void setGuiAvailable(boolean isGuiAvailable) {
+        this.isGuiAvailable = Boolean.valueOf(isGuiAvailable);
+    }
+
+
+    BeanInfo getBeanInfo(Class<?> type) {
+        return (this.beanInfoCache != null)
+                ? this.beanInfoCache.get(type)
+                : null;
+    }
+
+    BeanInfo putBeanInfo(Class<?> type, BeanInfo info) {
+        if (this.beanInfoCache == null) {
+            this.beanInfoCache = new WeakHashMap<>();
+        }
+        return this.beanInfoCache.put(type, info);
+    }
+
+    void removeBeanInfo(Class<?> type) {
+        if (this.beanInfoCache != null) {
+            this.beanInfoCache.remove(type);
+        }
+    }
+
+    void clearBeanInfoCache() {
+        if (this.beanInfoCache != null) {
+            this.beanInfoCache.clear();
+        }
+    }
+
+
+    synchronized BeanInfoFinder getBeanInfoFinder() {
+        if (this.beanInfoFinder == null) {
+            this.beanInfoFinder = new BeanInfoFinder();
+        }
+        return this.beanInfoFinder;
+    }
+
+    synchronized PropertyEditorFinder getPropertyEditorFinder() {
+        if (this.propertyEditorFinder == null) {
+            this.propertyEditorFinder = new PropertyEditorFinder();
+        }
+        return this.propertyEditorFinder;
+    }
+}
--- a/src/share/classes/java/io/FileInputStream.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/io/FileInputStream.java	Fri Sep 16 13:56:52 2011 -0400
@@ -56,16 +56,6 @@
     private final Object closeLock = new Object();
     private volatile boolean closed = false;
 
-    private static final ThreadLocal<Boolean> runningFinalize =
-        new ThreadLocal<>();
-
-    private static boolean isRunningFinalize() {
-        Boolean val;
-        if ((val = runningFinalize.get()) != null)
-            return val.booleanValue();
-        return false;
-    }
-
     /**
      * Creates a <code>FileInputStream</code> by
      * opening a connection to an actual file,
@@ -319,10 +309,10 @@
         int useCount = fd.decrementAndGetUseCount();
 
         /*
-         * If FileDescriptor is still in use by another stream, the finalizer
+         * If FileDescriptor is still in use by another stream, we
          * will not close it.
          */
-        if ((useCount <= 0) || !isRunningFinalize()) {
+        if (useCount <= 0) {
             close0();
         }
     }
@@ -391,18 +381,7 @@
      */
     protected void finalize() throws IOException {
         if ((fd != null) &&  (fd != FileDescriptor.in)) {
-
-            /*
-             * Finalizer should not release the FileDescriptor if another
-             * stream is still using it. If the user directly invokes
-             * close() then the FileDescriptor is also released.
-             */
-            runningFinalize.set(Boolean.TRUE);
-            try {
                 close();
-            } finally {
-                runningFinalize.set(Boolean.FALSE);
-            }
         }
     }
 }
--- a/src/share/classes/java/io/FileOutputStream.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/io/FileOutputStream.java	Fri Sep 16 13:56:52 2011 -0400
@@ -63,21 +63,12 @@
     private final boolean append;
 
     /**
-     * The associated channel, initalized lazily.
+     * The associated channel, initialized lazily.
      */
     private FileChannel channel;
 
     private final Object closeLock = new Object();
     private volatile boolean closed = false;
-    private static final ThreadLocal<Boolean> runningFinalize =
-        new ThreadLocal<>();
-
-    private static boolean isRunningFinalize() {
-        Boolean val;
-        if ((val = runningFinalize.get()) != null)
-            return val.booleanValue();
-        return false;
-    }
 
     /**
      * Creates a file output stream to write to the file with the
@@ -355,10 +346,10 @@
         int useCount = fd.decrementAndGetUseCount();
 
         /*
-         * If FileDescriptor is still in use by another stream, the finalizer
+         * If FileDescriptor is still in use by another stream, we
          * will not close it.
          */
-        if ((useCount <= 0) || !isRunningFinalize()) {
+        if (useCount <= 0) {
             close0();
         }
     }
@@ -424,18 +415,7 @@
             if (fd == FileDescriptor.out || fd == FileDescriptor.err) {
                 flush();
             } else {
-
-                /*
-                 * Finalizer should not release the FileDescriptor if another
-                 * stream is still using it. If the user directly invokes
-                 * close() then the FileDescriptor is also released.
-                 */
-                runningFinalize.set(Boolean.TRUE);
-                try {
                     close();
-                } finally {
-                    runningFinalize.set(Boolean.FALSE);
-                }
             }
         }
     }
--- a/src/share/classes/java/io/RandomAccessFile.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/io/RandomAccessFile.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1994, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -590,8 +590,15 @@
          * Decrement FD use count associated with this stream.
          * The count got incremented by FileDescriptor during its construction.
          */
-        fd.decrementAndGetUseCount();
-        close0();
+        int useCount = fd.decrementAndGetUseCount();
+
+        /*
+         * If FileDescriptor is still in use by another stream, we
+         * will not close it.
+         */
+        if (useCount <= 0) {
+            close0();
+        }
     }
 
     //
--- a/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java	Fri Sep 16 13:56:52 2011 -0400
@@ -66,8 +66,8 @@
      * Creates a datagram socket
      */
     protected synchronized void create() throws SocketException {
+        ResourceManager.beforeUdpCreate();
         fd = new FileDescriptor();
-        ResourceManager.beforeUdpCreate();
         try {
             datagramSocketCreate();
         } catch (SocketException ioe) {
--- a/src/share/classes/java/net/URI.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/net/URI.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1711,6 +1711,8 @@
                     i++;
                     continue;
                 }
+                if (d != '%')
+                    return false;
                 i++;
                 if (toLower(s.charAt(i)) != toLower(t.charAt(i)))
                     return false;
--- a/src/share/classes/java/util/Random.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/java/util/Random.java	Fri Sep 16 13:56:52 2011 -0400
@@ -118,7 +118,13 @@
      * @see   #setSeed(long)
      */
     public Random(long seed) {
-        this.seed = new AtomicLong(initialScramble(seed));
+        if (getClass() == Random.class)
+            this.seed = new AtomicLong(initialScramble(seed));
+        else {
+            // subclass might have overriden setSeed
+            this.seed = new AtomicLong();
+            setSeed(seed);
+        }
     }
 
     private static long initialScramble(long seed) {
--- a/src/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1153,10 +1153,15 @@
                 if (shellFolder.isLink()) {
                     File linkedTo = shellFolder.getLinkLocation();
 
-                    if (linkedTo != null && fc.isTraversable(linkedTo)) {
-                        dir = linkedTo;
+                    // If linkedTo is null we try to use dir
+                    if (linkedTo != null) {
+                        if (fc.isTraversable(linkedTo)) {
+                            dir = linkedTo;
+                        } else {
+                            return;
+                        }
                     } else {
-                        return;
+                        dir = shellFolder;
                     }
                 }
             } catch (FileNotFoundException ex) {
--- a/src/share/classes/javax/swing/text/html/CSS.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/javax/swing/text/html/CSS.java	Fri Sep 16 13:56:52 2011 -0400
@@ -806,15 +806,11 @@
             // translate border width into the cells, if it has non-zero value.
             AttributeSet tableAttr = elem.getParentElement().
                                      getParentElement().getAttributes();
-            int borderWidth;
-            try {
-                borderWidth = Integer.parseInt(
-                    (String) tableAttr.getAttribute(HTML.Attribute.BORDER));
-            } catch (NumberFormatException e) {
-                borderWidth = 0;
-            }
+
+            int borderWidth = getTableBorder(tableAttr);
             if (borderWidth > 0) {
-                translateAttribute(HTML.Attribute.BORDER, tableAttr, cssAttrSet);
+                // If table contains the BORDER attribute cells should have border width equals 1
+                translateAttribute(HTML.Attribute.BORDER, "1", cssAttrSet);
             }
             String pad = (String)tableAttr.getAttribute(HTML.Attribute.CELLPADDING);
             if (pad != null) {
@@ -850,6 +846,21 @@
         return cssAttrSet;
     }
 
+    private static int getTableBorder(AttributeSet tableAttr) {
+        String borderValue = (String) tableAttr.getAttribute(HTML.Attribute.BORDER);
+
+        if (borderValue == HTML.NULL_ATTRIBUTE_VALUE || "".equals(borderValue)) {
+            // Some browsers accept <TABLE BORDER> and <TABLE BORDER=""> with the same semantics as BORDER=1
+            return 1;
+        }
+
+        try {
+            return Integer.parseInt(borderValue);
+        } catch (NumberFormatException e) {
+            return 0;
+        }
+    }
+
     private static final Hashtable<String, Attribute> attributeMap = new Hashtable<String, Attribute>();
     private static final Hashtable<String, Value> valueMap = new Hashtable<String, Value>();
 
@@ -1400,17 +1411,20 @@
                         }
                     }
                 } else {
-
-                    /*
-                     * The html size attribute has a mapping in the CSS world only
-                     * if it is par of a font or base font tag.
-                     */
-
                     if (key == HTML.Attribute.SIZE && !isHTMLFontTag(tag)) {
-                        continue;
+                        /*
+                         * The html size attribute has a mapping in the CSS world only
+                         * if it is par of a font or base font tag.
+                         */
+                    } else if (tag == HTML.Tag.TABLE && key == HTML.Attribute.BORDER) {
+                        int borderWidth = getTableBorder(htmlAttrSet);
+
+                        if (borderWidth > 0) {
+                            translateAttribute(HTML.Attribute.BORDER, Integer.toString(borderWidth), cssAttrSet);
+                        }
+                    } else {
+                        translateAttribute(key, (String) htmlAttrSet.getAttribute(key), cssAttrSet);
                     }
-
-                    translateAttribute(key, htmlAttrSet, cssAttrSet);
                 }
             } else if (name instanceof CSS.Attribute) {
                 cssAttrSet.addAttribute(name, htmlAttrSet.getAttribute(name));
@@ -1419,7 +1433,7 @@
     }
 
     private void translateAttribute(HTML.Attribute key,
-                                           AttributeSet htmlAttrSet,
+                                           String htmlAttrValue,
                                            MutableAttributeSet cssAttrSet) {
         /*
          * In the case of all remaining HTML.Attribute's they
@@ -1427,8 +1441,6 @@
          */
         CSS.Attribute[] cssAttrList = getCssAttribute(key);
 
-        String htmlAttrValue = (String)htmlAttrSet.getAttribute(key);
-
         if (cssAttrList == null || htmlAttrValue == null) {
             return;
         }
--- a/src/share/classes/javax/swing/text/html/TableView.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/javax/swing/text/html/TableView.java	Fri Sep 16 13:56:52 2011 -0400
@@ -242,7 +242,8 @@
             if (lv != null) {
                 cellSpacing = (int) lv.getValue();
             } else {
-                cellSpacing = 0;
+                // Default cell spacing equals 2
+                cellSpacing = 2;
             }
             lv = (CSS.LengthValue)
                     attr.getAttribute(CSS.Attribute.BORDER_TOP_WIDTH);
@@ -251,8 +252,7 @@
             } else {
                     borderWidth = 0;
             }
-
-                }
+        }
     }
 
     /**
--- a/src/share/classes/sun/awt/FontConfiguration.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/awt/FontConfiguration.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -266,11 +266,20 @@
     private File findFontConfigFile(String javaLib) {
         String baseName = javaLib + File.separator + "fontconfig";
         File configFile;
+        String osMajorVersion = null;
         if (osVersion != null && osName != null) {
             configFile = findImpl(baseName + "." + osName + "." + osVersion);
             if (configFile != null) {
                 return configFile;
             }
+            int decimalPointIndex = osVersion.indexOf(".");
+            if (decimalPointIndex != -1) {
+                osMajorVersion = osVersion.substring(0, osVersion.indexOf("."));
+                configFile = findImpl(baseName + "." + osName + "." + osMajorVersion);
+                if (configFile != null) {
+                    return configFile;
+                }
+            }
         }
         if (osName != null) {
             configFile = findImpl(baseName + "." + osName);
@@ -283,6 +292,12 @@
             if (configFile != null) {
                 return configFile;
             }
+            if (osMajorVersion != null) {
+                configFile = findImpl(baseName + "." + osMajorVersion);
+                if (configFile != null) {
+                    return configFile;
+                }
+            }
         }
         foundOsSpecificFile = false;
 
--- a/src/share/classes/sun/net/httpserver/ServerConfig.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/net/httpserver/ServerConfig.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,8 +25,6 @@
 
 package sun.net.httpserver;
 
-import com.sun.net.httpserver.*;
-import com.sun.net.httpserver.spi.*;
 import java.util.logging.Logger;
 import java.security.PrivilegedAction;
 
@@ -59,48 +57,46 @@
     static long maxReqTime;
     static long maxRspTime;
     static long timerMillis;
-    static boolean debug = false;
+    static boolean debug;
+
+    // the value of the TCP_NODELAY socket-level option
+    static boolean noDelay;
 
     static {
+        java.security.AccessController.doPrivileged(
+            new PrivilegedAction<Void>() {
+                @Override
+                public Void run () {
+                    idleInterval = Long.getLong("sun.net.httpserver.idleInterval",
+                            DEFAULT_IDLE_INTERVAL) * 1000;
 
-        idleInterval = ((Long)java.security.AccessController.doPrivileged(
-                new sun.security.action.GetLongAction(
-                "sun.net.httpserver.idleInterval",
-                DEFAULT_IDLE_INTERVAL))).longValue() * 1000;
+                    clockTick = Integer.getInteger("sun.net.httpserver.clockTick",
+                            DEFAULT_CLOCK_TICK);
 
-        clockTick = ((Integer)java.security.AccessController.doPrivileged(
-                new sun.security.action.GetIntegerAction(
-                "sun.net.httpserver.clockTick",
-                DEFAULT_CLOCK_TICK))).intValue();
+                    maxIdleConnections = Integer.getInteger(
+                            "sun.net.httpserver.maxIdleConnections",
+                            DEFAULT_MAX_IDLE_CONNECTIONS);
 
-        maxIdleConnections = ((Integer)java.security.AccessController.doPrivileged(
-                new sun.security.action.GetIntegerAction(
-                "sun.net.httpserver.maxIdleConnections",
-                DEFAULT_MAX_IDLE_CONNECTIONS))).intValue();
+                    drainAmount = Long.getLong("sun.net.httpserver.drainAmount",
+                            DEFAULT_DRAIN_AMOUNT);
 
-        drainAmount = ((Long)java.security.AccessController.doPrivileged(
-                new sun.security.action.GetLongAction(
-                "sun.net.httpserver.drainAmount",
-                DEFAULT_DRAIN_AMOUNT))).longValue();
+                    maxReqTime = Long.getLong("sun.net.httpserver.maxReqTime",
+                            DEFAULT_MAX_REQ_TIME);
 
-        maxReqTime = ((Long)java.security.AccessController.doPrivileged(
-                new sun.security.action.GetLongAction(
-                "sun.net.httpserver.maxReqTime",
-                DEFAULT_MAX_REQ_TIME))).longValue();
+                    maxRspTime = Long.getLong("sun.net.httpserver.maxRspTime",
+                            DEFAULT_MAX_RSP_TIME);
 
-        maxRspTime = ((Long)java.security.AccessController.doPrivileged(
-                new sun.security.action.GetLongAction(
-                "sun.net.httpserver.maxRspTime",
-                DEFAULT_MAX_RSP_TIME))).longValue();
+                    timerMillis = Long.getLong("sun.net.httpserver.timerMillis",
+                            DEFAULT_TIMER_MILLIS);
 
-        timerMillis = ((Long)java.security.AccessController.doPrivileged(
-                new sun.security.action.GetLongAction(
-                "sun.net.httpserver.timerMillis",
-                DEFAULT_TIMER_MILLIS))).longValue();
+                    debug = Boolean.getBoolean("sun.net.httpserver.debug");
 
-        debug = ((Boolean)java.security.AccessController.doPrivileged(
-                new sun.security.action.GetBooleanAction(
-                "sun.net.httpserver.debug"))).booleanValue();
+                    noDelay = Boolean.getBoolean("sun.net.httpserver.nodelay");
+
+                    return null;
+                }
+            });
+
     }
 
 
@@ -172,4 +168,8 @@
     static long getTimerMillis () {
         return timerMillis;
     }
+
+    static boolean noDelay() {
+        return noDelay;
+    }
 }
--- a/src/share/classes/sun/net/httpserver/ServerImpl.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/net/httpserver/ServerImpl.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,8 +27,6 @@
 
 import java.net.*;
 import java.io.*;
-import java.nio.*;
-import java.security.*;
 import java.nio.channels.*;
 import java.util.*;
 import java.util.concurrent.*;
@@ -36,7 +34,6 @@
 import java.util.logging.Level;
 import javax.net.ssl.*;
 import com.sun.net.httpserver.*;
-import com.sun.net.httpserver.spi.*;
 import sun.net.httpserver.HttpConnection.State;
 
 /**
@@ -358,6 +355,12 @@
                                 continue;
                             }
                             SocketChannel chan = schan.accept();
+
+                            // Set TCP_NODELAY, if appropriate
+                            if (ServerConfig.noDelay()) {
+                                chan.socket().setTcpNoDelay(true);
+                            }
+
                             if (chan == null) {
                                 continue; /* cancel something ? */
                             }
--- a/src/share/classes/sun/net/www/http/HttpClient.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/net/www/http/HttpClient.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -599,7 +599,9 @@
             cachedHttpClient = false;
             if (!failedOnce && requests != null) {
                 failedOnce = true;
-                if (httpuc.getRequestMethod().equals("POST") && (!retryPostProp || streaming)) {
+                if (getRequestMethod().equals("CONNECT") ||
+                    (httpuc.getRequestMethod().equals("POST") &&
+                    (!retryPostProp || streaming))) {
                     // do not retry the request
                 }  else {
                     // try once more
@@ -706,7 +708,9 @@
             } else if (nread != 8) {
                 if (!failedOnce && requests != null) {
                     failedOnce = true;
-                    if (httpuc.getRequestMethod().equals("POST") && (!retryPostProp || streaming)) {
+                    if (getRequestMethod().equals("CONNECT") ||
+                        (httpuc.getRequestMethod().equals("POST") &&
+                        (!retryPostProp || streaming))) {
                         // do not retry the request
                     } else {
                         closeServer();
@@ -891,6 +895,16 @@
         return cacheRequest;
     }
 
+    String getRequestMethod() {
+        if (requests != null) {
+            String requestLine = requests.getKey(0);
+            if (requestLine != null) {
+                return requestLine.split("\\s+")[0];
+            }
+        }
+        return "";
+    }
+
     @Override
     protected void finalize() throws Throwable {
         // This should do nothing.  The stream finalizer will
--- a/src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1880,14 +1880,7 @@
     private void sendCONNECTRequest() throws IOException {
         int port = url.getPort();
 
-        // setRequests == true indicates the std. request headers
-        // have been set in (previous) requests.
-        // so the first one must be the http method (GET, etc.).
-        // we need to set it to CONNECT soon, remove this one first.
-        // otherwise, there may have 2 http methods in headers
-        if (setRequests) requests.set(0, null, null);
-
-        requests.prepend(HTTP_CONNECT + " " + connectRequestURI(url)
+        requests.set(0, HTTP_CONNECT + " " + connectRequestURI(url)
                          + " " + httpVersion, null);
         requests.setIfNotSet("User-Agent", userAgent);
 
@@ -1912,8 +1905,6 @@
         }
 
         http.writeRequests(requests, null);
-        // remove CONNECT header
-        requests.set(0, null, null);
     }
 
     /**
--- a/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java	Fri Sep 16 13:56:52 2011 -0400
@@ -179,7 +179,9 @@
 
                 public Charset next() {
                     String csn = i.next();
-                    return lookup(csn);
+                    synchronized (AbstractCharsetProvider.this) {
+                        return lookup(csn);
+                    }
                 }
 
                 public void remove() {
--- a/src/share/classes/sun/reflect/generics/parser/SignatureParser.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/reflect/generics/parser/SignatureParser.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,17 +25,15 @@
 
 package sun.reflect.generics.parser;
 
-
 import java.lang.reflect.GenericSignatureFormatError;
 import java.util.*;
 import sun.reflect.generics.tree.*;
 
-
 /**
  * Parser for type signatures, as defined in the Java Virtual
-// Machine Specification (JVMS) chapter 4.
+ * Machine Specification (JVMS) chapter 4.
  * Converts the signatures into an abstract syntax tree (AST) representation.
-// See the package sun.reflect.generics.tree for details of the AST.
+ * See the package sun.reflect.generics.tree for details of the AST.
  */
 public class SignatureParser {
     // The input is conceptually a character stream (though currently it's
@@ -58,8 +56,8 @@
     // if (current != x {error("expected an x");
     //
     // where x is some character constant.
-    // The assertion inidcates, that, as currently written,
-    // the code should nver reach this point unless the input is an
+    // The assertion indicates, that, as currently written,
+    // the code should never reach this point unless the input is an
     // x. On the other hand, the test is there to check the legality
     // of the input wrt to a given production. It may be that at a later
     // time the code might be called directly, and if the input is
@@ -68,7 +66,7 @@
 
     private char[] input; // the input signature
     private int index = 0; // index into the input
-// used to mark end of input
+    // used to mark end of input
     private static final char EOI = ':';
     private static final boolean DEBUG = false;
 
@@ -104,6 +102,11 @@
         index++;
     }
 
+    // For debugging, prints current character to the end of the input.
+    private String remainder() {
+        return new String(input, index, input.length-index);
+    }
+
     // Match c against a "set" of characters
     private boolean matches(char c, char... set) {
         for (char e : set) {
@@ -117,11 +120,22 @@
     // Currently throws a GenericSignatureFormatError.
 
     private Error error(String errorMsg) {
-        if (DEBUG) System.out.println("Parse error:" + errorMsg);
+        if (DEBUG)
+            System.out.println("Signature Parse error: " + errorMsg +
+                               "\n\tRemaining input: " + remainder());
         return new GenericSignatureFormatError();
     }
 
     /**
+     * Verify the parse has made forward progress; throw an exception
+     * if no progress.
+     */
+    private void progress(int startingPosition) {
+        if (index <= startingPosition)
+            throw error("Failure to make progress!");
+    }
+
+    /**
      * Static factory method. Produces a parser instance.
      * @return an instance of <tt>SignatureParser</tt>
      */
@@ -163,6 +177,7 @@
     /**
      * Parses a type signature
      * and produces an abstract syntax tree representing it.
+     *
      * @param s a string representing the input type signature
      * @return An abstract syntax tree for a type signature
      * corresponding to the input string
@@ -183,38 +198,58 @@
     // and when it completes parsing, it leaves the input at the first
     // character after the input parses.
 
-    // parse a class signature based on the implicit input.
+    /*
+     * Note on grammar conventions: a trailing "*" matches zero or
+     * more occurrences, a trailing "+" matches one or more occurrences,
+     * "_opt" indicates an optional component.
+     */
+
+    /**
+     * ClassSignature:
+     *     FormalTypeParameters_opt SuperclassSignature SuperinterfaceSignature*
+     */
     private ClassSignature parseClassSignature() {
+        // parse a class signature based on the implicit input.
         assert(index == 0);
         return ClassSignature.make(parseZeroOrMoreFormalTypeParameters(),
-                                   parseClassTypeSignature(),
+                                   parseClassTypeSignature(), // Only rule for SuperclassSignature
                                    parseSuperInterfaces());
     }
 
     private FormalTypeParameter[] parseZeroOrMoreFormalTypeParameters(){
-        if (current() == '<') { return parseFormalTypeParameters();}
-        else {return new FormalTypeParameter[0];}
+        if (current() == '<') {
+            return parseFormalTypeParameters();
+        } else {
+            return new FormalTypeParameter[0];
+        }
     }
 
-
+    /**
+     * FormalTypeParameters:
+     *     "<" FormalTypeParameter+ ">"
+     */
     private FormalTypeParameter[] parseFormalTypeParameters(){
-        Collection<FormalTypeParameter> ftps =
-            new ArrayList<FormalTypeParameter>(3);
+        List<FormalTypeParameter> ftps =  new ArrayList<>(3);
         assert(current() == '<'); // should not have been called at all
-        if (current() != '<') { throw error("expected <");}
+        if (current() != '<') { throw error("expected '<'");}
         advance();
         ftps.add(parseFormalTypeParameter());
         while (current() != '>') {
+            int startingPosition = index;
             ftps.add(parseFormalTypeParameter());
+            progress(startingPosition);
         }
         advance();
-        FormalTypeParameter[] ftpa = new FormalTypeParameter[ftps.size()];
-        return ftps.toArray(ftpa);
+        return ftps.toArray(new FormalTypeParameter[ftps.size()]);
     }
 
+    /**
+     * FormalTypeParameter:
+     *     Identifier ClassBound InterfaceBound*
+     */
     private FormalTypeParameter parseFormalTypeParameter(){
         String id = parseIdentifier();
-        FieldTypeSignature[] bs = parseZeroOrMoreBounds();
+        FieldTypeSignature[] bs = parseBounds();
         return FormalTypeParameter.make(id, bs);
     }
 
@@ -229,7 +264,8 @@
             case '[':
             case ':':
             case '>':
-            case '<': return result.toString();
+            case '<':
+                return result.toString();
             default:{
                 result.append(c);
                 advance();
@@ -239,26 +275,42 @@
         }
         return result.toString();
     }
+    /**
+     * FieldTypeSignature:
+     *     ClassTypeSignature
+     *     ArrayTypeSignature
+     *     TypeVariableSignature
+     */
+    private FieldTypeSignature parseFieldTypeSignature() {
+        return parseFieldTypeSignature(true);
+    }
 
-    private FieldTypeSignature parseFieldTypeSignature() {
+    private FieldTypeSignature parseFieldTypeSignature(boolean allowArrays) {
         switch(current()) {
         case 'L':
            return parseClassTypeSignature();
         case 'T':
             return parseTypeVariableSignature();
         case '[':
-            return parseArrayTypeSignature();
+            if (allowArrays)
+                return parseArrayTypeSignature();
+            else
+                throw error("Array signature not allowed here.");
         default: throw error("Expected Field Type Signature");
         }
     }
 
+    /**
+     * ClassTypeSignature:
+     *     "L" PackageSpecifier_opt SimpleClassTypeSignature ClassTypeSignatureSuffix* ";"
+     */
     private ClassTypeSignature parseClassTypeSignature(){
         assert(current() == 'L');
         if (current() != 'L') { throw error("expected a class type");}
         advance();
-        List<SimpleClassTypeSignature> scts =
-            new ArrayList<SimpleClassTypeSignature>(5);
-        scts.add(parseSimpleClassTypeSignature(false));
+        List<SimpleClassTypeSignature> scts = new ArrayList<>(5);
+        scts.add(parsePackageNameAndSimpleClassTypeSignature());
+
         parseClassTypeSignatureSuffix(scts);
         if (current() != ';')
             throw error("expected ';' got '" + current() + "'");
@@ -267,25 +319,65 @@
         return ClassTypeSignature.make(scts);
     }
 
-    private SimpleClassTypeSignature parseSimpleClassTypeSignature(boolean dollar){
-            String id = parseIdentifier();
-            char c = current();
-            switch (c) {
-            case ';':
-            case '/':
-                return SimpleClassTypeSignature.make(id, dollar, new TypeArgument[0]) ;
-            case '<': {
-                return SimpleClassTypeSignature.make(id, dollar, parseTypeArguments());
+    /**
+     * PackageSpecifier:
+     *     Identifier "/" PackageSpecifier*
+     */
+    private SimpleClassTypeSignature parsePackageNameAndSimpleClassTypeSignature() {
+        // Parse both any optional leading PackageSpecifier as well as
+        // the following SimpleClassTypeSignature.
+
+        String id = parseIdentifier();
+
+        if (current() == '/') { // package name
+            StringBuilder idBuild = new StringBuilder(id);
+
+            while(current() == '/') {
+                advance();
+                idBuild.append(".");
+                idBuild.append(parseIdentifier());
             }
-            default: {throw error("expected < or ; or /");}
-            }
+            id = idBuild.toString();
+        }
+
+        switch (current()) {
+        case ';':
+            return SimpleClassTypeSignature.make(id, false, new TypeArgument[0]); // all done!
+        case '<':
+            if (DEBUG) System.out.println("\t remainder: " + remainder());
+            return SimpleClassTypeSignature.make(id, false, parseTypeArguments());
+        default:
+            throw error("expected '<' or ';' but got " + current());
+        }
     }
 
+    /**
+     * SimpleClassTypeSignature:
+     *     Identifier TypeArguments_opt
+     */
+    private SimpleClassTypeSignature parseSimpleClassTypeSignature(boolean dollar){
+        String id = parseIdentifier();
+        char c = current();
+
+        switch (c) {
+        case ';':
+        case '.':
+            return SimpleClassTypeSignature.make(id, dollar, new TypeArgument[0]) ;
+        case '<':
+            return SimpleClassTypeSignature.make(id, dollar, parseTypeArguments());
+        default:
+            throw error("expected '<' or ';' or '.', got '" + c + "'.");
+        }
+    }
+
+    /**
+     * ClassTypeSignatureSuffix:
+     *     "." SimpleClassTypeSignature
+     */
     private void parseClassTypeSignatureSuffix(List<SimpleClassTypeSignature> scts) {
-        while (current() == '/' || current() == '.') {
-            boolean dollar = (current() == '.');
+        while (current() == '.') {
             advance();
-            scts.add(parseSimpleClassTypeSignature(dollar));
+            scts.add(parseSimpleClassTypeSignature(true));
         }
     }
 
@@ -294,10 +386,14 @@
         else {return new TypeArgument[0];}
     }
 
+    /**
+     * TypeArguments:
+     *     "<" TypeArgument+ ">"
+     */
     private TypeArgument[] parseTypeArguments() {
-        Collection<TypeArgument> tas = new ArrayList<TypeArgument>(3);
+        List<TypeArgument> tas = new ArrayList<>(3);
         assert(current() == '<');
-        if (current() != '<') { throw error("expected <");}
+        if (current() != '<') { throw error("expected '<'");}
         advance();
         tas.add(parseTypeArgument());
         while (current() != '>') {
@@ -305,10 +401,14 @@
             tas.add(parseTypeArgument());
         }
         advance();
-        TypeArgument[] taa = new TypeArgument[tas.size()];
-        return tas.toArray(taa);
+        return tas.toArray(new TypeArgument[tas.size()]);
     }
 
+    /**
+     * TypeArgument:
+     *     WildcardIndicator_opt FieldTypeSignature
+     *     "*"
+     */
     private TypeArgument parseTypeArgument() {
         FieldTypeSignature[] ub, lb;
         ub = new FieldTypeSignature[1];
@@ -334,18 +434,20 @@
             ub[0] = SimpleClassTypeSignature.make("java.lang.Object", false, ta);
             return Wildcard.make(ub, lb);
         }
-        default: return parseFieldTypeSignature();
+        default:
+            return parseFieldTypeSignature();
         }
     }
 
-    // TypeVariableSignature -> T identifier
-
-    private TypeVariableSignature parseTypeVariableSignature(){
+    /**
+     * TypeVariableSignature:
+     *     "T" Identifier ";"
+     */
+    private TypeVariableSignature parseTypeVariableSignature() {
         assert(current() == 'T');
         if (current() != 'T') { throw error("expected a type variable usage");}
         advance();
-        TypeVariableSignature ts =
-            TypeVariableSignature.make(parseIdentifier());
+        TypeVariableSignature ts = TypeVariableSignature.make(parseIdentifier());
         if (current() != ';') {
             throw error("; expected in signature of type variable named" +
                   ts.getIdentifier());
@@ -354,16 +456,21 @@
         return ts;
     }
 
-        // ArrayTypeSignature -> [ TypeSignature
-
+    /**
+     * ArrayTypeSignature:
+     *     "[" TypeSignature
+     */
     private ArrayTypeSignature parseArrayTypeSignature() {
         if (current() != '[') {throw error("expected array type signature");}
         advance();
         return ArrayTypeSignature.make(parseTypeSignature());
     }
 
-    // TypeSignature -> BaseType | FieldTypeSignature
-
+    /**
+     * TypeSignature:
+     *     FieldTypeSignature
+     *     BaseType
+     */
     private TypeSignature parseTypeSignature() {
         switch (current()) {
         case 'B':
@@ -373,8 +480,11 @@
         case 'I':
         case 'J':
         case 'S':
-        case 'Z':return parseBaseType();
-        default: return parseFieldTypeSignature();
+        case 'Z':
+            return parseBaseType();
+
+        default:
+            return parseFieldTypeSignature();
         }
     }
 
@@ -408,12 +518,18 @@
             assert(false);
             throw error("expected primitive type");
         }
-    }
+        }
     }
 
-    private FieldTypeSignature[] parseZeroOrMoreBounds() {
-        Collection<FieldTypeSignature> fts =
-            new ArrayList<FieldTypeSignature>(3);
+    /**
+     * ClassBound:
+     *     ":" FieldTypeSignature_opt
+     *
+     * InterfaceBound:
+     *     ":" FieldTypeSignature
+     */
+    private FieldTypeSignature[] parseBounds() {
+        List<FieldTypeSignature> fts = new ArrayList<>(3);
 
         if (current() == ':') {
             advance();
@@ -430,24 +546,31 @@
                 advance();
                 fts.add(parseFieldTypeSignature());
             }
-        }
+        } else
+            error("Bound expected");
 
-        FieldTypeSignature[] fta = new FieldTypeSignature[fts.size()];
-        return fts.toArray(fta);
+        return fts.toArray(new FieldTypeSignature[fts.size()]);
     }
 
+    /**
+     * SuperclassSignature:
+     *     ClassTypeSignature
+     */
     private ClassTypeSignature[] parseSuperInterfaces() {
-        Collection<ClassTypeSignature> cts =
-            new ArrayList<ClassTypeSignature>(5);
+        List<ClassTypeSignature> cts = new ArrayList<>(5);
         while(current() == 'L') {
             cts.add(parseClassTypeSignature());
         }
-        ClassTypeSignature[] cta = new ClassTypeSignature[cts.size()];
-        return cts.toArray(cta);
+        return cts.toArray(new ClassTypeSignature[cts.size()]);
     }
 
-    // parse a method signature based on the implicit input.
+
+    /**
+     * MethodTypeSignature:
+     *     FormalTypeParameters_opt "(" TypeSignature* ")" ReturnType ThrowsSignature*
+     */
     private MethodTypeSignature parseMethodTypeSignature() {
+        // Parse a method signature based on the implicit input.
         FieldTypeSignature[] ets;
 
         assert(index == 0);
@@ -457,19 +580,19 @@
                                         parseZeroOrMoreThrowsSignatures());
     }
 
-    // (TypeSignature*)
+    // "(" TypeSignature* ")"
     private TypeSignature[] parseFormalParameters() {
-        if (current() != '(') {throw error("expected (");}
+        if (current() != '(') {throw error("expected '('");}
         advance();
         TypeSignature[] pts = parseZeroOrMoreTypeSignatures();
-        if (current() != ')') {throw error("expected )");}
+        if (current() != ')') {throw error("expected ')'");}
         advance();
         return pts;
     }
 
-        // TypeSignature*
+    // TypeSignature*
     private TypeSignature[] parseZeroOrMoreTypeSignatures() {
-        Collection<TypeSignature> ts = new ArrayList<TypeSignature>();
+        List<TypeSignature> ts = new ArrayList<>();
         boolean stop = false;
         while (!stop) {
             switch(current()) {
@@ -484,47 +607,46 @@
             case 'L':
             case 'T':
             case '[': {
-                    ts.add(parseTypeSignature());
-                    break;
-                }
+                ts.add(parseTypeSignature());
+                break;
+            }
             default: stop = true;
             }
         }
-        /*      while( matches(current(),
-                       'B', 'C', 'D', 'F', 'I', 'J', 'S', 'Z', 'L', 'T', '[')
-               ) {
-            ts.add(parseTypeSignature());
-            }*/
-        TypeSignature[] ta = new TypeSignature[ts.size()];
-        return ts.toArray(ta);
+        return ts.toArray(new TypeSignature[ts.size()]);
     }
 
-    // ReturnType -> V | TypeSignature
-
+    /**
+     * ReturnType:
+     *     TypeSignature
+     *     VoidDescriptor
+     */
     private ReturnType parseReturnType(){
-        if  (current() == 'V') {
+        if (current() == 'V') {
             advance();
             return VoidDescriptor.make();
-        } else return parseTypeSignature();
+        } else
+            return parseTypeSignature();
     }
 
     // ThrowSignature*
     private FieldTypeSignature[] parseZeroOrMoreThrowsSignatures(){
-        Collection<FieldTypeSignature> ets =
-            new ArrayList<FieldTypeSignature>(3);
+        List<FieldTypeSignature> ets = new ArrayList<>(3);
         while( current() == '^') {
             ets.add(parseThrowsSignature());
         }
-        FieldTypeSignature[] eta = new FieldTypeSignature[ets.size()];
-        return ets.toArray(eta);
+        return ets.toArray(new FieldTypeSignature[ets.size()]);
     }
 
-    // ThrowSignature -> ^ FieldTypeSignature
-
+    /**
+     * ThrowsSignature:
+     *     "^" ClassTypeSignature
+     *     "^" TypeVariableSignature
+     */
     private FieldTypeSignature parseThrowsSignature() {
         assert(current() == '^');
         if (current() != '^') { throw error("expected throws signature");}
         advance();
-        return parseFieldTypeSignature();
+        return parseFieldTypeSignature(false);
     }
  }
--- a/src/share/classes/sun/security/krb5/EncryptionKey.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/krb5/EncryptionKey.java	Fri Sep 16 13:56:52 2011 -0400
@@ -151,11 +151,36 @@
     }
 
     /**
+     * Obtains a key for a given etype of a principal with possible new salt
+     * and s2kparams
+     * @param cname NOT null
+     * @param password NOT null
+     * @param etype
+     * @param snp can be NULL
+     * @returns never null
+     */
+    public static EncryptionKey acquireSecretKey(PrincipalName cname,
+            char[] password, int etype, PAData.SaltAndParams snp)
+            throws KrbException {
+        String salt;
+        byte[] s2kparams;
+        if (snp != null) {
+            salt = snp.salt != null ? snp.salt : cname.getSalt();
+            s2kparams = snp.params;
+        } else {
+            salt = cname.getSalt();
+            s2kparams = null;
+        }
+        return acquireSecretKey(password, salt, etype, s2kparams);
+    }
+
+    /**
      * Obtains a key for a given etype with salt and optional s2kparams
      * @param password NOT null
      * @param salt NOT null
      * @param etype
      * @param s2kparams can be NULL
+     * @returns never null
      */
     public static EncryptionKey acquireSecretKey(char[] password,
             String salt, int etype, byte[] s2kparams)
--- a/src/share/classes/sun/security/krb5/KrbAsRep.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/krb5/KrbAsRep.java	Fri Sep 16 13:56:52 2011 -0400
@@ -131,13 +131,11 @@
             KrbAsReq asReq, PrincipalName cname)
             throws KrbException, Asn1Exception, IOException {
         int encPartKeyType = rep.encPart.getEType();
-        PAData.SaltAndParams snp =
-                PAData.getSaltAndParams(encPartKeyType, rep.pAData);
-        EncryptionKey dkey = null;
-        dkey = EncryptionKey.acquireSecretKey(password,
-                snp.salt == null ? cname.getSalt() : snp.salt,
+        EncryptionKey dkey = EncryptionKey.acquireSecretKey(
+                cname,
+                password,
                 encPartKeyType,
-                snp.params);
+                PAData.getSaltAndParams(encPartKeyType, rep.pAData));
         decrypt(dkey, asReq);
     }
 
--- a/src/share/classes/sun/security/krb5/KrbAsReqBuilder.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/krb5/KrbAsReqBuilder.java	Fri Sep 16 13:56:52 2011 -0400
@@ -169,34 +169,44 @@
              * from a keytab on acceptor, but unfortunately (?) Java supports
              * acceptor using password. In this case, if the service ticket is
              * encrypted using an etype which we don't have PA-DATA new salt,
-             * using the default salt is normally wrong (say, case-insensitive
+             * using the default salt might be wrong (say, case-insensitive
              * user name). Instead, we would use the new salt of another etype.
              */
 
             String salt = null;     // the saved new salt
-            for (int i=0; i<eTypes.length; i++) {
-                PAData.SaltAndParams snp =
-                        PAData.getSaltAndParams(eTypes[i], paList);
-                // First round, only calculate those with new salt
-                if (snp.salt != null) {
-                    salt = snp.salt;
-                    result[i] = EncryptionKey.acquireSecretKey(password,
-                            snp.salt,
-                            eTypes[i],
-                            snp.params);
-                }
-            }
-            if (salt == null) salt = cname.getSalt();
-            for (int i=0; i<eTypes.length; i++) {
-                // Second round, calculate those with no new salt
-                if (result[i] == null) {
+            try {
+                for (int i=0; i<eTypes.length; i++) {
+                    // First round, only calculate those have a PA entry
                     PAData.SaltAndParams snp =
                             PAData.getSaltAndParams(eTypes[i], paList);
-                    result[i] = EncryptionKey.acquireSecretKey(password,
-                            salt,
-                            eTypes[i],
-                            snp.params);
+                    if (snp != null) {
+                        // Never uses a salt for rc4-hmac, it does not use
+                        // a salt at all
+                        if (eTypes[i] != EncryptedData.ETYPE_ARCFOUR_HMAC &&
+                                snp.salt != null) {
+                            salt = snp.salt;
+                        }
+                        result[i] = EncryptionKey.acquireSecretKey(cname,
+                                password,
+                                eTypes[i],
+                                snp);
+                    }
                 }
+                // No new salt from PA, maybe empty, maybe only rc4-hmac
+                if (salt == null) salt = cname.getSalt();
+                for (int i=0; i<eTypes.length; i++) {
+                    // Second round, calculate those with no PA entry
+                    if (result[i] == null) {
+                        result[i] = EncryptionKey.acquireSecretKey(password,
+                                salt,
+                                eTypes[i],
+                                null);
+                    }
+                }
+            } catch (IOException ioe) {
+                KrbException ke = new KrbException(Krb5.ASN1_PARSE_ERROR);
+                ke.initCause(ioe);
+                throw ke;
             }
             return result;
         } else {
@@ -315,27 +325,19 @@
                     }
                     preAuthFailedOnce = true;
                     KRBError kerr = ke.getError();
+                    int paEType = PAData.getPreferredEType(kerr.getPA(),
+                            EType.getDefaults("default_tkt_enctypes")[0]);
                     if (password == null) {
                         EncryptionKey[] ks = Krb5Util.keysFromJavaxKeyTab(ktab, cname);
-                        pakey = EncryptionKey.findKey(kerr.getEType(), ks);
+                        pakey = EncryptionKey.findKey(paEType, ks);
                         if (pakey != null) pakey = (EncryptionKey)pakey.clone();
                         for (EncryptionKey k: ks) k.destroy();
                     } else {
-                        PAData.SaltAndParams snp = PAData.getSaltAndParams(
-                                kerr.getEType(), kerr.getPA());
-                        if (kerr.getEType() == 0) {
-                            // Possible if PA-PW-SALT is in KRB-ERROR. RFC
-                            // does not recommend this
-                            pakey = EncryptionKey.acquireSecretKey(password,
-                                    snp.salt == null ? cname.getSalt() : snp.salt,
-                                    EType.getDefaults("default_tkt_enctypes")[0],
-                                    null);
-                        } else {
-                            pakey = EncryptionKey.acquireSecretKey(password,
-                                    snp.salt == null ? cname.getSalt() : snp.salt,
-                                    kerr.getEType(),
-                                    snp.params);
-                        }
+                        pakey = EncryptionKey.acquireSecretKey(cname,
+                                password,
+                                paEType,
+                                PAData.getSaltAndParams(
+                                    paEType, kerr.getPA()));
                     }
                     paList = kerr.getPA();  // Update current paList
                 } else {
--- a/src/share/classes/sun/security/krb5/internal/KRBError.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/krb5/internal/KRBError.java	Fri Sep 16 13:56:52 2011 -0400
@@ -99,7 +99,6 @@
     private Checksum eCksum; //optional
 
     private PAData[] pa;    // PA-DATA in eData
-    private int pa_eType;   // The 1st etype appeared in salt-related PAData
 
     private static boolean DEBUG = Krb5.DEBUG;
 
@@ -266,50 +265,8 @@
             DerValue tmp = derPA.data.getDerValue();
             PAData pa_data = new PAData(tmp);
             paList.add(pa_data);
-            int pa_type = pa_data.getType();
-            byte[] pa_value = pa_data.getValue();
             if (DEBUG) {
-                System.out.println(">>>Pre-Authentication Data:");
-                System.out.println("\t PA-DATA type = " + pa_type);
-            }
-
-            switch(pa_type) {
-                case Krb5.PA_ENC_TIMESTAMP:
-                    if (DEBUG) {
-                        System.out.println("\t PA-ENC-TIMESTAMP");
-                    }
-                    break;
-                case Krb5.PA_ETYPE_INFO:
-                    if (pa_value != null) {
-                        DerValue der = new DerValue(pa_value);
-                        while (der.data.available() > 0) {
-                            DerValue value = der.data.getDerValue();
-                            ETypeInfo info = new ETypeInfo(value);
-                            if (pa_eType == 0) pa_eType = info.getEType();
-                            if (DEBUG) {
-                                System.out.println("\t PA-ETYPE-INFO etype = " + info.getEType());
-                                System.out.println("\t PA-ETYPE-INFO salt = " + info.getSalt());
-                            }
-                        }
-                    }
-                    break;
-                case Krb5.PA_ETYPE_INFO2:
-                    if (pa_value != null) {
-                        DerValue der = new DerValue(pa_value);
-                        while (der.data.available() > 0) {
-                            DerValue value = der.data.getDerValue();
-                            ETypeInfo2 info2 = new ETypeInfo2(value);
-                            if (pa_eType == 0) pa_eType = info2.getEType();
-                            if (DEBUG) {
-                                System.out.println("\t PA-ETYPE-INFO2 etype = " + info2.getEType());
-                                System.out.println("\t PA-ETYPE-INFO2 salt = " + info2.getSalt());
-                            }
-                        }
-                    }
-                    break;
-                default:
-                    // Unknown Pre-auth type
-                    break;
+                System.out.println(pa_data);
             }
         }
         pa = paList.toArray(new PAData[paList.size()]);
@@ -340,10 +297,6 @@
         return pa;
     }
 
-    public final int getEType() {
-        return pa_eType;
-    }
-
     public final String getErrorString() {
         return eText;
     }
--- a/src/share/classes/sun/security/krb5/internal/PAData.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/krb5/internal/PAData.java	Fri Sep 16 13:56:52 2011 -0400
@@ -139,9 +139,56 @@
     }
 
     /**
+     * Gets the preferred etype from the PAData array.
+     * 1. ETYPE-INFO2-ENTRY with unknown s2kparams ignored
+     * 2. ETYPE-INFO2 preferred to ETYPE-INFO
+     * 3. multiple entries for same etype in one PA-DATA, use the first one.
+     * 4. Multiple PA-DATA with same type, choose the last one
+     * (This is useful when PA-DATAs from KRB-ERROR and AS-REP are combined).
+     * @return the etype, or defaultEType if not enough info
+     * @throws Asn1Exception|IOException if there is an encoding error
+     */
+    public static int getPreferredEType(PAData[] pas, int defaultEType)
+            throws IOException, Asn1Exception {
+
+        if (pas == null) return defaultEType;
+
+        DerValue d = null, d2 = null;
+        for (PAData p: pas) {
+            if (p.getValue() == null) continue;
+            switch (p.getType()) {
+                case Krb5.PA_ETYPE_INFO:
+                    d = new DerValue(p.getValue());
+                    break;
+                case Krb5.PA_ETYPE_INFO2:
+                    d2 = new DerValue(p.getValue());
+                    break;
+            }
+        }
+        if (d2 != null) {
+            while (d2.data.available() > 0) {
+                DerValue value = d2.data.getDerValue();
+                ETypeInfo2 tmp = new ETypeInfo2(value);
+                if (tmp.getParams() == null) {
+                    // we don't support non-null s2kparams
+                    return tmp.getEType();
+                }
+            }
+        }
+        if (d != null) {
+            while (d.data.available() > 0) {
+                DerValue value = d.data.getDerValue();
+                ETypeInfo tmp = new ETypeInfo(value);
+                return tmp.getEType();
+            }
+        }
+        return defaultEType;
+    }
+
+    /**
      * A place to store a pair of salt and s2kparams.
-     * An empty salt is changed to null, to be interopable
-     * with Windows 2000 server.
+     * An empty salt is changed to null, to be interoperable
+     * with Windows 2000 server. This is in fact not correct.
      */
     public static class SaltAndParams {
         public final String salt;
@@ -155,57 +202,120 @@
 
     /**
      * Fetches salt and s2kparams value for eType in a series of PA-DATAs.
-     * The preference order is PA-ETYPE-INFO2 > PA-ETYPE-INFO > PA-PW-SALT.
-     * If multiple PA-DATA for the same etype appears, use the last one.
+     * 1. ETYPE-INFO2-ENTRY with unknown s2kparams ignored
+     * 2. PA-ETYPE-INFO2 preferred to PA-ETYPE-INFO preferred to PA-PW-SALT.
+     * 3. multiple entries for same etype in one PA-DATA, use the first one.
+     * 4. Multiple PA-DATA with same type, choose the last one
      * (This is useful when PA-DATAs from KRB-ERROR and AS-REP are combined).
-     * @return salt and s2kparams. never null, its field might be null.
+     * @return salt and s2kparams. can be null if not found
      */
     public static SaltAndParams getSaltAndParams(int eType, PAData[] pas)
-            throws Asn1Exception, KrbException {
+            throws Asn1Exception, IOException {
 
-        if (pas == null || pas.length == 0) {
-            return new SaltAndParams(null, null);
-        }
+        if (pas == null) return null;
 
+        DerValue d = null, d2 = null;
         String paPwSalt = null;
-        ETypeInfo2 info2 = null;
-        ETypeInfo info = null;
 
         for (PAData p: pas) {
-            if (p.getValue() != null) {
-                try {
-                    switch (p.getType()) {
-                        case Krb5.PA_PW_SALT:
-                            paPwSalt = new String(p.getValue(),
-                                    KerberosString.MSNAME?"UTF8":"8859_1");
-                            break;
-                        case Krb5.PA_ETYPE_INFO:
-                            DerValue der = new DerValue(p.getValue());
-                            while (der.data.available() > 0) {
-                                DerValue value = der.data.getDerValue();
-                                ETypeInfo tmp = new ETypeInfo(value);
-                                if (tmp.getEType() == eType) info = tmp;
-                            }
-                            break;
-                        case Krb5.PA_ETYPE_INFO2:
-                            der = new DerValue(p.getValue());
-                            while (der.data.available() > 0) {
-                                DerValue value = der.data.getDerValue();
-                                ETypeInfo2 tmp = new ETypeInfo2(value);
-                                if (tmp.getEType() == eType) info2 = tmp;
-                            }
-                            break;
-                    }
-                } catch (IOException ioe) {
-                    // Ignored
+            if (p.getValue() == null) continue;
+            switch (p.getType()) {
+                case Krb5.PA_PW_SALT:
+                    paPwSalt = new String(p.getValue(),
+                            KerberosString.MSNAME?"UTF8":"8859_1");
+                    break;
+                case Krb5.PA_ETYPE_INFO:
+                    d = new DerValue(p.getValue());
+                    break;
+                case Krb5.PA_ETYPE_INFO2:
+                    d2 = new DerValue(p.getValue());
+                    break;
+            }
+        }
+        if (d2 != null) {
+            while (d2.data.available() > 0) {
+                DerValue value = d2.data.getDerValue();
+                ETypeInfo2 tmp = new ETypeInfo2(value);
+                if (tmp.getParams() == null && tmp.getEType() == eType) {
+                    // we don't support non-null s2kparams
+                    return new SaltAndParams(tmp.getSalt(), tmp.getParams());
                 }
             }
         }
-        if (info2 != null) {
-            return new SaltAndParams(info2.getSalt(), info2.getParams());
-        } else if (info != null) {
-            return new SaltAndParams(info.getSalt(), null);
+        if (d != null) {
+            while (d.data.available() > 0) {
+                DerValue value = d.data.getDerValue();
+                ETypeInfo tmp = new ETypeInfo(value);
+                if (tmp.getEType() == eType) {
+                    return new SaltAndParams(tmp.getSalt(), null);
+                }
+            }
         }
-        return new SaltAndParams(paPwSalt, null);
+        if (paPwSalt != null) {
+            return new SaltAndParams(paPwSalt, null);
+        }
+        return null;
+    }
+
+    @Override
+    public String toString(){
+        StringBuilder sb = new StringBuilder();
+        sb.append(">>>Pre-Authentication Data:\n\t PA-DATA type = ")
+                .append(pADataType).append('\n');
+
+        switch(pADataType) {
+            case Krb5.PA_ENC_TIMESTAMP:
+                sb.append("\t PA-ENC-TIMESTAMP");
+                break;
+            case Krb5.PA_ETYPE_INFO:
+                if (pADataValue != null) {
+                    try {
+                        DerValue der = new DerValue(pADataValue);
+                        while (der.data.available() > 0) {
+                            DerValue value = der.data.getDerValue();
+                            ETypeInfo info = new ETypeInfo(value);
+                            sb.append("\t PA-ETYPE-INFO etype = ")
+                                    .append(info.getEType())
+                                    .append(", salt = ")
+                                    .append(info.getSalt())
+                                    .append('\n');
+                        }
+                    } catch (IOException|Asn1Exception e) {
+                        sb.append("\t <Unparseable PA-ETYPE-INFO>\n");
+                    }
+                }
+                break;
+            case Krb5.PA_ETYPE_INFO2:
+                if (pADataValue != null) {
+                    try {
+                        DerValue der = new DerValue(pADataValue);
+                        while (der.data.available() > 0) {
+                            DerValue value = der.data.getDerValue();
+                            ETypeInfo2 info2 = new ETypeInfo2(value);
+                            sb.append("\t PA-ETYPE-INFO2 etype = ")
+                                    .append(info2.getEType())
+                                    .append(", salt = ")
+                                    .append(info2.getSalt())
+                                    .append(", s2kparams = ");
+                            byte[] s2kparams = info2.getParams();
+                            if (s2kparams == null) {
+                                sb.append("null\n");
+                            } else if (s2kparams.length == 0) {
+                                sb.append("empty\n");
+                            } else {
+                                sb.append(new sun.misc.HexDumpEncoder()
+                                        .encodeBuffer(s2kparams));
+                            }
+                        }
+                    } catch (IOException|Asn1Exception e) {
+                        sb.append("\t <Unparseable PA-ETYPE-INFO>\n");
+                    }
+                }
+                break;
+            default:
+                // Unknown Pre-auth type
+                break;
+        }
+        return sb.toString();
     }
 }
--- a/src/share/classes/sun/security/pkcs11/P11ECKeyFactory.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/pkcs11/P11ECKeyFactory.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -203,9 +203,11 @@
 
     private PublicKey generatePublic(ECPoint point, ECParameterSpec params) throws PKCS11Exception {
         byte[] encodedParams = ECParameters.encodeParameters(params);
+        byte[] rawPoint = ECParameters.encodePoint(point, params.getCurve());
         byte[] encodedPoint = null;
-        DerValue pkECPoint = new DerValue(DerValue.tag_OctetString,
-            ECParameters.encodePoint(point, params.getCurve()));
+
+        // Wrap the EC point in a DER OCTET STRING
+        DerValue pkECPoint = new DerValue(DerValue.tag_OctetString, rawPoint);
 
         try {
             encodedPoint = pkECPoint.toByteArray();
@@ -221,6 +223,26 @@
         };
         attributes = token.getAttributes
                 (O_IMPORT, CKO_PUBLIC_KEY, CKK_EC, attributes);
+
+        // Check whether DER-encoded EC points are supported by the PKCS11 token
+        // (Some tokens support only the raw encoding for an EC point.)
+        for (int i = 0; i < attributes.length; i++) {
+            if (attributes[i].type == CKA_ENABLE_RAW_EC_POINT &&
+                attributes[i].getBoolean()) {
+                // Must use the raw encoding for the EC point
+                for (int j = 0; j < attributes.length; j++) {
+                    if (attributes[j].type == CKA_EC_POINT) {
+                        attributes[j].pValue = rawPoint;
+                        // Overwrite the CKA_ENABLE_RAW_EC_POINT attribute too
+                        attributes[i].type = CKA_EC_POINT;
+                        attributes[i].pValue = rawPoint;
+                        break;
+                    }
+                }
+                break;
+            }
+        }
+
         Session session = null;
         try {
             session = token.getObjSession();
--- a/src/share/classes/sun/security/pkcs11/Session.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/pkcs11/Session.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -87,7 +87,7 @@
     }
 
     long id() {
-        if (token.isPresent(this) == false) {
+        if (token.isPresent(this.id) == false) {
             throw new ProviderException("Token has been removed");
         }
         lastAccess = System.currentTimeMillis();
@@ -167,7 +167,9 @@
     void dispose() {
         refList.remove(this);
         try {
-            token.p11.C_CloseSession(id);
+            if (token.isPresent(id)) {
+                token.p11.C_CloseSession(id);
+            }
         } catch (PKCS11Exception e1) {
             // ignore
         } catch (ProviderException e2) {
--- a/src/share/classes/sun/security/pkcs11/Token.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/pkcs11/Token.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -217,7 +217,7 @@
 
     // return whether a token is present (i.e. token not removed)
     // returns cached value if current, otherwise performs new check
-    boolean isPresent(Session session) {
+    boolean isPresent(long sessionID) {
         if (removable == false) {
             return true;
         }
@@ -238,7 +238,7 @@
                             // the token should return an error
                             CK_SESSION_INFO sessInfo =
                                     provider.p11.C_GetSessionInfo
-                                    (session.idInternal());
+                                    (sessionID);
                             ok = true;
                         }
                     } catch (PKCS11Exception e) {
--- a/src/share/classes/sun/security/pkcs11/wrapper/Functions.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/pkcs11/wrapper/Functions.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
  */
 
 /* Copyright  (c) 2002 Graz University of Technology. All rights reserved.
@@ -885,6 +885,7 @@
         addAttribute(CKA_MODIFIABLE,            "CKA_MODIFIABLE");
         addAttribute(CKA_EC_PARAMS,             "CKA_EC_PARAMS");
         addAttribute(CKA_EC_POINT,              "CKA_EC_POINT");
+        addAttribute(CKA_ENABLE_RAW_EC_POINT,   "CKA_ENABLE_RAW_EC_POINT");
         addAttribute(CKA_SECONDARY_AUTH,        "CKA_SECONDARY_AUTH");
         addAttribute(CKA_AUTH_PIN_FLAGS,        "CKA_AUTH_PIN_FLAGS");
         addAttribute(CKA_HW_FEATURE_TYPE,       "CKA_HW_FEATURE_TYPE");
--- a/src/share/classes/sun/security/pkcs11/wrapper/PKCS11Constants.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/pkcs11/wrapper/PKCS11Constants.java	Fri Sep 16 13:56:52 2011 -0400
@@ -413,6 +413,9 @@
 
     public static final long  CKA_VENDOR_DEFINED     = 0x80000000L;
 
+    /* Only the raw encoding for an EC point is supported */
+    public static final long CKA_ENABLE_RAW_EC_POINT = (CKA_VENDOR_DEFINED | 1);
+
     /* the following mechanism types are defined: */
     public static final long  CKM_RSA_PKCS_KEY_PAIR_GEN      = 0x00000000L;
     public static final long  CKM_RSA_PKCS                   = 0x00000001L;
--- a/src/share/classes/sun/security/smartcardio/TerminalImpl.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/smartcardio/TerminalImpl.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -112,14 +112,17 @@
             if (wantPresent == present) {
                 return true;
             }
-            // no match, wait
-            status = SCardGetStatusChange(contextId, timeout, status, readers);
-            present = (status[0] & SCARD_STATE_PRESENT) != 0;
-            // should never happen
-            if (wantPresent != present) {
-                throw new CardException("wait mismatch");
+            // no match, wait (until timeout expires)
+            long end = System.currentTimeMillis() + timeout;
+            while (wantPresent != present && timeout != 0) {
+              // set remaining timeout
+              if (timeout != TIMEOUT_INFINITE) {
+                timeout = Math.max(end - System.currentTimeMillis(), 0l);
+              }
+              status = SCardGetStatusChange(contextId, timeout, status, readers);
+              present = (status[0] & SCARD_STATE_PRESENT) != 0;
             }
-            return true;
+            return wantPresent == present;
         } catch (PCSCException e) {
             if (e.code == SCARD_E_TIMEOUT) {
                 return false;
--- a/src/share/classes/sun/security/x509/AVA.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/security/x509/AVA.java	Fri Sep 16 13:56:52 2011 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1080,8 +1080,17 @@
                  * to need quoting, or at least escaping.  So do leading or
                  * trailing spaces, and multiple internal spaces.
                  */
-                for (int i = 0; i < valStr.length(); i++) {
+                int length = valStr.length();
+                boolean alreadyQuoted =
+                    (length > 1 && valStr.charAt(0) == '\"'
+                     && valStr.charAt(length - 1) == '\"');
+
+                for (int i = 0; i < length; i++) {
                     char c = valStr.charAt(i);
+                    if (alreadyQuoted && (i == 0 || i == length - 1)) {
+                        sbuffer.append(c);
+                        continue;
+                    }
                     if (DerValue.isPrintableStringChar(c) ||
                         escapees.indexOf(c) >= 0) {
 
@@ -1145,7 +1154,8 @@
                 }
 
                 // Emit the string ... quote it if needed
-                if (quoteNeeded) {
+                // if string is already quoted, don't re-quote
+                if (!alreadyQuoted && quoteNeeded) {
                     retval.append("\"" + sbuffer.toString() + "\"");
                 } else {
                     retval.append(sbuffer.toString());
--- a/src/share/classes/sun/text/bidi/BidiBase.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/text/bidi/BidiBase.java	Fri Sep 16 13:56:52 2011 -0400
@@ -2690,6 +2690,7 @@
     public void setPara(AttributedCharacterIterator paragraph)
     {
         byte paraLvl;
+        char ch = paragraph.first();
         Boolean runDirection =
             (Boolean) paragraph.getAttribute(TextAttributeConstants.RUN_DIRECTION);
         Object shaper = paragraph.getAttribute(TextAttributeConstants.NUMERIC_SHAPING);
@@ -2705,7 +2706,6 @@
         byte[] embeddingLevels = new byte[len];
         char[] txt = new char[len];
         int i = 0;
-        char ch = paragraph.first();
         while (ch != AttributedCharacterIterator.DONE) {
             txt[i] = ch;
             Integer embedding =
--- a/src/share/classes/sun/util/resources/TimeZoneNames.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Pacific Standard Time", "PST",
                                      "Pacific Daylight Time", "PDT"};
-        String RST[] = new String[] {"Eastern Standard Time", "EST",
-                                     "Central Daylight Time", "CDT"};
         String SAST[] = new String[] {"South Africa Standard Time", "SAST",
                                       "South Africa Summer Time", "SAST"};
         String SBT[] = new String[] {"Solomon Is. Time", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Bolivia Time", "BOT",
                                              "Bolivia Summer Time", "BOST"}},
             {"America/Lima", new String[] {"Peru Time", "PET",
                                            "Peru Summer Time", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_de.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_de.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Pazifische Normalzeit", "PST",
                                      "Pazifische Sommerzeit", "PDT"};
-        String RST[] = new String[] {"\u00d6stliche Normalzeit", "EST",
-                                     "Zentrale Sommerzeit", "CDT"};
         String SAST[] = new String[] {"S\u00fcdafrikanische Normalzeit", "SAST",
                                       "S\u00fcdafrikanische Sommerzeit", "SAST"};
         String SBT[] = new String[] {"Salomoninseln Zeit", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Bolivianische Zeit", "BOT",
                                              "Bolivianische Sommerzeit", "BOST"}},
             {"America/Lima", new String[] {"Peruanische Zeit", "PET",
                                            "Peruanische Sommerzeit", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_es.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_es.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Hora est\u00e1ndar del Pac\u00edfico", "PST",
                                      "Hora de verano del Pac\u00edfico", "PDT"};
-        String RST[] = new String[] {"Hora est\u00e1ndar Oriental", "EST",
-                                     "Hora de verano Central", "CDT"};
         String SAST[] = new String[] {"Hora est\u00e1ndar de Sud\u00e1frica", "SAST",
                                       "Hora de verano de Sud\u00e1frica", "SAST"};
         String SBT[] = new String[] {"Hora de las Islas Solomon", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Hora de Bolivia", "BOT",
                                              "Hora de verano de Bolivia", "BOST"}},
             {"America/Lima", new String[] {"Hora de Per\u00fa", "PET",
                                            "Hora de verano de Per\u00fa", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_fr.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_fr.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Heure normale du Pacifique", "PST",
                                      "Heure avanc\u00e9e du Pacifique", "PDT"} ;
-        String RST[] = new String[] {"Heure normale de l'Est", "EST",
-                                     "Heure avanc\u00e9e du Centre", "CDT"} ;
         String SAST[] = new String[] {"Heure normale d'Afrique du Sud", "SAST",
                                       "Heure d'\u00e9t\u00e9 d'Afrique du Sud", "SAST"} ;
         String SBT[] = new String[] {"Heure des \u00celes Salomon", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Heure de Bolivie", "BOT",
                                              "Heure d'\u00e9t\u00e9 de Bolivie", "BOST"}},
             {"America/Lima", new String[] {"Heure du P\u00e9rou", "PET",
                                            "Heure d'\u00e9t\u00e9 du P\u00e9rou", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_it.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_it.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Ora solare della costa occidentale USA", "PST",
                                      "Ora legale della costa occidentale USA", "PDT"};
-        String RST[] = new String[] {"Ora solare USA orientale", "EST",
-                                     "Ora legale USA centrale", "CDT"};
         String SAST[] = new String[] {"Ora solare del Sudafrica", "SAST",
                                       "Ora estiva del Sudafrica", "SAST"};
         String SBT[] = new String[] {"Ora delle Isole Salomone", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Ora della Bolivia", "BOT",
                                              "Ora estiva della Bolivia", "BOST"}},
             {"America/Lima", new String[] {"Ora del Per\u00f9", "PET",
                                            "Ora estiva del Per\u00f9", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_ja.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_ja.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"\u592a\u5e73\u6d0b\u6a19\u6e96\u6642", "PST",
                                      "\u592a\u5e73\u6d0b\u590f\u6642\u9593", "PDT"};
-        String RST[] = new String[] {"\u6771\u90e8\u6a19\u6e96\u6642", "EST",
-                                     "\u4e2d\u90e8\u590f\u6642\u9593", "CDT"};
         String SAST[] = new String[] {"\u5357\u30a2\u30d5\u30ea\u30ab\u6a19\u6e96\u6642", "SAST",
                                       "\u5357\u30a2\u30d5\u30ea\u30ab\u590f\u6642\u9593", "SAST"};
         String SBT[] = new String[] {"\u30bd\u30ed\u30e2\u30f3\u8af8\u5cf6\u6642\u9593", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"\u30dc\u30ea\u30d3\u30a2\u6642\u9593", "BOT",
                                              "\u30dc\u30ea\u30d3\u30a2\u590f\u6642\u9593", "BOST"}},
             {"America/Lima", new String[] {"\u30da\u30eb\u30fc\u6642\u9593", "PET",
                                            "\u30da\u30eb\u30fc\u590f\u6642\u9593", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_ko.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_ko.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"\ud0dc\ud3c9\uc591 \ud45c\uc900\uc2dc", "PST",
                                      "\ud0dc\ud3c9\uc591 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "PDT"};
-        String RST[] = new String[] {"\ub3d9\ubd80 \ud45c\uc900\uc2dc", "EST",
-                                     "\uc911\ubd80 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "CDT"};
         String SAST[] = new String[] {"\ub0a8\uc544\ud504\ub9ac\uce74 \ud45c\uc900\uc2dc", "SAST",
                                       "\ub0a8\uc544\ud504\ub9ac\uce74 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "SAST"};
         String SBT[] = new String[] {"\uc194\ub85c\ubaac \uad70\ub3c4 \uc2dc\uac04", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"\ubcfc\ub9ac\ube44\uc544 \uc2dc\uac04", "BOT",
                                             "\ubcfc\ub9ac\ube44\uc544 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "BOST"}},
             {"America/Lima", new String[] {"\ud398\ub8e8 \uc2dc\uac04", "PET",
                                             "\ud398\ub8e8 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java	Fri Sep 16 13:56:52 2011 -0400
@@ -157,8 +157,6 @@
                                       "Fuso hor\u00e1rio de ver\u00e3o de Pohnpei", "PONST"};
         String PST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o do Pac\u00edfico", "PST",
                                      "Hor\u00e1rio de luz natural do Pac\u00edfico", "PDT"};
-        String RST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o oriental", "EST",
-                                     "Hor\u00e1rio de luz natural central", "CDT"};
         String SAST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o da \u00c1frica do Sul", "SAST",
                                       "Fuso hor\u00e1rio de ver\u00e3o da \u00c1frica do Sul", "SAST"};
         String SBT[] = new String[] {"Fuso hor\u00e1rio das Ilhas Salom\u00e3o", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Fuso hor\u00e1rio da Bol\u00edvia", "BOT",
                                              "Fuso hor\u00e1rio de ver\u00e3o da Bol\u00edvia", "BOST"}},
             {"America/Lima", new String[] {"Fuso hor\u00e1rio do Peru", "PET",
                                            "Fuso hor\u00e1rio de ver\u00e3o do Peru", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_sv.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_sv.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Stilla havet, normaltid", "PST",
                                      "Stilla havet, sommartid", "PDT"};
-        String RST[] = new String[] {"Eastern, normaltid", "EST",
-                                     "Central sommartid", "CDT"};
         String SAST[] = new String[] {"Sydafrika, normaltid", "SAST",
                                       "Sydafrika, sommartid", "SAST"};
         String SBT[] = new String[] {"Salomon\u00f6arna, normaltid", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Bolivia, normaltid", "BOT",
                                              "Bolivia, sommartid", "BOST"}},
             {"America/Lima", new String[] {"Peru, normaltid", "PET",
                                            "Peru, sommartid", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"\u592a\u5e73\u6d0b\u6807\u51c6\u65f6\u95f4", "PST",
                                      "\u592a\u5e73\u6d0b\u590f\u4ee4\u65f6", "PDT"};
-        String RST[] = new String[] {"\u4e1c\u90e8\u6807\u51c6\u65f6\u95f4", "EST",
-                                     "\u4e2d\u592e\u590f\u4ee4\u65f6", "CDT"};
         String SAST[] = new String[] {"\u5357\u975e\u6807\u51c6\u65f6\u95f4", "SAST",
                                       "\u5357\u975e\u590f\u4ee4\u65f6", "SAST"};
         String SBT[] = new String[] {"\u6240\u7f57\u95e8\u7fa4\u5c9b\u65f6\u95f4", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"\u73bb\u5229\u7ef4\u4e9a\u65f6\u95f4", "BOT",
                                              "\u73bb\u5229\u7ef4\u4e9a\u590f\u4ee4\u65f6", "BOST"}},
             {"America/Lima", new String[] {"\u79d8\u9c81\u65f6\u95f4", "PET",
                                            "\u79d8\u9c81\u590f\u4ee4\u65f6", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java	Fri Sep 16 13:56:52 2011 -0400
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"\u592a\u5e73\u6d0b\u6a19\u6e96\u6642\u9593", "PST",
                                      "\u592a\u5e73\u6d0b\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "PDT"};
-        String RST[] = new String[] {"\u6771\u65b9\u6a19\u6e96\u6642\u9593", "EST",
-                                     "\u4e2d\u592e\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "CDT"};
         String SAST[] = new String[] {"\u5357\u975e\u6a19\u6e96\u6642\u9593", "SAST",
                                       "\u5357\u975e\u590f\u4ee4\u6642\u9593", "SAST"};
         String SBT[] = new String[] {"\u6240\u7f85\u9580\u7fa4\u5cf6\u6642\u9593", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"\u73bb\u5229\u7dad\u4e9e\u6642\u9593", "BOT",
                                              "\u73bb\u5229\u7dad\u4e9e\u590f\u4ee4\u6642\u9593", "BOST"}},
             {"America/Lima", new String[] {"\u7955\u9b6f\u6642\u9593", "PET",
                                            "\u7955\u9b6f\u590f\u4ee4\u6642\u9593", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -674,7 +675,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/share/demo/README	Fri Sep 16 13:56:52 2011 -0400
@@ -0,0 +1,6 @@
+The source code provided with samples and demos for the JDK is meant
+to illustrate the usage of a given feature or technique and has been
+deliberately simplified. Additional steps required for a
+production-quality application, such as security checks, input
+validation, and proper error handling, might not be present in the
+sample code.
--- a/src/share/demo/applets/ArcTest/ArcTest.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/ArcTest/ArcTest.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.*;
 import java.awt.event.*;
--- a/src/share/demo/applets/BarChart/BarChart.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/BarChart/BarChart.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.*;
 
--- a/src/share/demo/applets/Blink/Blink.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/Blink/Blink.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * I love blinking things.
--- a/src/share/demo/applets/CardTest/CardTest.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/CardTest/CardTest.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.BorderLayout;
--- a/src/share/demo/applets/Clock/Clock.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/Clock/Clock.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.Color;
--- a/src/share/demo/applets/DitherTest/DitherTest.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/DitherTest/DitherTest.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.AWTEvent;
--- a/src/share/demo/applets/DrawTest/DrawTest.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/DrawTest/DrawTest.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.BorderLayout;
--- a/src/share/demo/applets/Fractal/CLSFractal.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/Fractal/CLSFractal.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Graphics;
 import java.util.Stack;
--- a/src/share/demo/applets/GraphicsTest/AppletFrame.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/GraphicsTest/AppletFrame.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Frame;
 import java.awt.Event;
--- a/src/share/demo/applets/GraphicsTest/GraphicsTest.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/GraphicsTest/GraphicsTest.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.*;
 import java.util.*;
--- a/src/share/demo/applets/MoleculeViewer/Matrix3D.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/MoleculeViewer/Matrix3D.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /** A fairly conventional 3D matrix object that can transform sets of
 3D points and perform a variety of manipulations on the transform */
--- a/src/share/demo/applets/MoleculeViewer/XYZApp.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/MoleculeViewer/XYZApp.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.Image;
--- a/src/share/demo/applets/NervousText/NervousText.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/NervousText/NervousText.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Graphics;
 import java.awt.Font;
--- a/src/share/demo/applets/SimpleGraph/GraphApplet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/SimpleGraph/GraphApplet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Graphics;
 
--- a/src/share/demo/applets/SortDemo/BidirBubbleSortAlgorithm.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/SortDemo/BidirBubbleSortAlgorithm.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A bi-directional bubble sort demonstration algorithm
--- a/src/share/demo/applets/SortDemo/BubbleSortAlgorithm.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/SortDemo/BubbleSortAlgorithm.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A bubble sort demonstration algorithm
--- a/src/share/demo/applets/SortDemo/QSortAlgorithm.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/SortDemo/QSortAlgorithm.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A quick sort demonstration algorithm
--- a/src/share/demo/applets/SortDemo/SortAlgorithm.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/SortDemo/SortAlgorithm.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A generic sort demonstration algorithm
--- a/src/share/demo/applets/SortDemo/SortItem.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/SortDemo/SortItem.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Color;
 import java.awt.Dimension;
--- a/src/share/demo/applets/SpreadSheet/SpreadSheet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/SpreadSheet/SpreadSheet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.*;
--- a/src/share/demo/applets/WireFrame/Matrix3D.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/WireFrame/Matrix3D.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /** A fairly conventional 3D matrix object that can transform sets of
 3D points and perform a variety of manipulations on the transform */
--- a/src/share/demo/applets/WireFrame/ThreeD.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/applets/WireFrame/ThreeD.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.Graphics;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/Destinations.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Destinations.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.awt.Image;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/Group.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Group.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.io.PrintWriter;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/J2DBench.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/J2DBench.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.io.PrintWriter;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/Modifier.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Modifier.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 public interface Modifier {
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/Node.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Node.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.io.PrintWriter;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/Option.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Option.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.awt.BorderLayout;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/Result.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Result.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.util.Vector;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/ResultSet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/ResultSet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.util.Hashtable;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/Test.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Test.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 public abstract class Test extends Option.Enable {
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/TestEnvironment.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/TestEnvironment.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.awt.Canvas;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/report/HTMLSeriesReporter.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/report/HTMLSeriesReporter.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /**
  * HTMLSeriesReporter.java
  *
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/report/IIOComparator.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/report/IIOComparator.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.report;
 
 import java.io.*;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/report/J2DAnalyzer.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/report/J2DAnalyzer.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.report;
 
 import java.util.Vector;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/report/XMLHTMLReporter.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/report/XMLHTMLReporter.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /**
  * XMLHTMLReporter.java
  *
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/GraphicsTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/GraphicsTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import java.awt.Graphics;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/ImageTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/ImageTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import j2dbench.Destinations;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/MiscTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/MiscTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import java.awt.Dimension;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/PixelTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/PixelTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import j2dbench.Destinations;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/RenderTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/RenderTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import java.awt.Graphics;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/IIOTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/IIOTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.awt.AlphaComposite;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputImageTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputImageTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.awt.Component;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputStreamTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputStreamTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.io.File;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.io.BufferedInputStream;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputImageTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputImageTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.awt.Graphics;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputStreamTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputStreamTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.io.File;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.io.BufferedOutputStream;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextConstructionTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextConstructionTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * (C) Copyright IBM Corp. 2003, All Rights Reserved.
  * This technology is protected by multiple US and International
  * patents. This notice and attribution to IBM may not be removed.
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextMeasureTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextMeasureTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * (C) Copyright IBM Corp. 2003, All Rights Reserved.
  * This technology is protected by multiple US and International
  * patents. This notice and attribution to IBM may not be removed.
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextRenderTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextRenderTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * (C) Copyright IBM Corp. 2003, All Rights Reserved.
  * This technology is protected by multiple US and International
  * patents. This notice and attribution to IBM may not be removed.
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextTests.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextTests.java	Fri Sep 16 13:56:52 2011 -0400
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * (C) Copyright IBM Corp. 2003, All Rights Reserved.
  * This technology is protected by multiple US and International
  * patents. This notice and attribution to IBM may not be removed.
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/ui/CompactLayout.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/ui/CompactLayout.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.ui;
 
 import java.awt.Dimension;
--- a/src/share/demo/java2d/J2DBench/src/j2dbench/ui/EnableButton.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/java2d/J2DBench/src/j2dbench/ui/EnableButton.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.ui;
 
 import j2dbench.Group;
--- a/src/share/demo/jfc/CodePointIM/CodePointIM.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/CodePointIM/CodePointIM.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.util.Locale;
 import java.util.MissingResourceException;
--- a/src/share/demo/jfc/CodePointIM/CodePointInputMethod.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/CodePointIM/CodePointInputMethod.java	Fri Sep 16 13:56:52 2011 -0400
@@ -28,6 +28,15 @@
  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package com.sun.inputmethods.internal.codepointim;
 
 
--- a/src/share/demo/jfc/CodePointIM/CodePointInputMethodDescriptor.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/CodePointIM/CodePointInputMethodDescriptor.java	Fri Sep 16 13:56:52 2011 -0400
@@ -28,6 +28,15 @@
  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package com.sun.inputmethods.internal.codepointim;
 
 
--- a/src/share/demo/jfc/FileChooserDemo/ExampleFileSystemView.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/FileChooserDemo/ExampleFileSystemView.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.io.File;
 import java.io.IOException;
--- a/src/share/demo/jfc/FileChooserDemo/ExampleFileView.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/FileChooserDemo/ExampleFileView.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.*;
 import javax.swing.filechooser.*;
--- a/src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.lang.reflect.InvocationTargetException;
 import java.util.logging.Level;
--- a/src/share/demo/jfc/Font2DTest/Font2DTest.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Font2DTest/Font2DTest.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Color;
 import java.awt.Component;
--- a/src/share/demo/jfc/Font2DTest/Font2DTestApplet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Font2DTest/Font2DTestApplet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import java.awt.AWTPermission;
--- a/src/share/demo/jfc/Font2DTest/FontPanel.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Font2DTest/FontPanel.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Color;
--- a/src/share/demo/jfc/Font2DTest/RangeMenu.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Font2DTest/RangeMenu.java	Fri Sep 16 13:56:52 2011 -0400
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import java.awt.BorderLayout;
--- a/src/share/demo/jfc/Metalworks/AquaMetalTheme.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/AquaMetalTheme.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.plaf.ColorUIResource;
 import javax.swing.plaf.metal.DefaultMetalTheme;
--- a/src/share/demo/jfc/Metalworks/BigContrastMetalTheme.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/BigContrastMetalTheme.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.plaf.*;
 import javax.swing.plaf.metal.*;
--- a/src/share/demo/jfc/Metalworks/ContrastMetalTheme.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/ContrastMetalTheme.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.UIDefaults;
 import javax.swing.border.Border;
--- a/src/share/demo/jfc/Metalworks/DemoMetalTheme.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/DemoMetalTheme.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Font;
 import javax.swing.UIDefaults;
--- a/src/share/demo/jfc/Metalworks/GreenMetalTheme.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/GreenMetalTheme.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.plaf.ColorUIResource;
 import javax.swing.plaf.metal.DefaultMetalTheme;
--- a/src/share/demo/jfc/Metalworks/KhakiMetalTheme.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/KhakiMetalTheme.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.plaf.ColorUIResource;
 import javax.swing.plaf.metal.DefaultMetalTheme;
--- a/src/share/demo/jfc/Metalworks/MetalThemeMenu.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/MetalThemeMenu.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
--- a/src/share/demo/jfc/Metalworks/Metalworks.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/Metalworks.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Toolkit;
 import javax.swing.JDialog;
--- a/src/share/demo/jfc/Metalworks/MetalworksDocumentFrame.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/MetalworksDocumentFrame.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Component;
--- a/src/share/demo/jfc/Metalworks/MetalworksFrame.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/MetalworksFrame.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Dimension;
 import java.awt.Toolkit;
--- a/src/share/demo/jfc/Metalworks/MetalworksHelp.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/MetalworksHelp.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.*;
 import java.awt.*;
--- a/src/share/demo/jfc/Metalworks/MetalworksInBox.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/MetalworksInBox.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.JInternalFrame;
 import javax.swing.JScrollPane;
--- a/src/share/demo/jfc/Metalworks/MetalworksPrefs.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/MetalworksPrefs.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Component;
--- a/src/share/demo/jfc/Metalworks/PropertiesMetalTheme.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/PropertiesMetalTheme.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.io.IOException;
 import java.io.InputStream;
--- a/src/share/demo/jfc/Metalworks/UISwitchListener.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Metalworks/UISwitchListener.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
--- a/src/share/demo/jfc/Notepad/ElementTreePanel.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Notepad/ElementTreePanel.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Dimension;
--- a/src/share/demo/jfc/Notepad/Notepad.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/Notepad/Notepad.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Color;
--- a/src/share/demo/jfc/SampleTree/DynamicTreeNode.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/SampleTree/DynamicTreeNode.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Color;
 import java.awt.Font;
--- a/src/share/demo/jfc/SampleTree/SampleData.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/SampleTree/SampleData.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Color;
 import java.awt.Font;
--- a/src/share/demo/jfc/SampleTree/SampleTree.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/SampleTree/SampleTree.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.lang.reflect.InvocationTargetException;
 import java.util.logging.Level;
--- a/src/share/demo/jfc/SampleTree/SampleTreeCellRenderer.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/SampleTree/SampleTreeCellRenderer.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.Icon;
 import javax.swing.ImageIcon;
--- a/src/share/demo/jfc/SampleTree/SampleTreeModel.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/SampleTree/SampleTreeModel.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.tree.DefaultTreeModel;
 import javax.swing.tree.TreeNode;
--- a/src/share/demo/jfc/SwingApplet/SwingApplet.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/SwingApplet/SwingApplet.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.FlowLayout;
 import java.lang.reflect.InvocationTargetException;
--- a/src/share/demo/jfc/TableExample/JDBCAdapter.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TableExample/JDBCAdapter.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.sql.Connection;
 import java.sql.DriverManager;
--- a/src/share/demo/jfc/TableExample/OldJTable.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TableExample/OldJTable.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.util.EventObject;
 import java.util.List;
--- a/src/share/demo/jfc/TableExample/TableExample.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TableExample/TableExample.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A a UI around the JDBCAdaptor, allowing database data to be interactively
--- a/src/share/demo/jfc/TableExample/TableExample2.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TableExample/TableExample2.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.event.WindowAdapter;
 import java.awt.event.WindowEvent;
--- a/src/share/demo/jfc/TableExample/TableExample3.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TableExample/TableExample3.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.*;
 import javax.swing.table.*;
--- a/src/share/demo/jfc/TableExample/TableExample4.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TableExample/TableExample4.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.*;
 import javax.swing.table.*;
--- a/src/share/demo/jfc/TableExample/TableMap.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TableExample/TableMap.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * In a chain of data manipulators some behaviour is common. TableMap
--- a/src/share/demo/jfc/TableExample/TableSorter.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TableExample/TableSorter.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.table.TableModel;
 import javax.swing.event.TableModelEvent;
--- a/src/share/demo/jfc/TransparentRuler/transparentruler/Ruler.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jfc/TransparentRuler/transparentruler/Ruler.java	Fri Sep 16 13:56:52 2011 -0400
@@ -28,6 +28,15 @@
  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package transparentruler;
 
 
--- a/src/share/demo/jvmti/agent_util/agent_util.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/agent_util/agent_util.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <agent_util.h>
 
 /* ------------------------------------------------------------------- */
--- a/src/share/demo/jvmti/agent_util/agent_util.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/agent_util/agent_util.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef AGENT_UTIL_H
 #define AGENT_UTIL_H
 
--- a/src/share/demo/jvmti/compiledMethodLoad/compiledMethodLoad.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/compiledMethodLoad/compiledMethodLoad.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
--- a/src/share/demo/jvmti/gctest/gctest.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/gctest/gctest.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Example of using JVMTI_EVENT_GARBAGE_COLLECTION_START and
  *                  JVMTI_EVENT_GARBAGE_COLLECTION_FINISH events.
  */
--- a/src/share/demo/jvmti/heapTracker/HeapTracker.java	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/heapTracker/HeapTracker.java	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /* Java class to hold static methods which will be called in byte code
  *    injections of all class files.
--- a/src/share/demo/jvmti/heapTracker/heapTracker.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/heapTracker/heapTracker.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "stdlib.h"
 
 #include "heapTracker.h"
--- a/src/share/demo/jvmti/heapTracker/heapTracker.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/heapTracker/heapTracker.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Primary heapTracker #include file, should be included by most if not
  *    all heapTracker source files. Gives access to the global data structure
  *    and all global macros.
--- a/src/share/demo/jvmti/heapViewer/heapViewer.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/heapViewer/heapViewer.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <stdio.h>
 #include <stddef.h>
 #include <stdlib.h>
--- a/src/share/demo/jvmti/hprof/debug_malloc.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/debug_malloc.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* **************************************************************************
  *
  * Set of malloc/realloc/calloc/strdup/free replacement macros that
--- a/src/share/demo/jvmti/hprof/debug_malloc.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/debug_malloc.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* ***********************************************************************
  *
  * The source file debug_malloc.c should be included with your sources.
--- a/src/share/demo/jvmti/hprof/hprof.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Primary hprof #include file, should be included by most if not
  *    all hprof source files. Gives access to the global data structure
  *    and all global macros, and everything declared in the #include
--- a/src/share/demo/jvmti/hprof/hprof_blocks.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_blocks.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Allocations from large blocks, no individual free's */
 
 #include "hprof.h"
--- a/src/share/demo/jvmti/hprof/hprof_blocks.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_blocks.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_BLOCKS_H
 #define HPROF_BLOCKS_H
 
--- a/src/share/demo/jvmti/hprof/hprof_check.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_check.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Functionality for checking hprof format=b output. */
 
 /* ONLY used with logflags=4. */
--- a/src/share/demo/jvmti/hprof/hprof_check.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_check.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_CHECK_H
 #define HPROF_CHECK_H
 
--- a/src/share/demo/jvmti/hprof/hprof_class.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_class.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Table of class information.
  *
  *   Each element in this table is identified with a ClassIndex.
--- a/src/share/demo/jvmti/hprof/hprof_class.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_class.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_CLASS_H
 #define HPROF_CLASS_H
 
--- a/src/share/demo/jvmti/hprof/hprof_cpu.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_cpu.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "hprof.h"
 
 /* This file contains the cpu loop for the option cpu=samples */
--- a/src/share/demo/jvmti/hprof/hprof_cpu.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_cpu.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_CPU_H
 #define HPROF_CPU_H
 
--- a/src/share/demo/jvmti/hprof/hprof_error.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_error.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "hprof.h"
 
 /* The error handling logic. */
--- a/src/share/demo/jvmti/hprof/hprof_error.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_error.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_ERROR_H
 #define HPROF_ERROR_H
 
--- a/src/share/demo/jvmti/hprof/hprof_event.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_event.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* This file contains all class, method and allocation event support functions,
  *   both JVMTI and BCI events.
  *   (See hprof_monitor.c for the monitor event handlers).
--- a/src/share/demo/jvmti/hprof/hprof_event.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_event.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_EVENT_H
 #define HPROF_EVENT_H
 
--- a/src/share/demo/jvmti/hprof/hprof_frame.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_frame.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* This file contains support for handling frames, or (method,location) pairs. */
 
 #include "hprof.h"
--- a/src/share/demo/jvmti/hprof/hprof_frame.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_frame.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_FRAME_H
 #define HPROF_FRAME_H
 
--- a/src/share/demo/jvmti/hprof/hprof_init.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_init.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Main source file, the basic JVMTI connection/startup code. */
 
 #include "hprof.h"
--- a/src/share/demo/jvmti/hprof/hprof_init.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_init.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_INIT_H
 #define HPROF_INIT_H
 
--- a/src/share/demo/jvmti/hprof/hprof_io.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_io.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* All I/O functionality for hprof. */
 
 /*
--- a/src/share/demo/jvmti/hprof/hprof_io.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_io.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_IO_H
 #define HPROF_IO_H
 
--- a/src/share/demo/jvmti/hprof/hprof_ioname.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_ioname.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Used to store strings written out to the binary format (see hprof_io.c) */
 
 
--- a/src/share/demo/jvmti/hprof/hprof_ioname.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_ioname.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_IONAME_H
 #define HPROF_IONAME_H
 
--- a/src/share/demo/jvmti/hprof/hprof_listener.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_listener.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* The hprof listener loop thread. net=hostname:port option */
 
 /*
--- a/src/share/demo/jvmti/hprof/hprof_listener.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_listener.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_LISTENER_H
 #define HPROF_LISTENER_H
 
--- a/src/share/demo/jvmti/hprof/hprof_loader.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_loader.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* The Class Loader table. */
 
 /*
--- a/src/share/demo/jvmti/hprof/hprof_loader.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_loader.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_LOADER_H
 #define HPROF_LOADER_H
 
--- a/src/share/demo/jvmti/hprof/hprof_md.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_md.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_MD_H
 #define HPROF_MD_H
 
--- a/src/share/demo/jvmti/hprof/hprof_monitor.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_monitor.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Monitor contention tracking and monitor wait handling. */
 
 /*
--- a/src/share/demo/jvmti/hprof/hprof_monitor.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_monitor.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_MONITOR_H
 #define HPROF_MONITOR_H
 
--- a/src/share/demo/jvmti/hprof/hprof_object.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_object.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Object table. */
 
 /*
--- a/src/share/demo/jvmti/hprof/hprof_object.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_object.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_OBJECT_H
 #define HPROF_OBJECT_H
 
--- a/src/share/demo/jvmti/hprof/hprof_reference.c	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_reference.c	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Object references table (used in hprof_object.c). */
 
 /*
--- a/src/share/demo/jvmti/hprof/hprof_reference.h	Thu Sep 15 13:59:13 2011 -0400
+++ b/src/share/demo/jvmti/hprof/hprof_reference.h	Fri Sep 16 13:56:52 2011 -0400
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+</