Merge
authorjgodinez
Mon Apr 14 11:34:15 2008 -0700 (19 months ago)
changeset 30690e1f09ce553
parent 30599f3a382f574
parent 304aaa5637a841d
child 307804b0757d801
Merge
--- a/.hgtags Thu Apr 10 13:57:15 2008 -0700
+++ b/.hgtags Mon Apr 14 11:34:15 2008 -0700
@@ -1,1 +1,2 @@ 37a05a11f281b4d238e2f9e7ebb67c63f64d0e77
37a05a11f281b4d238e2f9e7ebb67c63f64d0e77 jdk7-b24
+75fca0b0ab83ab1392e615910cea020f66535390 jdk7-b25
--- a/make/common/Defs-linux.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/Defs-linux.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -50,13 +50,13 @@ CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OB
CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)& $(dir $@)$*.$(DEPEND_SUFFIX)!g'
ifndef PLATFORM_SRC
- PLATFORM_SRC = $(JDK_TOPDIR)/src/solaris
+ PLATFORM_SRC = $(BUILDDIR)/../src/solaris
endif # PLATFORM_SRC
# Platform specific closed sources
ifndef OPENJDK
ifndef CLOSED_PLATFORM_SRC
- CLOSED_PLATFORM_SRC = $(JDK_TOPDIR)/src/closed/solaris
+ CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris
endif
endif
--- a/make/common/Defs-solaris.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/Defs-solaris.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -45,13 +45,13 @@ include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
ifndef PLATFORM_SRC
-PLATFORM_SRC = $(JDK_TOPDIR)/src/solaris
+PLATFORM_SRC = $(BUILDDIR)/../src/solaris
endif # PLATFORM_SRC
# Platform specific closed sources
ifndef OPENJDK
ifndef CLOSED_PLATFORM_SRC
- CLOSED_PLATFORM_SRC = $(JDK_TOPDIR)/src/closed/solaris
+ CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris
endif
endif
--- a/make/common/Defs-windows.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/Defs-windows.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -51,13 +51,13 @@ endif # LIB_LOCATION
endif # LIB_LOCATION
ifndef PLATFORM_SRC
- PLATFORM_SRC = $(JDK_TOPDIR)/src/windows
+ PLATFORM_SRC = $(BUILDDIR)/../src/windows
endif # PLATFORM_SRC
# Platform specific closed sources
ifndef OPENJDK
ifndef CLOSED_PLATFORM_SRC
- CLOSED_PLATFORM_SRC = $(JDK_TOPDIR)/src/closed/windows
+ CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/windows
endif
endif
@@ -367,7 +367,7 @@ endif
endif
# Settings for the VERSIONINFO tap on windows.
-VERSIONINFO_RESOURCE = $(JDK_TOPDIR)/src/windows/resource/version.rc
+VERSIONINFO_RESOURCE = $(BUILDDIR)/../src/windows/resource/version.rc
ifneq ($(JDK_BUILD_NUMBER),)
COOKED_BUILD_NUMBER = $(shell $(ECHO) $(JDK_BUILD_NUMBER) | $(SED) -e 's/^b//' -e 's/^0//')
--- a/make/common/Defs.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/Defs.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -32,6 +32,13 @@
# So when it includes other files, it must use JDK_TOPDIR.
#
+# Check for strange explicit settings (change to empty or true)
+ifdef OPENJDK
+ ifneq ($(OPENJDK),true)
+ x:=$(error "OPENJDK (if defined) can only be set to true")
+ endif
+endif
+
#
# On Solaris, the 'make' utility from Sun will not work with these makefiles.
# This little rule is only understood by Sun's make, and is harmless
@@ -41,7 +48,15 @@ SUN_MAKE_TEST:sh = echo "ERROR: PLEASE U
SUN_MAKE_TEST:sh = echo "ERROR: PLEASE USE GNU VERSION OF MAKE"; exit 33
ifndef JDK_TOPDIR
- JDK_TOPDIR=$(BUILDDIR)/..
+ ifdef BUILDDIR
+ JDK_TOPDIR=$(BUILDDIR)/..
+ else
+ JDK_TOPDIR:=$(error "ERROR: Cannot define top of jdk repository")
+ endif
+endif
+ifndef BUILDDIR
+ # Hack, due to deploy repository using this file.
+ BUILDDIR=$(JDK_TOPDIR)/make
endif
ifndef JDK_MAKE_SHARED_DIR
JDK_MAKE_SHARED_DIR=$(JDK_TOPDIR)/make/common/shared
@@ -59,13 +74,13 @@ include $(JDK_TOPDIR)/make/common/Cancel
# there yet.
#
ifndef SHARE_SRC
- SHARE_SRC = $(JDK_TOPDIR)/src/share
+ SHARE_SRC = $(BUILDDIR)/../src/share
endif
# Files that cannot be included in the OpenJDK distribution are
# collected under a parent directory which contains just those files.
ifndef CLOSED_SRC
- CLOSED_SRC = $(JDK_TOPDIR)/src/closed
+ CLOSED_SRC = $(BUILDDIR)/../src/closed
endif
# If we have no closed directory, force it to an openjdk build
@@ -77,19 +92,6 @@ CLOSED_SRC_DIR_EXISTS := $(shell \
fi)
ifeq ($(CLOSED_SRC_DIR_EXISTS), false)
OPENJDK = true
-endif
-
-# Check for strange explicit settings (change to empty or true)
-ifdef OPENJDK
- ifeq ($(OPENJDK),false)
- # Silently treat as not defined
- OPENJDK =
- else
- ifneq ($(OPENJDK),true)
- dummy := $(warning "WARNING: OPENKJDK=$(OPENJDK) being treated as true")
- OPENJDK = true
- endif
- endif
endif
# Define where closed directories are
@@ -169,14 +171,6 @@ ifdef OPENJDK
BINARY_PLUGS_JARFILE = $(ALT_BINARY_PLUGS_JARFILE)
endif
endif # OPENJDK
-
-# Default output directory
-ifdef OPENJDK
-_OUTPUTDIR=$(JDK_TOPDIR)/build/$(PLATFORM)-$(ARCH)$(OPENJDK_SUFFIX)
-else
-_OUTPUTDIR=$(JDK_TOPDIR)/build/$(PLATFORM)-$(ARCH)
-endif
-
#
# Get platform definitions
--- a/make/common/internal/BinaryPlugs.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/internal/BinaryPlugs.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -126,44 +126,10 @@ com/sun/media/sound/SimpleInputDevicePro
com/sun/media/sound/SimpleInputDeviceProvider\$$InputDeviceInfo.class \
com/sun/media/sound/SimpleInputDeviceProvider.class
-PLUG_AWT_CLASS_NAMES = \
-java/awt/color/CMMException.class \
-java/awt/color/ColorSpace.class \
-java/awt/color/ICC_ColorSpace.class \
-java/awt/color/ICC_Profile\$$1.class \
-java/awt/color/ICC_Profile\$$2.class \
-java/awt/color/ICC_Profile\$$3.class \
-java/awt/color/ICC_Profile.class \
-java/awt/color/ICC_ProfileGray.class \
-java/awt/color/ICC_ProfileRGB.class \
-java/awt/image/BandedSampleModel.class \
-java/awt/image/ColorConvertOp.class \
-java/awt/image/ComponentSampleModel.class \
-java/awt/image/DataBuffer\$$1.class \
-java/awt/image/DataBuffer.class \
-java/awt/image/DataBufferByte.class \
-java/awt/image/DataBufferInt.class \
-java/awt/image/DataBufferShort.class \
-java/awt/image/DataBufferUShort.class \
-java/awt/image/MultiPixelPackedSampleModel.class \
-java/awt/image/Raster.class \
-java/awt/image/RenderedImage.class \
-java/awt/image/SampleModel.class \
-java/awt/image/SinglePixelPackedSampleModel.class \
-java/awt/image/WritableRaster.class \
-java/awt/image/WritableRenderedImage.class \
-java/awt/image/renderable/ContextualRenderedImageFactory.class \
-java/awt/image/renderable/ParameterBlock.class \
-java/awt/image/renderable/RenderContext.class \
-java/awt/image/renderable/RenderableImage.class \
-java/awt/image/renderable/RenderableImageOp.class \
-java/awt/image/renderable/RenderableImageProducer.class \
-java/awt/image/renderable/RenderedImageFactory.class
-
# Class list temp files (used by both import and export of plugs)
PLUG_TEMPDIR=$(ABS_TEMPDIR)/plugs
-PLUG_CLASS_AREAS = jmf sound awt
+PLUG_CLASS_AREAS = jmf sound
PLUG_CLISTS = $(PLUG_CLASS_AREAS:%=$(PLUG_TEMPDIR)/%.clist)
# Create jargs file command
@@ -184,11 +150,6 @@ endef # plug-create-clist-jargs
$(PLUG_TEMPDIR)/sound.clist:
@$(prep-target)
@for i in $(PLUG_SOUND_CLASS_NAMES) ; do \
- $(ECHO) "$$i" >> $@ ; \
- done
-$(PLUG_TEMPDIR)/awt.clist:
- @$(prep-target)
- @for i in $(PLUG_AWT_CLASS_NAMES) ; do \
$(ECHO) "$$i" >> $@ ; \
done
$(PLUG_TEMPDIR)/all.clist: $(PLUG_CLISTS)
@@ -198,8 +159,6 @@ endef # plug-create-clist-jargs
$(plug-create-jargs)
$(PLUG_TEMPDIR)/sound.jargs: $(PLUG_TEMPDIR)/sound.clist
$(plug-create-jargs)
-$(PLUG_TEMPDIR)/awt.jargs: $(PLUG_TEMPDIR)/awt.clist
- $(plug-create-jargs)
$(PLUG_TEMPDIR)/all.jargs: $(PLUG_TEMPDIR)/all.clist
$(plug-create-jargs)
@@ -235,15 +194,12 @@ import-binary-plug-jmf-classes: $(PLUG_I
$(call import-binary-plug-classes,$(PLUG_TEMPDIR)/jmf.clist)
import-binary-plug-sound-classes: $(PLUG_IMPORT_JARFILE) $(PLUG_TEMPDIR)/sound.clist
$(call import-binary-plug-classes,$(PLUG_TEMPDIR)/sound.clist)
-import-binary-plug-awt-classes: $(PLUG_IMPORT_JARFILE) $(PLUG_TEMPDIR)/awt.clist
- $(call import-binary-plug-classes,$(PLUG_TEMPDIR)/awt.clist)
# Import all classes from the jar file
import-binary-plug-jar: \
import-binary-plug-jmf-classes \
- import-binary-plug-sound-classes \
- import-binary-plug-awt-classes
+ import-binary-plug-sound-classes
# Import native libraries
@@ -286,7 +242,6 @@ import-binary-plugs: \
import-binary-plug-jar \
import-binary-plug-jmf-classes \
import-binary-plug-sound-classes \
- import-binary-plug-awt-classes \
import-binary-plug-jsound-library
else # !OPENJDK
--- a/make/common/shared/Defs-control.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/shared/Defs-control.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -36,7 +36,7 @@ endif
endif
ifndef CONTROL_TOPDIR
- CONTROL_TOPDIR=$(TOPDIR)/control
+ CONTROL_TOPDIR=$(TOPDIR)
endif
ifndef HOTSPOT_TOPDIR
HOTSPOT_TOPDIR=$(TOPDIR)/hotspot
@@ -70,7 +70,8 @@ include $(JDK_MAKE_SHARED_DIR)/Platform.
include $(JDK_MAKE_SHARED_DIR)/Platform.gmk
# Default output directory
-_OUTPUTDIR=$(CONTROL_TOPDIR)/build/$(PLATFORM)-$(ARCH)
+BUILD_PARENT_DIRECTORY=$(TOPDIR)
+_OUTPUTDIR=$(TOPDIR)/build/$(PLATFORM)-$(ARCH)
# Get platform specific settings
include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
--- a/make/common/shared/Defs-utils.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/shared/Defs-utils.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -66,16 +66,6 @@ ifeq ($(PLATFORM),windows)
UTILS_CCS_BIN_PATH=$(UNIXCOMMAND_PATH)
UTILS_DEVTOOL_PATH=$(DEVTOOLS_PATH)
endif
-
-# Utilities ant and findbugs
-ifndef ANT_HOME
- ANT_HOME = $(JDK_DEVTOOLS_DIR)/share/ant/latest
-endif
-ANT = $(ANT_HOME)/bin/ant
-ifndef FINDBUGS_HOME
- FINDBUGS_HOME = $(JDK_DEVTOOLS_DIR)/share/findbugs/latest
-endif
-FINDBUGS = $(FINDBUGS_HOME)/bin/findbugs
# Utilities
ADB = $(UTILS_COMMAND_PATH)adb
--- a/make/common/shared/Defs.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/shared/Defs.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -55,7 +55,10 @@ include $(JDK_MAKE_SHARED_DIR)/Defs-util
# Simple pwd path
define PwdPath
-$(shell cd $1 2> $(DEV_NULL) && pwd)
+$(shell $(CD) $1 2> $(DEV_NULL) && $(PWD))
+endef
+define AbsPwdPathCheck
+$(shell $(CD) .. 2> $(DEV_NULL) && $(CD) $1 2> $(DEV_NULL) && $(PWD))
endef
# Checks an ALT value for spaces (should be one word),
@@ -422,23 +425,54 @@ CACERTS_FILE:=$(call AltCheckValue,CACER
CACERTS_FILE:=$(call AltCheckValue,CACERTS_FILE)
# OUTPUTDIR: Location of all output for the build
-_BACKUP_OUTPUTDIR = $(TEMP_DISK)/$(USER)/jdk-outputdir
ifdef ALT_OUTPUTDIR
- _POSSIBLE_OUTPUTDIR =$(subst \,/,$(ALT_OUTPUTDIR))
+ OUTPUTDIR:=$(subst \,/,$(ALT_OUTPUTDIR))
+ # Assumes this is absolute (checks later)
+ ABS_OUTPUTDIR:=$(OUTPUTDIR)
else
ifndef _OUTPUTDIR
- _OUTPUTDIR = $(_BACKUP_OUTPUTDIR)
+ # Default: Get "build" parent directory, which should always exist
+ ifndef BUILD_PARENT_DIRECTORY
+ BUILD_PARENT_DIRECTORY=$(BUILDDIR)/..
+ endif
+ ABS_BUILD_PARENT_DIRECTORY:=$(call FullPath,$(BUILD_PARENT_DIRECTORY))
+ ifdef OPENJDK
+ _OUTPUTDIRNAME=$(PLATFORM)-$(ARCH)$(OPENJDK_SUFFIX)
+ else
+ _OUTPUTDIRNAME=$(PLATFORM)-$(ARCH)
+ endif
+ _OUTPUTDIR=$(BUILD_PARENT_DIRECTORY)/build/$(_OUTPUTDIRNAME)
+ ABS_OUTPUTDIR:=$(ABS_BUILD_PARENT_DIRECTORY)/build/$(_OUTPUTDIRNAME)
endif
- _POSSIBLE_OUTPUTDIR =$(_OUTPUTDIR)
-endif
-_create_outputdir1:=$(shell mkdir -p $(_POSSIBLE_OUTPUTDIR) > $(DEV_NULL) 2>&1)
-OUTPUTDIR:=$(call WriteDirExists,$(_POSSIBLE_OUTPUTDIR),$(_BACKUP_OUTPUTDIR))
-_create_outputdir2:=$(shell mkdir -p $(OUTPUTDIR) > $(DEV_NULL) 2>&1)
-ifeq "$(OUTPUTDIR)" "$(_BACKUP_OUTPUTDIR)"
- _outputdir_warning:=$(warning "WARNING: OUTPUTDIR '$(_POSSIBLE_OUTPUTDIR)' not writable, will use '$(_BACKUP_OUTPUTDIR)'")
-endif
+ OUTPUTDIR:=$(_OUTPUTDIR)
+endif
+# Check for spaces and null value
OUTPUTDIR:=$(call AltCheckSpaces,OUTPUTDIR)
OUTPUTDIR:=$(call AltCheckValue,OUTPUTDIR)
+# Create the output directory and make sure it exists and is writable
+_create_outputdir:=$(shell $(MKDIR) -p "$(OUTPUTDIR)" > $(DEV_NULL) 2>&1)
+ifeq ($(call WriteDirExists,$(OUTPUTDIR),/dev/null),/dev/null)
+ _outputdir_error:=$(error "ERROR: OUTPUTDIR '$(OUTPUTDIR)' not created or not writable")
+endif
+# Define absolute path if needed and check for spaces and null value
+ifndef ABS_OUTPUTDIR
+ ABS_OUTPUTDIR:=$(call FullPath,$(OUTPUTDIR))
+endif
+ABS_OUTPUTDIR:=$(call AltCheckSpaces,ABS_OUTPUTDIR)
+ABS_OUTPUTDIR:=$(call AltCheckValue,ABS_OUTPUTDIR)
+# Make doubly sure this is a full path
+ifeq ($(call AbsPwdPathCheck,$(ABS_OUTPUTDIR)), )
+ ifdef ALT_OUTPUTDIR
+ _outputdir_error:=$(error "ERROR: Trouble with the absolute path for OUTPUTDIR '$(OUTPUTDIR)', was ALT_OUTPUTDIR '$(ALT_OUTPUTDIR)' an absolute path?")
+ else
+ _outputdir_error:=$(error "ERROR: Trouble with the absolute path for OUTPUTDIR '$(OUTPUTDIR)'")
+ endif
+endif
+_dir1:=$(call FullPath,$(ABS_OUTPUTDIR))
+_dir2:=$(call FullPath,$(OUTPUTDIR))
+ifneq ($(_dir1),$(_dir2))
+ _outputdir_error:=$(error "ERROR: ABS_OUTPUTDIR '$(ABS_OUTPUTDIR)' is not the same directory as OUTPUTDIR '$(OUTPUTDIR)', '$(_dir1)'!='$(_dir2)'")
+endif
# Bin directory
# NOTE: ISA_DIR is usually empty, on Solaris it might be /sparcv9 or /amd64
@@ -469,15 +503,30 @@ JDK_CUPS_HEADERS_PATH=$(JDK_DEVTOOLS_DIR
endif
endif
+# Utilities ant and findbugs
+ifeq ($(ANT_HOME),)
+ ANT_HOME := $(call DirExists,/usr/share/ant,$(JDK_DEVTOOLS_DIR)/share/ant/latest,)
+endif
+ifeq ($(ANT_HOME),)
+ ANT = ant
+else
+ ANT = $(ANT_HOME)/bin/ant
+endif
+ifeq ($(FINDBUGS_HOME),)
+ FINDBUGS_HOME := $(call DirExists,/usr/share/findbugs,$(JDK_DEVTOOLS_DIR)/share/findbugs/latest,)
+endif
+ifeq ($(FINDBUGS_HOME),)
+ FINDBUGS = findbugs
+else
+ FINDBUGS = $(FINDBUGS_HOME)/bin/findbugs
+endif
+
ifdef ALT_COPYRIGHT_YEAR
COPYRIGHT_YEAR = $(ALT_COPYRIGHT_YEAR)
else
COPYRIGHT_YEAR = $(shell $(DATE) '+%Y')
endif
-# Absolute path to output directory
-ABS_OUTPUTDIR:=$(call FullPath,$(OUTPUTDIR))
-
# Get shared compiler settings
include $(JDK_MAKE_SHARED_DIR)/Compiler.gmk
--- a/make/common/shared/Platform.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/shared/Platform.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -93,20 +93,18 @@ SYSTEM_UNAME := $(shell uname)
# Normal boot jdk is previous release, but a hard requirement is a 1.5 boot
REQUIRED_BOOT_VER = 1.5
-#This is specific to OpenJDK build
-ifdef OPENJDK
- REQUIRED_FREETYPE_VERSION=2.3.0
-endif
+# If we are using freetype, this is the required version
+REQUIRED_FREETYPE_VERSION=2.3.0
#
# Prune out all known SCM (Source Code Management) directories
# so they will not be included when copying directory trees
# or packaging up .jar files, etc. This applies to all workspaces.
#
-SCM_DIRs = .hg .svn CVS RCS SCCS Codemgr_wsdata deleted_files
+SCM_DIRs = .hg .svn CVS RCS SCCS Codemgr_wsdata deleted_files .hgignore .hgtags
# When changing SCM_DIRs also change SCM_DIRS_rexp and SCM_DIRS_prune:
-SCM_DIRS_rexp = ".hg|.svn|CVS|RCS|SCCS|Codemgr_wsdata|deleted_files"
-SCM_DIRS_prune = \( -name .hg -o -name .svn -o -name CVS -o -name RCS -o -name SCCS -o -name Codemgr_wsdata -o -name deleted_files \) -prune
+SCM_DIRS_rexp = ".hg|.svn|CVS|RCS|SCCS|Codemgr_wsdata|deleted_files|.hgignore|.hgtags"
+SCM_DIRS_prune = \( -name .hg -o -name .svn -o -name CVS -o -name RCS -o -name SCCS -o -name Codemgr_wsdata -o -name deleted_files -o -name .hgignore -o -name .hgtags \) -prune
# Don't define this unless it's not defined
ifndef VARIANT
@@ -272,7 +270,7 @@ ifeq ($(SYSTEM_UNAME), Linux)
REQUIRED_ALSA_VERSION = ^((0[.]9[.][1-9])|(1[.]0[.][0-9]))[0-9]*
endif
# How much RAM does this machine have:
- MB_OF_MEMORY := $(shell free -m | fgrep Mem: | sed -e 's@\ \ *@ @g' | cut -d' ' -f2)
+ MB_OF_MEMORY := $(shell free -m | fgrep Mem: | awk '{print $$2;}' )
endif
# Windows with and without CYGWIN will be slightly different
@@ -376,45 +374,35 @@ ifeq ($(PLATFORM), windows)
REQUIRED_DXSDK_VER = 0x0700
OS_VENDOR = Microsoft
# How much RAM does this machine have:
- MB_OF_MEMORY := $(shell \
- if [ -f "C:/cygwin/bin/free.exe" ] ; then \
- ( C:/cygwin/bin/bash.exe -c "C:/cygwin/bin/free.exe -m" ) | \
- grep Mem: | \
- sed -e 's@\ \ *@ @g' | cut -d' ' -f2 ; \
- else \
- echo "512"; \
- fi)
-endif
-
-# Machines with 512Mb or less of real memory are considered low memory
-# build machines and adjustments will be made to prevent excessing
-# system swapping during the build.
-# If we don't know, assume 512. Subtract 128 from MB for VM MAX.
-# Don't set VM max over 1024-128=896.
-ifneq ($(MB_OF_MEMORY),)
- LOW_MEMORY_MACHINE := $(shell \
- if [ $(MB_OF_MEMORY) -le 512 ] ; then \
- echo "true"; \
- else \
- echo "false"; \
- fi)
- MAX_VM_MEMORY := $(shell \
- if [ $(MB_OF_MEMORY) -le 1024 ] ; then \
- expr $(MB_OF_MEMORY) '-' 128 ; \
- else \
- echo "896"; \
- fi)
- MIN_VM_MEMORY := $(shell \
- if [ $(MAX_VM_MEMORY) -le 128 ] ; then \
- expr $(MAX_VM_MEMORY) '-' 8 ; \
- else \
- echo "128"; \
- fi)
-else
- MB_OF_MEMORY := unknown
- LOW_MEMORY_MACHINE := true
- MAX_VM_MEMORY := 384
- MIN_VM_MEMORY := 128
+ ifeq ($(USING_CYGWIN),true)
+ # CYGWIN has the 'free' utility
+ _MB_OF_MEMORY := \
+ $(shell free -m | grep Mem: | awk '{print $$2;}' )
+ else
+ # Windows 2000 has the mem utility, but two memory areas
+ # extended memory is what is beyond 1024M
+ _B_OF_EXT_MEMORY := \
+ $(shell mem 2> $(DEV_NULL) | grep 'total contiguous extended memory' | awk '{print $$1;}')
+ ifeq ($(_B_OF_EXT_MEMORY),)
+ _B_OF_MEMORY := \
+ $(shell mem 2> $(DEV_NULL) | grep 'total conventional memory' | awk '{print $$1;}')
+ else
+ _B_OF_MEMORY := \
+ $(shell expr 1048576 '+' $(_B_OF_EXT_MEMORY) 2> $(DEV_NULL))
+ endif
+ ifeq ($(_B_OF_MEMORY),)
+ # Windows 2003 has the systeminfo utility use it if mem doesn't work
+ _MB_OF_MEMORY := \
+ $(shell systeminfo 2> $(DEV_NULL) | grep 'Total Physical Memory:' | awk '{print $$4;}' | sed -e 's@,@@')
+ else
+ _MB_OF_MEMORY := $(shell expr $(_B_OF_MEMORY) '/' 1024 2> $(DEV_NULL))
+ endif
+ endif
+ ifeq ($(shell expr $(_MB_OF_MEMORY) '+' 0 2> $(DEV_NULL)), $(_MB_OF_MEMORY))
+ MB_OF_MEMORY := $(_MB_OF_MEMORY)
+ else
+ MB_OF_MEMORY := 512
+ endif
endif
REQUIRED_ZIP_VER = 2.2
@@ -454,6 +442,37 @@ ifneq ($(PLATFORM), windows)
ARCH_VM_SUBDIR=jre/lib/$(LIBARCH)
endif
+# Machines with 512Mb or less of real memory are considered low memory
+# build machines and adjustments will be made to prevent excessing
+# system swapping during the build.
+# If we don't know, assume 512. Subtract 128 from MB for VM MAX.
+# Don't set VM max over 1024-128=896.
+ifneq ($(MB_OF_MEMORY),)
+ LOW_MEMORY_MACHINE := $(shell \
+ if [ $(MB_OF_MEMORY) -le 512 ] ; then \
+ echo "true"; \
+ else \
+ echo "false"; \
+ fi)
+ MAX_VM_MEMORY := $(shell \
+ if [ $(MB_OF_MEMORY) -le 1024 ] ; then \
+ expr $(MB_OF_MEMORY) '-' 128 2> $(DEV_NULL) ; \
+ else \
+ echo "896"; \
+ fi)
+ MIN_VM_MEMORY := $(shell \
+ if [ $(MAX_VM_MEMORY) -le 128 ] ; then \
+ expr $(MAX_VM_MEMORY) '-' 8 2> $(DEV_NULL) ; \
+ else \
+ echo "128"; \
+ fi)
+else
+ MB_OF_MEMORY := unknown
+ LOW_MEMORY_MACHINE := true
+ MAX_VM_MEMORY := 384
+ MIN_VM_MEMORY := 128
+endif
+
# If blanks in the username, use the first 4 words and pack them together
_USER1:=$(subst ', ,$(_USER))
_USER2:=$(subst ", ,$(_USER1))
--- a/make/common/shared/Sanity.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/common/shared/Sanity.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -105,13 +105,21 @@ UNZIP_VER :=$(call GetVersion,"$(_UNZIP
UNZIP_VER :=$(call GetVersion,"$(_UNZIP_VER)")
BOOT_VER :=$(call GetVersion,"$(_BOOT_VER)")
-REQUIRED_ANT_VER := 1.6.3
-_ANT_VER :=$(shell $(ANT) -version 2>&1 )
-ANT_VER :=$(call GetVersion,"$(_ANT_VER)")
-
-REQUIRED_FINDBUGS_VER := 1.1
-_FINDBUGS_VER :=$(shell $(FINDBUGS) -version 2>&1 )
-FINDBUGS_VER :=$(call GetVersion,"$(_FINDBUGS_VER)")
+REQUIRED_ANT_VER := 1.6.3
+ifeq ($(ANT_HOME),)
+ _ANT_VER:=$(shell JAVACMD="$(BOOTDIR)/bin/java" $(ANT) -version 2>&1 )
+else
+ _ANT_VER:=$(shell JAVACMD="$(BOOTDIR)/bin/java" ANT_HOME="$(ANT_HOME)" $(ANT) -version 2>&1 )
+endif
+ANT_VER:=$(call GetVersion,"$(_ANT_VER)")
+
+REQUIRED_FINDBUGS_VER := 1.2
+ifeq ($(FINDBUGS_HOME),)
+ _FINDBUGS_VER:=$(shell $(FINDBUGS) -javahome "$(BOOTDIR)" -textui -version 2>&1 )
+else
+ _FINDBUGS_VER:=$(shell FINDBUGS_HOME="$(FINDBUGS_HOME)" $(FINDBUGS) -javahome "$(BOOTDIR)" -textui -version 2>&1 )
+endif
+FINDBUGS_VER:=$(call GetVersion,"$(_FINDBUGS_VER)")
ifdef ALT_BINDIR
ALT_BINDIR_VERSION := $(shell $(ALT_BINDIR)/java$(EXE_SUFFIX) -version 2>&1 | $(NAWK) -F'"' '{ print $$2 }')
@@ -1564,31 +1572,31 @@ endif
endif
-######################################################
-# SECURITY_BASELINE_142 test
-######################################################
-security_baseline_142:
-ifeq ($(PLATFORM), windows)
- @if [ -z "$(SECURITY_BASELINE_142)" ]; then \
- $(ECHO) "WARNING: Your SECURITY_BASELINE_142 setting is empty.\n" \
- " Setting it to the default value of 1.4.2_10.\n" \
- " It is recommended to set SECURITY_BASELINE_142.\n" \
- "" >> $(WARNING_FILE) ; \
- fi
-endif
-
-######################################################
-# SECURITY_BASELINE_150 test
-######################################################
-security_baseline_150:
-ifeq ($(PLATFORM), windows)
- @if [ -z "$(SECURITY_BASELINE_150)" ]; then \
- $(ECHO) "WARNING: Your SECURITY_BASELINE_150 setting is empty.\n" \
- " Setting it to the default value of 1.5.0_07.\n" \
- " It is recommended to set SECURITY_BASELINE_150.\n" \
- "" >> $(WARNING_FILE) ; \
- fi
-endif
+######################################################
+# SECURITY_BASELINE_142 test
+######################################################
+security_baseline_142:
+ifeq ($(PLATFORM), windows)
+ @if [ -z "$(SECURITY_BASELINE_142)" ]; then \
+ $(ECHO) "WARNING: Your SECURITY_BASELINE_142 setting is empty.\n" \
+ " Setting it to the default value of 1.4.2_10.\n" \
+ " It is recommended to set SECURITY_BASELINE_142.\n" \
+ "" >> $(WARNING_FILE) ; \
+ fi
+endif
+
+######################################################
+# SECURITY_BASELINE_150 test
+######################################################
+security_baseline_150:
+ifeq ($(PLATFORM), windows)
+ @if [ -z "$(SECURITY_BASELINE_150)" ]; then \
+ $(ECHO) "WARNING: Your SECURITY_BASELINE_150 setting is empty.\n" \
+ " Setting it to the default value of 1.5.0_07.\n" \
+ " It is recommended to set SECURITY_BASELINE_150.\n" \
+ "" >> $(WARNING_FILE) ; \
+ fi
+endif
######################################################
--- a/make/docs/CORE_PKGS.gmk Thu Apr 10 13:57:15 2008 -0700
+++ b/make/docs/CORE_PKGS.gmk Mon Apr 14 11:34:15 2008 -0700
@@ -49,8 +49,8 @@ EXCLUDE_PKGS = \
# ACTIVE_JSR_PKGS are packages that are part of an active JSR process--
# one that is doing its own review. These packages are not included when
# creating diff pages for the platform's JCP process.
-#
-# (see /java/pubs/apisrc/jdk/6.0/beta/make/docs/active_jsr_pkgs)
+#
+# (see /java/pubs/apisrc/jdk/6.0/beta/make/docs/active_jsr_pkgs)
# Note:
# This is a list of regular expressions. So foo.* matches "foo" and "foo.bar".
#
@@ -72,13 +72,13 @@ ACTIVE_JSR_PKGS= \
# CORE_PKGS is the list of packages that form the
# Java API Specification.
#
-### ***IMPORTANT NOTE***
-### There is also a "REGEXP" variable in the docs/makefile that
-### determines which table the packages go in on the main page.
-### Currently, there is only table ("Platform Packages") and
-### everything goes in it, so REGEXP is "*". But if that policy
-### changes, packages added will need to be reflected in that
-### list of wildcard expressions, as well.
+### ***IMPORTANT NOTE***
+### There is also a "REGEXP" variable in the docs/makefile that
+### determines which table the packages go in on the main page.
+### Currently, there is only table ("Platform Packages") and
+### everything goes in it, so REGEXP is "*". But if that policy
+### changes, packages added will need to be reflected in that
+### list of wildcard expressions, as well.
###
CORE_PKGS = \
java.applet \
--- a/make/java/awt/Makefile Thu Apr 10 13:57:15 2008 -0700
+++ b/make/java/awt/Makefile Mon Apr 14 11:34:15 2008 -0700
@@ -28,23 +28,11 @@ PRODUCT = sun
PRODUCT = sun
include $(BUILDDIR)/common/Defs.gmk
-# WARNING: Make sure the OPENJDK plugs are up-to-date, see make/common/internal/BinaryPlugs.gmk
#
# Files
#
AUTO_FILES_JAVA_DIRS = java/awt sun/awt/geom
-
-#
-# Specific to OPENJDK
-#
-ifdef OPENJDK
-
-build: import-binary-plug-awt-classes
-
-include $(BUILDDIR)/common/internal/BinaryPlugs.gmk
-
-endif
build: properties cursors
--- a/make/java/java/mapfile-vers Thu Apr 10 13:57:15 2008 -0700
+++ b/make/java/java/mapfile-vers Mon Apr 14 11:34:15 2008 -0700
@@ -85,7 +85,6 @@ SUNWprivate_1.1 {
Java_java_io_FileOutputStream_close0;
Java_java_io_FileOutputStream_initIDs;
Java_java_io_FileOutputStream_open;
- Java_java_io_FileOutputStream_openAppend;
Java_java_io_FileOutputStream_write;
Java_java_io_FileOutputStream_writeBytes;
Java_java_io_FileSystem_getFileSystem;
--- a/make/java/jli/Makefile Thu Apr 10 13:57:15 2008 -0700
+++ b/make/java/jli/Makefile Mon Apr 14 11:34:15 2008 -0700
@@ -107,6 +107,7 @@ endif # PLATFORM
ifeq ($(PLATFORM), windows)
EXTRA_LIBS = advapi32.lib \
+ comctl32.lib \
user32.lib
JAVALIB =
--- a/make/java/main/java/Makefile Thu Apr 10 13:57:15 2008 -0700
+++ b/make/java/main/java/Makefile Mon Apr 14 11:34:15 2008 -0700
@@ -43,7 +43,7 @@ include $(BUILDDIR)/common/Defs.gmk
# Override the default version info with our own resource file (see 5106536)
ifeq ($(PLATFORM), windows)
-LDLIBS_COMMON += user32.lib
+LDLIBS_COMMON += user32.lib comctl32.lib
ifdef OPENJDK
RC_FLAGS += -i "$(PLATFORM_SRC)/resource/icons"
else
--- a/make/java/main/javaw/Makefile Thu Apr 10 13:57:15 2008 -0700
+++ b/make/java/main/javaw/Makefile Mon Apr 14 11:34:15 2008 -0700
@@ -46,7 +46,7 @@ include $(BUILDDIR)/common/Defs.gmk
include $(BUILDDIR)/common/Defs.gmk
OTHER_CPPFLAGS += -DJAVAW
-LDLIBS_COMMON += user32.lib
+LDLIBS_COMMON += user32.lib comctl32.lib
# Override the default version info with our own resource file (see 5106536)
ifeq ($(PLATFORM), windows)
--- a/make/java/nio/Makefile Thu Apr 10 13:57:15 2008 -0700
+++ b/make/java/nio/Makefile Mon Apr 14 11:34:15 2008 -0700
@@ -191,7 +191,7 @@ sources: $(SPP) $(FILES_genout)
GEN_BUFFER_SH = genBuffer.sh
-GEN_BUFFER_CMD = SPP="$(SPP_CMD)" NAWK=$(NAWK) SED=$(SED) \
+GEN_BUFFER_CMD = SPP="$(SPP_CMD)" NAWK=$(NAWK) SED=$(SED) SH=$(SH) \
$(SH) $(GEN_BUFFER_SH)
# Public abstract buffer classes
@@ -582,7 +582,7 @@ GEN_BUFFER_CMD = SPP="$(SPP_CMD)" NAWK=$
GEN_CODER_SH = genCoder.sh
-GEN_CODER_CMD = SPP="$(SPP_CMD)" SED=$(SED) NAWK=$(NAWK) $(SH) $(GEN_CODER_SH)
+GEN_CODER_CMD = SPP="$(SPP_CMD)" SED=$(SED) NAWK=$(NAWK) SH=$(SH) $(SH) $(GEN_CODER_SH)
$(CS_GEN)/CharsetDecoder.java: $(CS_SRC)/Charset-X-Coder.java $(GEN_CODER_SH)
$(prep-target)
@@ -602,7 +602,7 @@ GEN_CODER_CMD = SPP="$(SPP_CMD)" SED=$(S
GEN_EX_SH = genExceptions.sh
-GEN_EX_CMD = NAWK=$(NAWK) $(SHELL) $(GEN_EX_SH)
+GEN_EX_CMD = NAWK=$(NAWK) SH=$(SH) $(SH) $(GEN_EX_SH)
$(CH_GEN)/%Exception.java: genExceptions.sh $(CH_SRC)/exceptions
$(prep-target)
@@ -635,8 +635,8 @@ HASHER_JARFILE = $(BUILDTOOLJARDIR)/hash
$(HASHER_JARFILE) $(SCS_SRC)/standard-charsets
$(prep-target)
@$(RM) $@.temp
- NAWK=$(NAWK) TEMPDIR=$(TEMPDIR) \
+ NAWK=$(NAWK) TEMPDIR=$(TEMPDIR) SH=$(SH) \
HASHER="$(BOOT_JAVA_CMD) -jar $(HASHER_JARFILE)" \
- $(SHELL) -e genCharsetProvider.sh $(SCS_SRC)/standard-charsets $(SCS_GEN)
+ $(SH) -e genCharsetProvider.sh $(SCS_SRC)/standard-charsets $(SCS_GEN)
.PHONY: sources
--- a/make/java/nio/genCharsetProvider.sh Thu Apr 10 13:57:15 2008 -0700
+++ b/make/java/nio/genCharsetProvider.sh Mon Apr 14 11:34:15 2008 -0700
@@ -48,7 +48,7 @@ echo '-->' $OUT
# Header
#
-$SHELL addNotices.sh "$COPYRIGHT_YEARS" > $OUT
+$SH ./addNotices.sh "$COPYRIGHT_YEARS" > $OUT
cat <<__END__ >>$OUT
--- a/make/java/nio/genExceptions.sh Thu Apr 10 13:57:15 2008 -0700
+++ b/make/java/nio/genExceptions.sh Mon Apr 14 11:34:15 2008 -0700
@@ -41,7 +41,7 @@ gen() {
echo '-->' $DST/$ID.java
out=$DST/${ID}.java
- $SHELL addNotices.sh "$COPYRIGHT_YEARS" > $out
+ $SH ./addNotices.sh "$COPYRIGHT_YEARS" > $out
cat >>$out <<__END__
--- a/make/sun/splashscreen/Makefile Thu Apr 10 13:57:15 2008 -0700
+++ b/make/sun/splashscreen/Makefile Mon Apr 14 11:34:15 2008 -0700
@@ -85,3 +85,13 @@ CPPFLAGS += -I$(PLATFORM_SRC)/native/$(P
CPPFLAGS += -I$(PLATFORM_SRC)/native/$(PKGDIR)/splashscreen -I$(SHARE_SRC)/native/$(PKGDIR)/splashscreen
CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/image/jpeg -I$(SHARE_SRC)/native/java/util/zip/zlib-1.1.3
+ifeq ($(PLATFORM), linux)
+ ifeq ($(ARCH_DATA_MODEL), 64)
+ # 64-bit gcc has problems compiling MMX instructions.
+ # Google it for more details. Possibly the newer versions of
+ # the PNG-library and/or the new compiler will not need this
+ # option in the future.
+ CPPFLAGS += -DPNG_NO_MMX_CODE
+ endif
+endif
+
--- a/make/sun/xawt/Makefile Thu Apr 10 13:57:15 2008 -0700
+++ b/make/sun/xawt/Makefile Mon Apr 14 11:34:15 2008 -0700
@@ -1,5 +1,5 @@
#
-# Copyright 2002-2007 Sun Microsystems, Inc. All Rights Reserved.
+# Copyright 2002-2008 Sun Microsystems, Inc. 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
@@ -246,7 +246,7 @@ XLIBTYPES=$(PLATFORM_SRC)/classes/sun/aw
@if [ "$(DOCOMPARE)$(suffix $@)" = "true.64" ]; then \
$(ECHO) COMPARING $@ and $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \
$(DIFF) $@ $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \
- fi
+ fi
$(TEMPDIR)/.gen.wrappers: $(SIZES) $(WRAPPER_GENERATOR_CLASS) $(XLIBTYPES)
$(BOOT_JAVA_CMD) -cp $(WRAPPER_GENERATOR_TEMPDIR) WrapperGenerator \
@@ -256,10 +256,11 @@ touch.wrappers: $(TEMPDIR)/.gen.wrappers
$(MKDIR) -p $(TEMPDIR)
$(TOUCH) $(TEMPDIR)/.gen.wrappers
-generated.clean:
+generated.clean:
$(RM) -r $(WRAPPER_GENERATOR_TEMPDIR)
$(RM) -r $(WRAPPER_GENERATOR_DIR)
$(RM) -r $(GEN_DIR)/*.java
+ $(RM) -r $(TEMPDIR)/.gen_icons
ifdef OPENJDK
ICONS_PATH_PREFIX=$(PLATFORM_SRC)
--- a/make/tools/freetypecheck/Makefile Thu Apr 10 13:57:15 2008 -0700
+++ b/make/tools/freetypecheck/Makefile Mon Apr 14 11:34:15 2008 -0700
@@ -38,7 +38,14 @@ FT_TEST_PATH = $(TEMPDIR)/$(FT_TEST)
all: $(FT_TEST_PATH)
-FT_OPTIONS = -I$(FT_HEADERS) -I$(FT_HEADERS)/freetype2
+# Start with CFLAGS (which gets us the required -xarch setting on solaris)
+ifeq ($(PLATFORM), windows)
+ FT_OPTIONS =
+else
+ FT_OPTIONS = $(CFLAGS)
+endif
+
+FT_OPTIONS += -I$(FT_HEADERS) -I$(FT_HEADERS)/freetype2
FT_OPTIONS += $(XARCH)
#add runtime library search path
--- a/make/tools/freetypecheck/freetypecheck.c Thu Apr 10 13:57:15 2008 -0700
+++ b/make/tools/freetypecheck/freetypecheck.c Mon Apr 14 11:34:15 2008 -0700
@@ -26,13 +26,16 @@
/* Test program for freetype sanity check.
Prints "Failed" messages to STDOUT if check fails. */
+#include <stdio.h>
+#include <string.h>
+
#include "ft2build.h"
#include FT_FREETYPE_H
#define QUOTEMACRO(x) QUOTEME(x)
#define QUOTEME(x) #x
-int main(char** argv, int argc) {
+int main(int argc, char** argv) {
char v[50];
FT_Int major, minor, patch;
FT_Library library;
--- a/make/tools/src/build/tools/jdwpgen/CommandNode.java Thu Apr 10 13:57:15 2008 -0700
+++ b/make/tools/src/build/tools/jdwpgen/CommandNode.java Mon Apr 14 11:34:15 2008 -0700
@@ -32,9 +32,9 @@ class CommandNode extends AbstractComman
void constrain(Context ctx) {
if (components.size() == 3) {
- Node out = (Node)components.get(0);
- Node reply = (Node)components.get(1);
- Node error = (Node)components.get(2);
+ Node out = components.get(0);
+ Node reply = components.get(1);
+ Node error = components.get(2);
if (!(out instanceof OutNode)) {
error("Expected 'Out' item, got: " + out);
}
@@ -45,7 +45,7 @@ class CommandNode extends AbstractComman
error("Expected 'ErrorSet' item, got: " + error);
}
} else if (components.size() == 1) {
- Node evt = (Node)components.get(0);
+ Node evt = components.get(0);
if (!(evt instanceof EventNode)) {
error("Expected 'Event' item, got: " + evt);
}
--- a/make/tools/src/build/tools/jdwpgen/ConstantSetNode.java Thu Apr 10 13:57:15 2008 -0700
+++ b/make/tools/src/build/tools/jdwpgen/ConstantSetNode.java Mon Apr 14 11:34:15 2008 -0700
@@ -98,7 +98,7 @@ class ConstantSetNode extends AbstractNa
if (constantMap == null) {
return "";
}
- String com = (String) constantMap.get(key);
+ String com = constantMap.get(key);
if(com == null){
return "";
} else {
--- a/make/tools/src/build/tools/jdwpgen/RepeatNode.java Thu Apr 10 13:57:15 2008 -0700
+++ b/make/tools/src/build/tools/jdwpgen/RepeatNode.java Mon Apr 14 11:34:15 2008 -0700
@@ -37,7 +37,7 @@ class RepeatNode extends AbstractTypeNod
if (components.size() != 1) {
error("Repeat must have exactly one member, use Group for more");
}
- member = (Node)(components.get(0));
+ member = components.get(0);
if (!(member instanceof TypeNode)) {
error("Repeat member must be type specifier");
}
--- a/src/share/bin/java.c Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/bin/java.c Mon Apr 14 11:34:15 2008 -0700
@@ -205,9 +205,7 @@ JLI_Launch(int argc, char ** argv,
_wc_enabled = cpwildcard;
_ergo_policy = ergo;
- if (javaw == JNI_TRUE)
- SetJavaw();
-
+ InitLauncher(javaw);
DumpState();
/*
--- a/src/share/bin/java.h Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/bin/java.h Mon Apr 14 11:34:15 2008 -0700
@@ -172,7 +172,6 @@ const char* GetFullVersion();
const char* GetFullVersion();
jboolean IsJavaArgs();
jboolean IsJavaw();
-void SetJavaw();
jint GetErgoPolicy();
jboolean ServerClassMachine();
@@ -180,5 +179,9 @@ static int ContinueInNewThread(Invocatio
static int ContinueInNewThread(InvocationFunctions* ifn, int argc, char** argv,
char* jarfile, char* classname, int ret);
+/*
+ * Initialize platform specific settings
+ */
+void InitLauncher(jboolean javaw);
#endif /* _JAVA_H_ */
--- a/src/share/bin/main.c Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/bin/main.c Mon Apr 14 11:34:15 2008 -0700
@@ -64,8 +64,6 @@ main(int argc, char ** argv)
margv = argv;
#endif /* JAVAW */
- JLI_SetTraceLauncher();
-
return JLI_Launch(margc, margv,
sizeof(const_jargs) / sizeof(char *), const_jargs,
sizeof(const_appclasspath) / sizeof(char *), const_appclasspath,
--- a/src/share/classes/com/sun/crypto/provider/PBKDF2KeyImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/crypto/provider/PBKDF2KeyImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -34,6 +34,7 @@ import java.security.GeneralSecurityExce
import java.security.GeneralSecurityException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
+import java.security.NoSuchProviderException;
import java.security.spec.InvalidKeySpecException;
import javax.crypto.Mac;
import javax.crypto.SecretKey;
@@ -107,11 +108,16 @@ final class PBKDF2KeyImpl implements jav
throw new InvalidKeySpecException("Key length is negative");
}
try {
- this.prf = Mac.getInstance(prfAlgo, new SunJCE());
+ this.prf = Mac.getInstance(prfAlgo, "SunJCE");
} catch (NoSuchAlgorithmException nsae) {
// not gonna happen; re-throw just in case
InvalidKeySpecException ike = new InvalidKeySpecException();
ike.initCause(nsae);
+ throw ike;
+ } catch (NoSuchProviderException nspe) {
+ // Again, not gonna happen; re-throw just in case
+ InvalidKeySpecException ike = new InvalidKeySpecException();
+ ike.initCause(nspe);
throw ike;
}
this.key = deriveKey(prf, passwdBytes, salt, iterCount, keyLength);
--- a/src/share/classes/com/sun/inputmethods/internal/indicim/resources/DisplayNames.properties Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/inputmethods/internal/indicim/resources/DisplayNames.properties Mon Apr 14 11:34:15 2008 -0700
@@ -1,5 +1,6 @@
-#
-# Default Input method display names for Indic input methods
-#
-
-DisplayName.Devanagari = Devanagari Input Method
+#
+# Default Input method display names for Indic input methods
+#
+
+DisplayName.Devanagari = Devanagari Input Method
+
--- a/src/share/classes/com/sun/inputmethods/internal/thaiim/resources/DisplayNames.properties Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/inputmethods/internal/thaiim/resources/DisplayNames.properties Mon Apr 14 11:34:15 2008 -0700
@@ -1,5 +1,6 @@
-#
-# Default Input method display names for Thai input methods
-#
-
-DisplayName.Thai = Thai Input Method
+#
+# Default Input method display names for Thai input methods
+#
+
+DisplayName.Thai = Thai Input Method
+
--- a/src/share/classes/com/sun/jmx/mbeanserver/Introspector.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/jmx/mbeanserver/Introspector.java Mon Apr 14 11:34:15 2008 -0700
@@ -43,6 +43,13 @@ import javax.management.NotCompliantMBea
import javax.management.NotCompliantMBeanException;
import com.sun.jmx.mbeanserver.Util;
+import com.sun.jmx.remote.util.EnvHelp;
+import java.beans.BeanInfo;
+import java.beans.PropertyDescriptor;
+import java.lang.reflect.Array;
+import java.lang.reflect.InvocationTargetException;
+import javax.management.AttributeNotFoundException;
+import javax.management.openmbean.CompositeData;
/**
* This class contains the methods for performing all the tests needed to verify
@@ -482,4 +489,33 @@ public class Introspector {
return null;
}
+
+ public static Object elementFromComplex(Object complex, String element)
+ throws AttributeNotFoundException {
+ try {
+ if (complex.getClass().isArray() && element.equals("length")) {
+ return Array.getLength(complex);
+ } else if (complex instanceof CompositeData) {
+ return ((CompositeData) complex).get(element);
+ } else {
+ // Java Beans introspection
+ //
+ BeanInfo bi = java.beans.Introspector.getBeanInfo(complex.getClass());
+ PropertyDescriptor[] pds = bi.getPropertyDescriptors();
+ for (PropertyDescriptor pd : pds)
+ if (pd.getName().equals(element))
+ return pd.getReadMethod().invoke(complex);
+ throw new AttributeNotFoundException(
+ "Could not find the getter method for the property " +
+ element + " using the Java Beans introspector");
+ }
+ } catch (InvocationTargetException e) {
+ throw new IllegalArgumentException(e);
+ } catch (AttributeNotFoundException e) {
+ throw e;
+ } catch (Exception e) {
+ throw EnvHelp.initCause(
+ new AttributeNotFoundException(e.getMessage()), e);
+ }
+ }
}
--- a/src/share/classes/com/sun/org/apache/xml/internal/security/resource/config.dtd Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/org/apache/xml/internal/security/resource/config.dtd Mon Apr 14 11:34:15 2008 -0700
@@ -1,73 +1,73 @@
-<?xml version='1.0' encoding='UTF-8' ?>
-
-<!ELEMENT Configuration (CanonicalizationMethods , TransformAlgorithms , JCEAlgorithmMappings , Log4J , ResourceBundles , UnitTests , ResourceResolvers , KeyResolvers)>
-
-<!ATTLIST Configuration xmlns CDATA #FIXED 'http://www.xmlsecurity.org/NS/#configuration'
-target CDATA #IMPLIED>
-<!ELEMENT CanonicalizationMethods (CanonicalizationMethod+)>
-
-<!ATTLIST CanonicalizationMethods JAVACLASS CDATA #FIXED 'com.sun.org.apache.xml.internal.security.c14n.Canonicalizer' >
-<!ELEMENT CanonicalizationMethod EMPTY>
-
-<!ATTLIST CanonicalizationMethod URI CDATA #REQUIRED
- JAVACLASS CDATA #REQUIRED >
-<!ELEMENT TransformAlgorithms (TransformAlgorithm+)>
-
-<!ATTLIST TransformAlgorithms JAVACLASS CDATA #FIXED 'com.sun.org.apache.xml.internal.security.transforms.Transform' >
-<!ELEMENT TransformAlgorithm EMPTY>
-
-<!ATTLIST TransformAlgorithm URI CDATA #REQUIRED
- JAVACLASS CDATA #REQUIRED >
-<!ELEMENT JCEAlgorithmMappings (Providers , Algorithms)>
-
-<!ELEMENT Providers (Provider+)>
-
-<!ELEMENT Provider EMPTY>
-
-<!ATTLIST Provider Id ID #REQUIRED
- Class CDATA #REQUIRED
- Info CDATA #IMPLIED
- ProviderURL CDATA #IMPLIED >
-<!ELEMENT Algorithms (Algorithm+)>
-
-<!ELEMENT Algorithm (ProviderAlgo+)>
-
-<!ATTLIST Algorithm URI CDATA #REQUIRED
- Description CDATA #IMPLIED
- AlgorithmClass CDATA #IMPLIED >
-<!ELEMENT ProviderAlgo EMPTY>
-
-<!ATTLIST ProviderAlgo ProviderId IDREF #REQUIRED
- JCEName CDATA #REQUIRED
- JCEAlias CDATA #IMPLIED >
-<!ELEMENT Log4J EMPTY>
-
-<!ATTLIST Log4J configFile CDATA 'data/log4j.xml' >
-<!ELEMENT ResourceBundles (ResourceBundle+)>
-
-<!ATTLIST ResourceBundles defaultLanguageCode CDATA 'de'
- defaultCountryCode CDATA 'DE' >
-<!ELEMENT ResourceBundle EMPTY>
-
-<!ATTLIST ResourceBundle LanguageCode CDATA #REQUIRED
- CountryCode CDATA #REQUIRED
- LOCATION CDATA #REQUIRED >
-<!ELEMENT UnitTests (UnitTest+)>
-
-<!ATTLIST UnitTests JAVACLASS CDATA #FIXED 'com.sun.org.apache.xml.internal.security.test.AllTests' >
-<!ELEMENT ResourceResolvers (Resolver+)>
-
-<!ELEMENT Resolver EMPTY>
-
-<!ATTLIST Resolver JAVACLASS CDATA #REQUIRED
- DESCRIPTION CDATA #IMPLIED >
-<!ELEMENT KeyResolvers (KeyResolver+)>
-<!ATTLIST KeyResolvers JAVACLASS CDATA #FIXED 'com.sun.org.apache.xml.internal.security.keys.KeyResolver' >
-
-<!ELEMENT KeyResolver EMPTY>
-
-<!ATTLIST KeyResolver URI CDATA #REQUIRED
- JAVACLASS CDATA #REQUIRED >
-<!ELEMENT UnitTest (#PCDATA)>
-
-<!ATTLIST UnitTest JAVACLASS CDATA #REQUIRED >
+<?xml version='1.0' encoding='UTF-8' ?>
+
+<!ELEMENT Configuration (CanonicalizationMethods , TransformAlgorithms , JCEAlgorithmMappings , Log4J , ResourceBundles , UnitTests , ResourceResolvers , KeyResolvers)>
+
+<!ATTLIST Configuration xmlns CDATA #FIXED 'http://www.xmlsecurity.org/NS/#configuration'
+target CDATA #IMPLIED>
+<!ELEMENT CanonicalizationMethods (CanonicalizationMethod+)>
+
+<!ATTLIST CanonicalizationMethods JAVACLASS CDATA #FIXED 'com.sun.org.apache.xml.internal.security.c14n.Canonicalizer' >
+<!ELEMENT CanonicalizationMethod EMPTY>
+
+<!ATTLIST CanonicalizationMethod URI CDATA #REQUIRED
+ JAVACLASS CDATA #REQUIRED >
+<!ELEMENT TransformAlgorithms (TransformAlgorithm+)>
+
+<!ATTLIST TransformAlgorithms JAVACLASS CDATA #FIXED 'com.sun.org.apache.xml.internal.security.transforms.Transform' >
+<!ELEMENT TransformAlgorithm EMPTY>
+
+<!ATTLIST TransformAlgorithm URI CDATA #REQUIRED
+ JAVACLASS CDATA #REQUIRED >
+<!ELEMENT JCEAlgorithmMappings (Providers , Algorithms)>
+
+<!ELEMENT Providers (Provider+)>
+
+<!ELEMENT Provider EMPTY>
+
+<!ATTLIST Provider Id ID #REQUIRED
+ Class CDATA #REQUIRED
+ Info CDATA #IMPLIED
+ ProviderURL CDATA #IMPLIED >
+<!ELEMENT Algorithms (Algorithm+)>
+
+<!ELEMENT Algorithm (ProviderAlgo+)>
+
+<!ATTLIST Algorithm URI CDATA #REQUIRED
+ Description CDATA #IMPLIED
+ AlgorithmClass CDATA #IMPLIED >
+<!ELEMENT ProviderAlgo EMPTY>
+
+<!ATTLIST ProviderAlgo ProviderId IDREF #REQUIRED
+ JCEName CDATA #REQUIRED
+ JCEAlias CDATA #IMPLIED >
+<!ELEMENT Log4J EMPTY>
+
+<!ATTLIST Log4J configFile CDATA 'data/log4j.xml' >
+<!ELEMENT ResourceBundles (ResourceBundle+)>
+
+<!ATTLIST ResourceBundles defaultLanguageCode CDATA 'de'
+ defaultCountryCode CDATA 'DE' >
+<!ELEMENT ResourceBundle EMPTY>
+
+<!ATTLIST ResourceBundle LanguageCode CDATA #REQUIRED
+ CountryCode CDATA #REQUIRED
+ LOCATION CDATA #REQUIRED >
+<!ELEMENT UnitTests (UnitTest+)>
+
+<!ATTLIST UnitTests JAVACLASS CDATA #FIXED 'com.sun.org.apache.xml.internal.security.test.AllTests' >
+<!ELEMENT ResourceResolvers (Resolver+)>
+
+<!ELEMENT Resolver EMPTY>
+
+<!ATTLIST Resolver JAVACLASS CDATA #REQUIRED
+ DESCRIPTION CDATA #IMPLIED >
+<!ELEMENT KeyResolvers (KeyResolver+)>
+<!ATTLIST KeyResolvers JAVACLASS CDATA #FIXED 'com.sun.org.apache.xml.internal.security.keys.KeyResolver' >
+
+<!ELEMENT KeyResolver EMPTY>
+
+<!ATTLIST KeyResolver URI CDATA #REQUIRED
+ JAVACLASS CDATA #REQUIRED >
+<!ELEMENT UnitTest (#PCDATA)>
+
+<!ATTLIST UnitTest JAVACLASS CDATA #REQUIRED >
--- a/src/share/classes/com/sun/org/apache/xml/internal/security/resource/config.xml Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/org/apache/xml/internal/security/resource/config.xml Mon Apr 14 11:34:15 2008 -0700
@@ -1,380 +1,380 @@
-<?xml version="1.0"?>
-<!--
-<!DOCTYPE Configuration SYSTEM "config.dtd">
--->
-<!-- This configuration file is used for configuration of the com.sun.org.apache.xml.internal.security package -->
-<Configuration target="com.sun.org.apache.xml.internal.security" xmlns="http://www.xmlsecurity.org/NS/#configuration">
- <CanonicalizationMethods>
- <CanonicalizationMethod URI="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"
- JAVACLASS="com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer20010315OmitComments" />
- <CanonicalizationMethod URI="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"
- JAVACLASS="com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer20010315WithComments" />
-
- <CanonicalizationMethod URI="http://www.w3.org/2001/10/xml-exc-c14n#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer20010315ExclOmitComments"/>
- <CanonicalizationMethod URI="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"
- JAVACLASS="com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer20010315ExclWithComments"/>
- </CanonicalizationMethods>
- <TransformAlgorithms>
- <!-- Base64 -->
- <TransformAlgorithm URI="http://www.w3.org/2000/09/xmldsig#base64"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformBase64Decode" />
- <!-- c14n omitting comments -->
- <TransformAlgorithm URI="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformC14N" />
- <!-- c14n with comments -->
- <TransformAlgorithm URI="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformC14NWithComments" />
- <!-- exclusive c14n omitting comments -->
- <TransformAlgorithm URI="http://www.w3.org/2001/10/xml-exc-c14n#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformC14NExclusive" />
- <!-- exclusive c14n with comments -->
- <TransformAlgorithm URI="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformC14NExclusiveWithComments" />
-
- <!-- XPath transform -->
- <TransformAlgorithm URI="http://www.w3.org/TR/1999/REC-xpath-19991116"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformXPath" />
- <!-- enveloped signature -->
- <TransformAlgorithm URI="http://www.w3.org/2000/09/xmldsig#enveloped-signature"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformEnvelopedSignature" />
- <!-- XSLT -->
- <TransformAlgorithm URI="http://www.w3.org/TR/1999/REC-xslt-19991116"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformXSLT" />
- <!-- XPath version 2 -->
- <TransformAlgorithm URI="http://www.w3.org/2002/04/xmldsig-filter2"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformXPath2Filter" />
- <!-- XPath version 2b -->
- <TransformAlgorithm URI="http://www.w3.org/2002/06/xmldsig-filter2"
- JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformXPath2Filter" />
- </TransformAlgorithms>
- <SignatureAlgorithms>
- <SignatureAlgorithm URI="http://www.w3.org/2000/09/xmldsig#dsa-sha1"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureDSA" />
- <SignatureAlgorithm URI="http://www.w3.org/2000/09/xmldsig#rsa-sha1"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSASHA1" />
- <SignatureAlgorithm URI="http://www.w3.org/2000/09/xmldsig#hmac-sha1"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacSHA1" />
-
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-md5"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSAMD5" />
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-ripemd160"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSARIPEMD160" />
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSASHA256" />
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha384"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSASHA384" />
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha512"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSASHA512" />
-
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-md5"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacMD5" />
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacRIPEMD160" />
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacSHA256" />
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacSHA384" />
- <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"
- JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacSHA512" />
- </SignatureAlgorithms>
- <JCEAlgorithmMappings>
- <Algorithms>
- <!-- MessageDigest Algorithms -->
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#md5"
- Description="MD5 message digest from RFC 1321"
- AlgorithmClass="MessageDigest"
- RequirementLevel="NOT RECOMMENDED"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="MD5"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#ripemd160"
- Description="RIPEMD-160 message digest"
- AlgorithmClass="MessageDigest"
- RequirementLevel="OPTIONAL"
- JCEName="RIPEMD160"/>
-
- <Algorithm URI="http://www.w3.org/2000/09/xmldsig#sha1"
- Description="SHA-1 message digest"
- AlgorithmClass="MessageDigest"
- RequirementLevel="REQUIRED"
- JCEName="SHA-1"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#sha256"
- Description="SHA-1 message digest with 256 bit"
- AlgorithmClass="MessageDigest"
- RequirementLevel="RECOMMENDED"
- JCEName="SHA-256"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#sha384"
- Description="SHA message digest with 384 bit"
- AlgorithmClass="MessageDigest"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="SHA-384"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#sha512"
- Description="SHA-1 message digest with 512 bit"
- AlgorithmClass="MessageDigest"
- RequirementLevel="OPTIONAL"
- JCEName="SHA-512"/>
-
- <!-- Signature Algorithms -->
- <Algorithm URI="http://www.w3.org/2000/09/xmldsig#dsa-sha1"
- Description="Digital Signature Algorithm with SHA-1 message digest"
- AlgorithmClass="Signature"
- RequirementLevel="REQUIRED"
- JCEName="SHA1withDSA"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-md5"
- Description="RSA Signature with MD5 message digest"
- AlgorithmClass="Signature"
- RequirementLevel="NOT RECOMMENDED"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="MD5withRSA"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-ripemd160"
- Description="RSA Signature with RIPEMD-160 message digest"
- AlgorithmClass="Signature"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="RIPEMD160withRSA"/>
-
- <Algorithm URI="http://www.w3.org/2000/09/xmldsig#rsa-sha1"
- Description="RSA Signature with SHA-1 message digest"
- AlgorithmClass="Signature"
- RequirementLevel="RECOMMENDED"
- JCEName="SHA1withRSA"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"
- Description="RSA Signature with SHA-256 message digest"
- AlgorithmClass="Signature"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="SHA256withRSA"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha384"
- Description="RSA Signature with SHA-384 message digest"
- AlgorithmClass="Signature"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="SHA384withRSA"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha512"
- Description="RSA Signature with SHA-512 message digest"
- AlgorithmClass="Signature"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="SHA512withRSA"/>
-
- <!-- MAC Algorithms -->
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-md5"
- Description="Message Authentication code using MD5"
- AlgorithmClass="Mac"
- RequirementLevel="NOT RECOMMENDED"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="HmacMD5"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160"
- Description="Message Authentication code using RIPEMD-160"
- AlgorithmClass="Mac"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="HMACRIPEMD160"/>
-
- <Algorithm URI="http://www.w3.org/2000/09/xmldsig#hmac-sha1"
- Description="Message Authentication code using SHA1"
- AlgorithmClass="Mac"
- RequirementLevel="REQUIRED"
- JCEName="HmacSHA1"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"
- Description="Message Authentication code using SHA-256"
- AlgorithmClass="Mac"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="HmacSHA256"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"
- Description="Message Authentication code using SHA-384"
- AlgorithmClass="Mac"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="HmacSHA384"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"
- Description="Message Authentication code using SHA-512"
- AlgorithmClass="Mac"
- RequirementLevel="OPTIONAL"
- SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
- JCEName="HmacSHA512"/>
-
- <!-- Block encryption Algorithms -->
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#tripledes-cbc"
- Description="Block encryption using Triple-DES"
- AlgorithmClass="BlockEncryption"
- RequirementLevel="REQUIRED"
- KeyLength="192"
- RequiredKey="DESede"
- JCEName="DESede/CBC/ISO10126Padding"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#aes128-cbc"
- Description="Block encryption using AES with a key length of 128 bit"
- AlgorithmClass="BlockEncryption"
- RequirementLevel="REQUIRED"
- KeyLength="128"
- RequiredKey="AES"
- JCEName="AES/CBC/ISO10126Padding"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#aes192-cbc"
- Description="Block encryption using AES with a key length of 192 bit"
- AlgorithmClass="BlockEncryption"
- RequirementLevel="OPTIONAL"
- KeyLength="192"
- RequiredKey="AES"
- JCEName="AES/CBC/ISO10126Padding"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#aes256-cbc"
- Description="Block encryption using AES with a key length of 256 bit"
- AlgorithmClass="BlockEncryption"
- RequirementLevel="REQUIRED"
- KeyLength="256"
- RequiredKey="AES"
- JCEName="AES/CBC/ISO10126Padding"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#rsa-1_5"
- Description="Key Transport RSA-v1.5"
- AlgorithmClass="KeyTransport"
- RequirementLevel="REQUIRED"
- RequiredKey="RSA"
- JCEName="RSA/ECB/PKCS1Padding"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p"
- Description="Key Transport RSA-OAEP"
- AlgorithmClass="KeyTransport"
- RequirementLevel="REQUIRED"
- RequiredKey="RSA"
- JCEName="RSA/ECB/OAEPWithSHA1AndMGF1Padding"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#dh"
- Description="Key Agreement Diffie-Hellman"
- AlgorithmClass="KeyAgreement"
- RequirementLevel="OPTIONAL"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#kw-tripledes"
- Description="Symmetric Key Wrap using Triple DES"
- AlgorithmClass="SymmetricKeyWrap"
- RequirementLevel="REQUIRED"
- KeyLength="192"
- RequiredKey="DESede"
- JCEName="DESedeWrap"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#kw-aes128"
- Description="Symmetric Key Wrap using AES with a key length of 128 bit"
- AlgorithmClass="SymmetricKeyWrap"
- RequirementLevel="REQUIRED"
- KeyLength="128"
- RequiredKey="AES"
- JCEName="AESWrap"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#kw-aes192"
- Description="Symmetric Key Wrap using AES with a key length of 192 bit"
- AlgorithmClass="SymmetricKeyWrap"
- RequirementLevel="OPTIONAL"
- KeyLength="192"
- RequiredKey="AES"
- JCEName="AESWrap"/>
-
- <Algorithm URI="http://www.w3.org/2001/04/xmlenc#kw-aes256"
- Description="Symmetric Key Wrap using AES with a key length of 256 bit"
- AlgorithmClass="SymmetricKeyWrap"
- RequirementLevel="REQUIRED"
- KeyLength="256"
- RequiredKey="AES"
- JCEName="AESWrap"/>
-
- </Algorithms>
- </JCEAlgorithmMappings>
- <ResourceBundles defaultLanguageCode="en" defaultCountryCode="US">
- <ResourceBundle LanguageCode="en"
- CountryCode="US"
- LOCATION="com.sun.org.apache.xml.internal.security/resource/xmlsecurity_en.properties" />
- <ResourceBundle LanguageCode="de"
- CountryCode="DE"
- LOCATION="com.sun.org.apache.xml.internal.security/resource/xmlsecurity_de.properties" />
- </ResourceBundles>
- <ResourceResolvers>
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverDirectHTTP"
- DESCRIPTION="A simple resolver for requests to HTTP space" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverLocalFilesystem"
- DESCRIPTION="A simple resolver for requests to the local file system" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverFragment"
- DESCRIPTION="A simple resolver for requests of same-document URIs" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverXPointer"
- DESCRIPTION="A simple resolver for requests of XPointer fragents" />
- </ResourceResolvers>
- <!-- <defaultLocale languageCode="en" countryCode="US" /> -->
- <KeyInfo>
- <ContentHandler LOCALNAME="KeyName"
- NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.KeyName" />
- <ContentHandler LOCALNAME="KeyValue"
- NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.KeyValue" />
- <ContentHandler LOCALNAME="RetrievalMethod"
- NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.RetrievalMethod" />
- <ContentHandler LOCALNAME="X509Data"
- NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.X509Data" />
- <ContentHandler LOCALNAME="PGPData"
- NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.PGPData" />
- <ContentHandler LOCALNAME="SPKIData"
- NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.SPKIData" />
- <ContentHandler LOCALNAME="MgmtData"
- NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
- JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.MgmtData" />
- </KeyInfo>
- <KeyResolver>
- <!-- This section contains a list of KeyResolvers that are available in
- every KeyInfo object -->
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.RSAKeyValueResolver"
- DESCRIPTION="Can extract RSA public keys" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.DSAKeyValueResolver"
- DESCRIPTION="Can extract DSA public keys" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.X509CertificateResolver"
- DESCRIPTION="Can extract public keys from X509 certificates" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.X509SKIResolver"
- DESCRIPTION="Uses an X509v3 SubjectKeyIdentifier extension to retrieve a certificate from the storages" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.RetrievalMethodResolver"
- DESCRIPTION="Resolves keys and certificates using ResourceResolvers" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.X509SubjectNameResolver"
- DESCRIPTION="Uses an X509 SubjectName to retrieve a certificate from the storages" />
- <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.X509IssuerSerialResolver"
- DESCRIPTION="Uses an X509 IssuerName and IssuerSerial to retrieve a certificate from the storages" />
- </KeyResolver>
-
- <PrefixMappings>
- <!-- Many classes create Elements which are in a specific namespace;
- here, the prefixes for these namespaces are defined. But this
- can also be overwritten using the ElementProxy#setDefaultPrefix()
- method. You can even set all prefixes to "" so that the corresponding
- elements are created using the default namespace -->
- <PrefixMapping namespace="http://www.w3.org/2000/09/xmldsig#"
- prefix="ds" />
- <PrefixMapping namespace="http://www.w3.org/2001/04/xmlenc#"
- prefix="xenc" />
- <PrefixMapping namespace="http://www.xmlsecurity.org/experimental#"
- prefix="experimental" />
- <PrefixMapping namespace="http://www.w3.org/2002/04/xmldsig-filter2"
- prefix="dsig-xpath-old" />
- <PrefixMapping namespace="http://www.w3.org/2002/06/xmldsig-filter2"
- prefix="dsig-xpath" />
- <PrefixMapping namespace="http://www.w3.org/2001/10/xml-exc-c14n#"
- prefix="ec" />
- <PrefixMapping namespace="http://www.nue.et-inf.uni-siegen.de/~geuer-pollmann/#xpathFilter"
- prefix="xx" />
- </PrefixMappings>
-</Configuration>
+<?xml version="1.0"?>
+<!--
+<!DOCTYPE Configuration SYSTEM "config.dtd">
+-->
+<!-- This configuration file is used for configuration of the com.sun.org.apache.xml.internal.security package -->
+<Configuration target="com.sun.org.apache.xml.internal.security" xmlns="http://www.xmlsecurity.org/NS/#configuration">
+ <CanonicalizationMethods>
+ <CanonicalizationMethod URI="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer20010315OmitComments" />
+ <CanonicalizationMethod URI="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer20010315WithComments" />
+
+ <CanonicalizationMethod URI="http://www.w3.org/2001/10/xml-exc-c14n#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer20010315ExclOmitComments"/>
+ <CanonicalizationMethod URI="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer20010315ExclWithComments"/>
+ </CanonicalizationMethods>
+ <TransformAlgorithms>
+ <!-- Base64 -->
+ <TransformAlgorithm URI="http://www.w3.org/2000/09/xmldsig#base64"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformBase64Decode" />
+ <!-- c14n omitting comments -->
+ <TransformAlgorithm URI="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformC14N" />
+ <!-- c14n with comments -->
+ <TransformAlgorithm URI="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformC14NWithComments" />
+ <!-- exclusive c14n omitting comments -->
+ <TransformAlgorithm URI="http://www.w3.org/2001/10/xml-exc-c14n#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformC14NExclusive" />
+ <!-- exclusive c14n with comments -->
+ <TransformAlgorithm URI="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformC14NExclusiveWithComments" />
+
+ <!-- XPath transform -->
+ <TransformAlgorithm URI="http://www.w3.org/TR/1999/REC-xpath-19991116"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformXPath" />
+ <!-- enveloped signature -->
+ <TransformAlgorithm URI="http://www.w3.org/2000/09/xmldsig#enveloped-signature"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformEnvelopedSignature" />
+ <!-- XSLT -->
+ <TransformAlgorithm URI="http://www.w3.org/TR/1999/REC-xslt-19991116"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformXSLT" />
+ <!-- XPath version 2 -->
+ <TransformAlgorithm URI="http://www.w3.org/2002/04/xmldsig-filter2"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformXPath2Filter" />
+ <!-- XPath version 2b -->
+ <TransformAlgorithm URI="http://www.w3.org/2002/06/xmldsig-filter2"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.transforms.implementations.TransformXPath2Filter" />
+ </TransformAlgorithms>
+ <SignatureAlgorithms>
+ <SignatureAlgorithm URI="http://www.w3.org/2000/09/xmldsig#dsa-sha1"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureDSA" />
+ <SignatureAlgorithm URI="http://www.w3.org/2000/09/xmldsig#rsa-sha1"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSASHA1" />
+ <SignatureAlgorithm URI="http://www.w3.org/2000/09/xmldsig#hmac-sha1"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacSHA1" />
+
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-md5"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSAMD5" />
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-ripemd160"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSARIPEMD160" />
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSASHA256" />
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha384"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSASHA384" />
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha512"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.SignatureBaseRSA$SignatureRSASHA512" />
+
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-md5"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacMD5" />
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacRIPEMD160" />
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacSHA256" />
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacSHA384" />
+ <SignatureAlgorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.algorithms.implementations.IntegrityHmac$IntegrityHmacSHA512" />
+ </SignatureAlgorithms>
+ <JCEAlgorithmMappings>
+ <Algorithms>
+ <!-- MessageDigest Algorithms -->
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#md5"
+ Description="MD5 message digest from RFC 1321"
+ AlgorithmClass="MessageDigest"
+ RequirementLevel="NOT RECOMMENDED"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="MD5"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#ripemd160"
+ Description="RIPEMD-160 message digest"
+ AlgorithmClass="MessageDigest"
+ RequirementLevel="OPTIONAL"
+ JCEName="RIPEMD160"/>
+
+ <Algorithm URI="http://www.w3.org/2000/09/xmldsig#sha1"
+ Description="SHA-1 message digest"
+ AlgorithmClass="MessageDigest"
+ RequirementLevel="REQUIRED"
+ JCEName="SHA-1"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#sha256"
+ Description="SHA-1 message digest with 256 bit"
+ AlgorithmClass="MessageDigest"
+ RequirementLevel="RECOMMENDED"
+ JCEName="SHA-256"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#sha384"
+ Description="SHA message digest with 384 bit"
+ AlgorithmClass="MessageDigest"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="SHA-384"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#sha512"
+ Description="SHA-1 message digest with 512 bit"
+ AlgorithmClass="MessageDigest"
+ RequirementLevel="OPTIONAL"
+ JCEName="SHA-512"/>
+
+ <!-- Signature Algorithms -->
+ <Algorithm URI="http://www.w3.org/2000/09/xmldsig#dsa-sha1"
+ Description="Digital Signature Algorithm with SHA-1 message digest"
+ AlgorithmClass="Signature"
+ RequirementLevel="REQUIRED"
+ JCEName="SHA1withDSA"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-md5"
+ Description="RSA Signature with MD5 message digest"
+ AlgorithmClass="Signature"
+ RequirementLevel="NOT RECOMMENDED"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="MD5withRSA"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-ripemd160"
+ Description="RSA Signature with RIPEMD-160 message digest"
+ AlgorithmClass="Signature"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="RIPEMD160withRSA"/>
+
+ <Algorithm URI="http://www.w3.org/2000/09/xmldsig#rsa-sha1"
+ Description="RSA Signature with SHA-1 message digest"
+ AlgorithmClass="Signature"
+ RequirementLevel="RECOMMENDED"
+ JCEName="SHA1withRSA"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"
+ Description="RSA Signature with SHA-256 message digest"
+ AlgorithmClass="Signature"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="SHA256withRSA"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha384"
+ Description="RSA Signature with SHA-384 message digest"
+ AlgorithmClass="Signature"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="SHA384withRSA"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#rsa-sha512"
+ Description="RSA Signature with SHA-512 message digest"
+ AlgorithmClass="Signature"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="SHA512withRSA"/>
+
+ <!-- MAC Algorithms -->
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-md5"
+ Description="Message Authentication code using MD5"
+ AlgorithmClass="Mac"
+ RequirementLevel="NOT RECOMMENDED"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="HmacMD5"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160"
+ Description="Message Authentication code using RIPEMD-160"
+ AlgorithmClass="Mac"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="HMACRIPEMD160"/>
+
+ <Algorithm URI="http://www.w3.org/2000/09/xmldsig#hmac-sha1"
+ Description="Message Authentication code using SHA1"
+ AlgorithmClass="Mac"
+ RequirementLevel="REQUIRED"
+ JCEName="HmacSHA1"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"
+ Description="Message Authentication code using SHA-256"
+ AlgorithmClass="Mac"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="HmacSHA256"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"
+ Description="Message Authentication code using SHA-384"
+ AlgorithmClass="Mac"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="HmacSHA384"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"
+ Description="Message Authentication code using SHA-512"
+ AlgorithmClass="Mac"
+ RequirementLevel="OPTIONAL"
+ SpecificationURL="http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt"
+ JCEName="HmacSHA512"/>
+
+ <!-- Block encryption Algorithms -->
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#tripledes-cbc"
+ Description="Block encryption using Triple-DES"
+ AlgorithmClass="BlockEncryption"
+ RequirementLevel="REQUIRED"
+ KeyLength="192"
+ RequiredKey="DESede"
+ JCEName="DESede/CBC/ISO10126Padding"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#aes128-cbc"
+ Description="Block encryption using AES with a key length of 128 bit"
+ AlgorithmClass="BlockEncryption"
+ RequirementLevel="REQUIRED"
+ KeyLength="128"
+ RequiredKey="AES"
+ JCEName="AES/CBC/ISO10126Padding"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#aes192-cbc"
+ Description="Block encryption using AES with a key length of 192 bit"
+ AlgorithmClass="BlockEncryption"
+ RequirementLevel="OPTIONAL"
+ KeyLength="192"
+ RequiredKey="AES"
+ JCEName="AES/CBC/ISO10126Padding"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#aes256-cbc"
+ Description="Block encryption using AES with a key length of 256 bit"
+ AlgorithmClass="BlockEncryption"
+ RequirementLevel="REQUIRED"
+ KeyLength="256"
+ RequiredKey="AES"
+ JCEName="AES/CBC/ISO10126Padding"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#rsa-1_5"
+ Description="Key Transport RSA-v1.5"
+ AlgorithmClass="KeyTransport"
+ RequirementLevel="REQUIRED"
+ RequiredKey="RSA"
+ JCEName="RSA/ECB/PKCS1Padding"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p"
+ Description="Key Transport RSA-OAEP"
+ AlgorithmClass="KeyTransport"
+ RequirementLevel="REQUIRED"
+ RequiredKey="RSA"
+ JCEName="RSA/ECB/OAEPWithSHA1AndMGF1Padding"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#dh"
+ Description="Key Agreement Diffie-Hellman"
+ AlgorithmClass="KeyAgreement"
+ RequirementLevel="OPTIONAL"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#kw-tripledes"
+ Description="Symmetric Key Wrap using Triple DES"
+ AlgorithmClass="SymmetricKeyWrap"
+ RequirementLevel="REQUIRED"
+ KeyLength="192"
+ RequiredKey="DESede"
+ JCEName="DESedeWrap"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#kw-aes128"
+ Description="Symmetric Key Wrap using AES with a key length of 128 bit"
+ AlgorithmClass="SymmetricKeyWrap"
+ RequirementLevel="REQUIRED"
+ KeyLength="128"
+ RequiredKey="AES"
+ JCEName="AESWrap"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#kw-aes192"
+ Description="Symmetric Key Wrap using AES with a key length of 192 bit"
+ AlgorithmClass="SymmetricKeyWrap"
+ RequirementLevel="OPTIONAL"
+ KeyLength="192"
+ RequiredKey="AES"
+ JCEName="AESWrap"/>
+
+ <Algorithm URI="http://www.w3.org/2001/04/xmlenc#kw-aes256"
+ Description="Symmetric Key Wrap using AES with a key length of 256 bit"
+ AlgorithmClass="SymmetricKeyWrap"
+ RequirementLevel="REQUIRED"
+ KeyLength="256"
+ RequiredKey="AES"
+ JCEName="AESWrap"/>
+
+ </Algorithms>
+ </JCEAlgorithmMappings>
+ <ResourceBundles defaultLanguageCode="en" defaultCountryCode="US">
+ <ResourceBundle LanguageCode="en"
+ CountryCode="US"
+ LOCATION="com.sun.org.apache.xml.internal.security/resource/xmlsecurity_en.properties" />
+ <ResourceBundle LanguageCode="de"
+ CountryCode="DE"
+ LOCATION="com.sun.org.apache.xml.internal.security/resource/xmlsecurity_de.properties" />
+ </ResourceBundles>
+ <ResourceResolvers>
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverDirectHTTP"
+ DESCRIPTION="A simple resolver for requests to HTTP space" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverLocalFilesystem"
+ DESCRIPTION="A simple resolver for requests to the local file system" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverFragment"
+ DESCRIPTION="A simple resolver for requests of same-document URIs" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverXPointer"
+ DESCRIPTION="A simple resolver for requests of XPointer fragents" />
+ </ResourceResolvers>
+ <!-- <defaultLocale languageCode="en" countryCode="US" /> -->
+ <KeyInfo>
+ <ContentHandler LOCALNAME="KeyName"
+ NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.KeyName" />
+ <ContentHandler LOCALNAME="KeyValue"
+ NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.KeyValue" />
+ <ContentHandler LOCALNAME="RetrievalMethod"
+ NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.RetrievalMethod" />
+ <ContentHandler LOCALNAME="X509Data"
+ NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.X509Data" />
+ <ContentHandler LOCALNAME="PGPData"
+ NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.PGPData" />
+ <ContentHandler LOCALNAME="SPKIData"
+ NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.SPKIData" />
+ <ContentHandler LOCALNAME="MgmtData"
+ NAMESPACE="http://www.w3.org/2000/09/xmldsig#"
+ JAVACLASS="com.sun.org.apache.xml.internal.security.keys.content.MgmtData" />
+ </KeyInfo>
+ <KeyResolver>
+ <!-- This section contains a list of KeyResolvers that are available in
+ every KeyInfo object -->
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.RSAKeyValueResolver"
+ DESCRIPTION="Can extract RSA public keys" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.DSAKeyValueResolver"
+ DESCRIPTION="Can extract DSA public keys" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.X509CertificateResolver"
+ DESCRIPTION="Can extract public keys from X509 certificates" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.X509SKIResolver"
+ DESCRIPTION="Uses an X509v3 SubjectKeyIdentifier extension to retrieve a certificate from the storages" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.RetrievalMethodResolver"
+ DESCRIPTION="Resolves keys and certificates using ResourceResolvers" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.X509SubjectNameResolver"
+ DESCRIPTION="Uses an X509 SubjectName to retrieve a certificate from the storages" />
+ <Resolver JAVACLASS="com.sun.org.apache.xml.internal.security.keys.keyresolver.implementations.X509IssuerSerialResolver"
+ DESCRIPTION="Uses an X509 IssuerName and IssuerSerial to retrieve a certificate from the storages" />
+ </KeyResolver>
+
+ <PrefixMappings>
+ <!-- Many classes create Elements which are in a specific namespace;
+ here, the prefixes for these namespaces are defined. But this
+ can also be overwritten using the ElementProxy#setDefaultPrefix()
+ method. You can even set all prefixes to "" so that the corresponding
+ elements are created using the default namespace -->
+ <PrefixMapping namespace="http://www.w3.org/2000/09/xmldsig#"
+ prefix="ds" />
+ <PrefixMapping namespace="http://www.w3.org/2001/04/xmlenc#"
+ prefix="xenc" />
+ <PrefixMapping namespace="http://www.xmlsecurity.org/experimental#"
+ prefix="experimental" />
+ <PrefixMapping namespace="http://www.w3.org/2002/04/xmldsig-filter2"
+ prefix="dsig-xpath-old" />
+ <PrefixMapping namespace="http://www.w3.org/2002/06/xmldsig-filter2"
+ prefix="dsig-xpath" />
+ <PrefixMapping namespace="http://www.w3.org/2001/10/xml-exc-c14n#"
+ prefix="ec" />
+ <PrefixMapping namespace="http://www.nue.et-inf.uni-siegen.de/~geuer-pollmann/#xpathFilter"
+ prefix="xx" />
+ </PrefixMappings>
+</Configuration>
--- a/src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/etsi.xsd Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/org/apache/xml/internal/security/resource/schema/etsi.xsd Mon Apr 14 11:34:15 2008 -0700
@@ -1,347 +1,347 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by XMLSpy v4 (Altova) -->
-<xsd:schema targetNamespace="http://uri.etsi.org/01903/v1.1.1#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/01903/v1.1.1#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" xsi:schemaLocation="http://www.w3.org/2000/09/xmldsig# xmldsig-core-schema.xsd">
- <xsd:element name="Any" type="AnyType"/>
- <xsd:complexType name="AnyType" mixed="true">
- <xsd:sequence>
- <xsd:any namespace="##any"/>
- </xsd:sequence>
- <xsd:anyAttribute namespace="##any"/>
- </xsd:complexType>
- <xsd:element name="ObjectIdentifier" type="ObjectIdentifierType"/>
- <xsd:complexType name="ObjectIdentifierType">
- <xsd:sequence>
- <xsd:element name="Identifier" type="IdentifierType"/>
- <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="DocumentationReferences" type="DocumentationReferencesType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="IdentifierType">
- <xsd:simpleContent>
- <xsd:extension base="xsd:anyURI">
- <xsd:attribute name="Qualifier" type="QualifierType" use="optional"/>
- </xsd:extension>
- </xsd:simpleContent>
- </xsd:complexType>
- <xsd:simpleType name="QualifierType">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="OIDAsURI"/>
- <xsd:enumeration value="OIDAsURN"/>
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="DocumentationReferencesType">
- <xsd:sequence maxOccurs="unbounded">
- <xsd:element name="DocumentationReference" type="xsd:anyURI"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="EncapsulatedPKIData" type="EncapsulatedPKIDataType"/>
- <xsd:complexType name="EncapsulatedPKIDataType">
- <xsd:simpleContent>
- <xsd:extension base="xsd:base64Binary">
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:extension>
- </xsd:simpleContent>
- </xsd:complexType>
- <xsd:element name="TimeStamp" type="TimeStampType"/>
- <xsd:complexType name="TimeStampType">
- <xsd:sequence>
- <xsd:element name="HashDataInfo" type="HashDataInfoType" maxOccurs="unbounded"/>
- <xsd:choice>
- <xsd:element name="EncapsulatedTimeStamp" type="EncapsulatedPKIDataType"/>
- <xsd:element name="XMLTimeStamp" type="AnyType"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="HashDataInfoType">
- <xsd:sequence>
- <xsd:element name="Transforms" type="ds:TransformsType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="uri" type="xsd:anyURI" use="required"/>
- </xsd:complexType>
- <xsd:element name="QualifyingProperties" type="QualifyingPropertiesType"/>
- <xsd:complexType name="QualifyingPropertiesType">
- <xsd:sequence>
- <xsd:element name="SignedProperties" type="SignedPropertiesType" minOccurs="0"/>
- <xsd:element name="UnsignedProperties" type="UnsignedPropertiesType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="Target" type="xsd:anyURI" use="required"/>
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:complexType>
- <xsd:element name="SignedProperties" type="SignedPropertiesType"/>
- <xsd:complexType name="SignedPropertiesType">
- <xsd:sequence>
- <xsd:element name="SignedSignatureProperties" type="SignedSignaturePropertiesType"/>
- <xsd:element name="SignedDataObjectProperties" type="SignedDataObjectPropertiesType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:complexType>
- <xsd:element name="UnsignedProperties" type="UnsignedPropertiesType"/>
- <xsd:complexType name="UnsignedPropertiesType">
- <xsd:sequence>
- <xsd:element name="UnsignedSignatureProperties" type="UnsignedSignaturePropertiesType" minOccurs="0"/>
- <xsd:element name="UnsignedDataObjectProperties" type="UnsignedDataObjectPropertiesType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:complexType>
- <xsd:element name="SignedSignatureProperties" type="SignedSignaturePropertiesType"/>
- <xsd:complexType name="SignedSignaturePropertiesType">
- <xsd:sequence>
- <xsd:element name="SigningTime" type="xsd:dateTime"/>
- <xsd:element name="SigningCertificate" type="CertIDListType"/>
- <xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType"/>
- <xsd:element name="SignatureProductionPlace" type="SignatureProductionPlaceType" minOccurs="0"/>
- <xsd:element name="SignerRole" type="SignerRoleType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="SignedDataObjectProperties" type="SignedDataObjectPropertiesType"/>
- <xsd:complexType name="SignedDataObjectPropertiesType">
- <xsd:sequence>
- <xsd:element name="DataObjectFormat" type="DataObjectFormatType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="CommitmentTypeIndication" type="CommitmentTypeIndicationType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="AllDataObjectsTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="IndividualDataObjectsTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="UnsignedSignatureProperties" type="UnsignedSignaturePropertiesType"/>
- <xsd:complexType name="UnsignedSignaturePropertiesType">
- <xsd:sequence>
- <xsd:element name="CounterSignature" type="CounterSignatureType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="SignatureTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="CompleteCertificateRefs" type="CompleteCertificateRefsType" minOccurs="0"/>
- <xsd:element name="CompleteRevocationRefs" type="CompleteRevocationRefsType" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="SigAndRefsTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="RefsOnlyTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:element name="CertificateValues" type="CertificateValuesType" minOccurs="0"/>
- <xsd:element name="RevocationValues" type="RevocationValuesType" minOccurs="0"/>
- <xsd:element name="ArchiveTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="UnsignedDataObjectProperties" type="UnsignedDataObjectPropertiesType"/>
- <xsd:complexType name="UnsignedDataObjectPropertiesType">
- <xsd:sequence>
- <xsd:element name="UnsignedDataObjectProperty" type="AnyType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="QualifyingPropertiesReference" type="QualifyingPropertiesReferenceType"/>
- <xsd:complexType name="QualifyingPropertiesReferenceType">
- <xsd:sequence>
- <xsd:element name="Transforms" type="ds:TransformsType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="URI" type="xsd:anyURI" use="required"/>
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:complexType>
- <xsd:element name="SigningTime" type="xsd:dateTime"/>
- <xsd:element name="SigningCertificate" type="CertIDListType"/>
- <xsd:complexType name="CertIDListType">
- <xsd:sequence>
- <xsd:element name="Cert" type="CertIDType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="CertIDType">
- <xsd:sequence>
- <xsd:element name="CertDigest" type="DigestAlgAndValueType"/>
- <xsd:element name="IssuerSerial" type="ds:X509IssuerSerialType"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="DigestAlgAndValueType">
- <xsd:sequence>
- <xsd:element name="DigestMethod" type="ds:DigestMethodType"/>
- <xsd:element name="DigestValue" type="ds:DigestValueType"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType"/>
- <xsd:complexType name="SignaturePolicyIdentifierType">
- <xsd:choice>
- <xsd:element name="SignaturePolicyId" type="SignaturePolicyIdType"/>
- <xsd:element name="SignaturePolicyImplied"/>
- </xsd:choice>
- </xsd:complexType>
- <xsd:complexType name="SignaturePolicyIdType">
- <xsd:sequence>
- <xsd:element name="SigPolicyId" type="ObjectIdentifierType"/>
- <xsd:element ref="ds:Transforms" minOccurs="0"/>
- <xsd:element name="SigPolicyHash" type="DigestAlgAndValueType"/>
- <xsd:element name="SigPolicyQualifiers" type="SigPolicyQualifiersListType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="SigPolicyQualifiersListType">
- <xsd:sequence>
- <xsd:element name="SigPolicyQualifier" type="AnyType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="SPURI" type="xsd:anyURI"/>
- <xsd:element name="SPUserNotice" type="SPUserNoticeType"/>
- <xsd:complexType name="SPUserNoticeType">
- <xsd:sequence>
- <xsd:element name="NoticeRef" type="NoticeReferenceType" minOccurs="0"/>
- <xsd:element name="ExplicitText" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="NoticeReferenceType">
- <xsd:sequence>
- <xsd:element name="Organization" type="xsd:string"/>
- <xsd:element name="NoticeNumbers" type="IntegerListType"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="IntegerListType">
- <xsd:sequence>
- <xsd:element name="int" type="xsd:integer" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="CounterSignature" type="CounterSignatureType"/>
- <xsd:complexType name="CounterSignatureType">
- <xsd:sequence>
- <xsd:element ref="ds:Signature"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="DataObjectFormat" type="DataObjectFormatType"/>
- <xsd:complexType name="DataObjectFormatType">
- <xsd:sequence>
- <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="ObjectIdentifier" type="ObjectIdentifierType" minOccurs="0"/>
- <xsd:element name="MimeType" type="xsd:string" minOccurs="0"/>
- <xsd:element name="Encoding" type="xsd:anyURI" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="ObjectReference" type="xsd:anyURI" use="required"/>
- </xsd:complexType>
- <xsd:element name="CommitmentTypeIndication" type="CommitmentTypeIndicationType"/>
- <xsd:complexType name="CommitmentTypeIndicationType">
- <xsd:sequence>
- <xsd:element name="CommitmentTypeId" type="ObjectIdentifierType"/>
- <xsd:choice>
- <xsd:element name="ObjectReference" type="xsd:anyURI" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="AllSignedDataObjects"/>
- </xsd:choice>
- <xsd:element name="CommitmentTypeQualifiers" type="CommitmentTypeQualifiersListType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="CommitmentTypeQualifiersListType">
- <xsd:sequence>
- <xsd:element name="CommitmentTypeQualifier" type="AnyType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="SignatureProductionPlace" type="SignatureProductionPlaceType"/>
- <xsd:complexType name="SignatureProductionPlaceType">
- <xsd:sequence>
- <xsd:element name="City" type="xsd:string" minOccurs="0"/>
- <xsd:element name="StateOrProvince" type="xsd:string" minOccurs="0"/>
- <xsd:element name="PostalCode" type="xsd:string" minOccurs="0"/>
- <xsd:element name="CountryName" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="SignerRole" type="SignerRoleType"/>
- <xsd:complexType name="SignerRoleType">
- <xsd:sequence>
- <xsd:element name="ClaimedRoles" type="ClaimedRolesListType" minOccurs="0"/>
- <xsd:element name="CertifiedRoles" type="CertifiedRolesListType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="ClaimedRolesListType">
- <xsd:sequence>
- <xsd:element name="ClaimedRole" type="AnyType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="CertifiedRolesListType">
- <xsd:sequence>
- <xsd:element name="CertifiedRole" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="AllDataObjectsTimeStamp" type="TimeStampType"/>
- <xsd:element name="IndividualDataObjectsTimeStamp" type="TimeStampType"/>
- <xsd:element name="SignatureTimeStamp" type="TimeStampType"/>
- <xsd:element name="CompleteCertificateRefs" type="CompleteCertificateRefsType"/>
- <xsd:complexType name="CompleteCertificateRefsType">
- <xsd:sequence>
- <xsd:element name="CertRefs" type="CertIDListType"/>
- </xsd:sequence>
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:complexType>
- <xsd:element name="CompleteRevocationRefs" type="CompleteRevocationRefsType"/>
- <xsd:complexType name="CompleteRevocationRefsType">
- <xsd:sequence>
- <xsd:element name="CRLRefs" type="CRLRefsType" minOccurs="0"/>
- <xsd:element name="OCSPRefs" type="OCSPRefsType" minOccurs="0"/>
- <xsd:element name="OtherRefs" type="OtherCertStatusRefsType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:complexType>
- <xsd:complexType name="CRLRefsType">
- <xsd:sequence>
- <xsd:element name="CRLRef" type="CRLRefType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="CRLRefType">
- <xsd:sequence>
- <xsd:element name="DigestAlgAndValue" type="DigestAlgAndValueType"/>
- <xsd:element name="CRLIdentifier" type="CRLIdentifierType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="CRLIdentifierType">
- <xsd:sequence>
- <xsd:element name="Issuer" type="xsd:string"/>
- <xsd:element name="IssueTime" type="xsd:dateTime"/>
- <xsd:element name="Number" type="xsd:integer" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
- </xsd:complexType>
- <xsd:complexType name="OCSPRefsType">
- <xsd:sequence>
- <xsd:element name="OCSPRef" type="OCSPRefType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="OCSPRefType">
- <xsd:sequence>
- <xsd:element name="OCSPIdentifier" type="OCSPIdentifierType"/>
- <xsd:element name="DigestAlgAndValue" type="DigestAlgAndValueType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="OCSPIdentifierType">
- <xsd:sequence>
- <xsd:element name="ResponderID" type="xsd:string"/>
- <xsd:element name="ProducedAt" type="xsd:dateTime"/>
- </xsd:sequence>
- <xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
- </xsd:complexType>
- <xsd:complexType name="OtherCertStatusRefsType">
- <xsd:sequence>
- <xsd:element name="OtherRef" type="AnyType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="SigAndRefsTimeStamp" type="TimeStampType"/>
- <xsd:element name="RefsOnlyTimeStamp" type="TimeStampType"/>
- <xsd:element name="CertificateValues" type="CertificateValuesType"/>
- <xsd:complexType name="CertificateValuesType">
- <xsd:choice minOccurs="0" maxOccurs="unbounded">
- <xsd:element name="EncapsulatedX509Certificate" type="EncapsulatedPKIDataType"/>
- <xsd:element name="OtherCertificate" type="AnyType"/>
- </xsd:choice>
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:complexType>
- <xsd:element name="RevocationValues" type="RevocationValuesType"/>
- <xsd:complexType name="RevocationValuesType">
- <xsd:sequence>
- <xsd:element name="CRLValues" type="CRLValuesType" minOccurs="0"/>
- <xsd:element name="OCSPValues" type="OCSPValuesType" minOccurs="0"/>
- <xsd:element name="OtherValues" type="OtherCertStatusValuesType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
- </xsd:complexType>
- <xsd:complexType name="CRLValuesType">
- <xsd:sequence>
- <xsd:element name="EncapsulatedCRLValue" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="OCSPValuesType">
- <xsd:sequence>
- <xsd:element name="EncapsulatedOCSPValue" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="OtherCertStatusValuesType">
- <xsd:sequence>
- <xsd:element name="OtherValue" type="AnyType" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:element name="ArchiveTimeStamp" type="TimeStampType"/>
-</xsd:schema>
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by XMLSpy v4 (Altova) -->
+<xsd:schema targetNamespace="http://uri.etsi.org/01903/v1.1.1#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/01903/v1.1.1#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" xsi:schemaLocation="http://www.w3.org/2000/09/xmldsig# xmldsig-core-schema.xsd">
+ <xsd:element name="Any" type="AnyType"/>
+ <xsd:complexType name="AnyType" mixed="true">
+ <xsd:sequence>
+ <xsd:any namespace="##any"/>
+ </xsd:sequence>
+ <xsd:anyAttribute namespace="##any"/>
+ </xsd:complexType>
+ <xsd:element name="ObjectIdentifier" type="ObjectIdentifierType"/>
+ <xsd:complexType name="ObjectIdentifierType">
+ <xsd:sequence>
+ <xsd:element name="Identifier" type="IdentifierType"/>
+ <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DocumentationReferences" type="DocumentationReferencesType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="IdentifierType">
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:anyURI">
+ <xsd:attribute name="Qualifier" type="QualifierType" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:simpleType name="QualifierType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="OIDAsURI"/>
+ <xsd:enumeration value="OIDAsURN"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:complexType name="DocumentationReferencesType">
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:element name="DocumentationReference" type="xsd:anyURI"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="EncapsulatedPKIData" type="EncapsulatedPKIDataType"/>
+ <xsd:complexType name="EncapsulatedPKIDataType">
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:base64Binary">
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:element name="TimeStamp" type="TimeStampType"/>
+ <xsd:complexType name="TimeStampType">
+ <xsd:sequence>
+ <xsd:element name="HashDataInfo" type="HashDataInfoType" maxOccurs="unbounded"/>
+ <xsd:choice>
+ <xsd:element name="EncapsulatedTimeStamp" type="EncapsulatedPKIDataType"/>
+ <xsd:element name="XMLTimeStamp" type="AnyType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HashDataInfoType">
+ <xsd:sequence>
+ <xsd:element name="Transforms" type="ds:TransformsType" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="uri" type="xsd:anyURI" use="required"/>
+ </xsd:complexType>
+ <xsd:element name="QualifyingProperties" type="QualifyingPropertiesType"/>
+ <xsd:complexType name="QualifyingPropertiesType">
+ <xsd:sequence>
+ <xsd:element name="SignedProperties" type="SignedPropertiesType" minOccurs="0"/>
+ <xsd:element name="UnsignedProperties" type="UnsignedPropertiesType" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="Target" type="xsd:anyURI" use="required"/>
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ <xsd:element name="SignedProperties" type="SignedPropertiesType"/>
+ <xsd:complexType name="SignedPropertiesType">
+ <xsd:sequence>
+ <xsd:element name="SignedSignatureProperties" type="SignedSignaturePropertiesType"/>
+ <xsd:element name="SignedDataObjectProperties" type="SignedDataObjectPropertiesType" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ <xsd:element name="UnsignedProperties" type="UnsignedPropertiesType"/>
+ <xsd:complexType name="UnsignedPropertiesType">
+ <xsd:sequence>
+ <xsd:element name="UnsignedSignatureProperties" type="UnsignedSignaturePropertiesType" minOccurs="0"/>
+ <xsd:element name="UnsignedDataObjectProperties" type="UnsignedDataObjectPropertiesType" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ <xsd:element name="SignedSignatureProperties" type="SignedSignaturePropertiesType"/>
+ <xsd:complexType name="SignedSignaturePropertiesType">
+ <xsd:sequence>
+ <xsd:element name="SigningTime" type="xsd:dateTime"/>
+ <xsd:element name="SigningCertificate" type="CertIDListType"/>
+ <xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType"/>
+ <xsd:element name="SignatureProductionPlace" type="SignatureProductionPlaceType" minOccurs="0"/>
+ <xsd:element name="SignerRole" type="SignerRoleType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="SignedDataObjectProperties" type="SignedDataObjectPropertiesType"/>
+ <xsd:complexType name="SignedDataObjectPropertiesType">
+ <xsd:sequence>
+ <xsd:element name="DataObjectFormat" type="DataObjectFormatType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CommitmentTypeIndication" type="CommitmentTypeIndicationType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AllDataObjectsTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="IndividualDataObjectsTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="UnsignedSignatureProperties" type="UnsignedSignaturePropertiesType"/>
+ <xsd:complexType name="UnsignedSignaturePropertiesType">
+ <xsd:sequence>
+ <xsd:element name="CounterSignature" type="CounterSignatureType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="SignatureTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CompleteCertificateRefs" type="CompleteCertificateRefsType" minOccurs="0"/>
+ <xsd:element name="CompleteRevocationRefs" type="CompleteRevocationRefsType" minOccurs="0"/>
+ <xsd:choice>
+ <xsd:element name="SigAndRefsTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="RefsOnlyTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:choice>
+ <xsd:element name="CertificateValues" type="CertificateValuesType" minOccurs="0"/>
+ <xsd:element name="RevocationValues" type="RevocationValuesType" minOccurs="0"/>
+ <xsd:element name="ArchiveTimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="UnsignedDataObjectProperties" type="UnsignedDataObjectPropertiesType"/>
+ <xsd:complexType name="UnsignedDataObjectPropertiesType">
+ <xsd:sequence>
+ <xsd:element name="UnsignedDataObjectProperty" type="AnyType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="QualifyingPropertiesReference" type="QualifyingPropertiesReferenceType"/>
+ <xsd:complexType name="QualifyingPropertiesReferenceType">
+ <xsd:sequence>
+ <xsd:element name="Transforms" type="ds:TransformsType" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="URI" type="xsd:anyURI" use="required"/>
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ <xsd:element name="SigningTime" type="xsd:dateTime"/>
+ <xsd:element name="SigningCertificate" type="CertIDListType"/>
+ <xsd:complexType name="CertIDListType">
+ <xsd:sequence>
+ <xsd:element name="Cert" type="CertIDType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CertIDType">
+ <xsd:sequence>
+ <xsd:element name="CertDigest" type="DigestAlgAndValueType"/>
+ <xsd:element name="IssuerSerial" type="ds:X509IssuerSerialType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="DigestAlgAndValueType">
+ <xsd:sequence>
+ <xsd:element name="DigestMethod" type="ds:DigestMethodType"/>
+ <xsd:element name="DigestValue" type="ds:DigestValueType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType"/>
+ <xsd:complexType name="SignaturePolicyIdentifierType">
+ <xsd:choice>
+ <xsd:element name="SignaturePolicyId" type="SignaturePolicyIdType"/>
+ <xsd:element name="SignaturePolicyImplied"/>
+ </xsd:choice>
+ </xsd:complexType>
+ <xsd:complexType name="SignaturePolicyIdType">
+ <xsd:sequence>
+ <xsd:element name="SigPolicyId" type="ObjectIdentifierType"/>
+ <xsd:element ref="ds:Transforms" minOccurs="0"/>
+ <xsd:element name="SigPolicyHash" type="DigestAlgAndValueType"/>
+ <xsd:element name="SigPolicyQualifiers" type="SigPolicyQualifiersListType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="SigPolicyQualifiersListType">
+ <xsd:sequence>
+ <xsd:element name="SigPolicyQualifier" type="AnyType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="SPURI" type="xsd:anyURI"/>
+ <xsd:element name="SPUserNotice" type="SPUserNoticeType"/>
+ <xsd:complexType name="SPUserNoticeType">
+ <xsd:sequence>
+ <xsd:element name="NoticeRef" type="NoticeReferenceType" minOccurs="0"/>
+ <xsd:element name="ExplicitText" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="NoticeReferenceType">
+ <xsd:sequence>
+ <xsd:element name="Organization" type="xsd:string"/>
+ <xsd:element name="NoticeNumbers" type="IntegerListType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="IntegerListType">
+ <xsd:sequence>
+ <xsd:element name="int" type="xsd:integer" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="CounterSignature" type="CounterSignatureType"/>
+ <xsd:complexType name="CounterSignatureType">
+ <xsd:sequence>
+ <xsd:element ref="ds:Signature"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="DataObjectFormat" type="DataObjectFormatType"/>
+ <xsd:complexType name="DataObjectFormatType">
+ <xsd:sequence>
+ <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ObjectIdentifier" type="ObjectIdentifierType" minOccurs="0"/>
+ <xsd:element name="MimeType" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="Encoding" type="xsd:anyURI" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="ObjectReference" type="xsd:anyURI" use="required"/>
+ </xsd:complexType>
+ <xsd:element name="CommitmentTypeIndication" type="CommitmentTypeIndicationType"/>
+ <xsd:complexType name="CommitmentTypeIndicationType">
+ <xsd:sequence>
+ <xsd:element name="CommitmentTypeId" type="ObjectIdentifierType"/>
+ <xsd:choice>
+ <xsd:element name="ObjectReference" type="xsd:anyURI" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AllSignedDataObjects"/>
+ </xsd:choice>
+ <xsd:element name="CommitmentTypeQualifiers" type="CommitmentTypeQualifiersListType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CommitmentTypeQualifiersListType">
+ <xsd:sequence>
+ <xsd:element name="CommitmentTypeQualifier" type="AnyType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="SignatureProductionPlace" type="SignatureProductionPlaceType"/>
+ <xsd:complexType name="SignatureProductionPlaceType">
+ <xsd:sequence>
+ <xsd:element name="City" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="StateOrProvince" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PostalCode" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CountryName" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="SignerRole" type="SignerRoleType"/>
+ <xsd:complexType name="SignerRoleType">
+ <xsd:sequence>
+ <xsd:element name="ClaimedRoles" type="ClaimedRolesListType" minOccurs="0"/>
+ <xsd:element name="CertifiedRoles" type="CertifiedRolesListType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ClaimedRolesListType">
+ <xsd:sequence>
+ <xsd:element name="ClaimedRole" type="AnyType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CertifiedRolesListType">
+ <xsd:sequence>
+ <xsd:element name="CertifiedRole" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="AllDataObjectsTimeStamp" type="TimeStampType"/>
+ <xsd:element name="IndividualDataObjectsTimeStamp" type="TimeStampType"/>
+ <xsd:element name="SignatureTimeStamp" type="TimeStampType"/>
+ <xsd:element name="CompleteCertificateRefs" type="CompleteCertificateRefsType"/>
+ <xsd:complexType name="CompleteCertificateRefsType">
+ <xsd:sequence>
+ <xsd:element name="CertRefs" type="CertIDListType"/>
+ </xsd:sequence>
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ <xsd:element name="CompleteRevocationRefs" type="CompleteRevocationRefsType"/>
+ <xsd:complexType name="CompleteRevocationRefsType">
+ <xsd:sequence>
+ <xsd:element name="CRLRefs" type="CRLRefsType" minOccurs="0"/>
+ <xsd:element name="OCSPRefs" type="OCSPRefsType" minOccurs="0"/>
+ <xsd:element name="OtherRefs" type="OtherCertStatusRefsType" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ <xsd:complexType name="CRLRefsType">
+ <xsd:sequence>
+ <xsd:element name="CRLRef" type="CRLRefType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CRLRefType">
+ <xsd:sequence>
+ <xsd:element name="DigestAlgAndValue" type="DigestAlgAndValueType"/>
+ <xsd:element name="CRLIdentifier" type="CRLIdentifierType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CRLIdentifierType">
+ <xsd:sequence>
+ <xsd:element name="Issuer" type="xsd:string"/>
+ <xsd:element name="IssueTime" type="xsd:dateTime"/>
+ <xsd:element name="Number" type="xsd:integer" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
+ </xsd:complexType>
+ <xsd:complexType name="OCSPRefsType">
+ <xsd:sequence>
+ <xsd:element name="OCSPRef" type="OCSPRefType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="OCSPRefType">
+ <xsd:sequence>
+ <xsd:element name="OCSPIdentifier" type="OCSPIdentifierType"/>
+ <xsd:element name="DigestAlgAndValue" type="DigestAlgAndValueType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="OCSPIdentifierType">
+ <xsd:sequence>
+ <xsd:element name="ResponderID" type="xsd:string"/>
+ <xsd:element name="ProducedAt" type="xsd:dateTime"/>
+ </xsd:sequence>
+ <xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
+ </xsd:complexType>
+ <xsd:complexType name="OtherCertStatusRefsType">
+ <xsd:sequence>
+ <xsd:element name="OtherRef" type="AnyType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="SigAndRefsTimeStamp" type="TimeStampType"/>
+ <xsd:element name="RefsOnlyTimeStamp" type="TimeStampType"/>
+ <xsd:element name="CertificateValues" type="CertificateValuesType"/>
+ <xsd:complexType name="CertificateValuesType">
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element name="EncapsulatedX509Certificate" type="EncapsulatedPKIDataType"/>
+ <xsd:element name="OtherCertificate" type="AnyType"/>
+ </xsd:choice>
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ <xsd:element name="RevocationValues" type="RevocationValuesType"/>
+ <xsd:complexType name="RevocationValuesType">
+ <xsd:sequence>
+ <xsd:element name="CRLValues" type="CRLValuesType" minOccurs="0"/>
+ <xsd:element name="OCSPValues" type="OCSPValuesType" minOccurs="0"/>
+ <xsd:element name="OtherValues" type="OtherCertStatusValuesType" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="Id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ <xsd:complexType name="CRLValuesType">
+ <xsd:sequence>
+ <xsd:element name="EncapsulatedCRLValue" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="OCSPValuesType">
+ <xsd:sequence>
+ <xsd:element name="EncapsulatedOCSPValue" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="OtherCertStatusValuesType">
+ <xsd:sequence>
+ <xsd:element name="OtherValue" type="AnyType" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="ArchiveTimeStamp" type="TimeStampType"/>
+</xsd:schema>
--- a/src/share/classes/com/sun/org/apache/xml/internal/security/resource/xmlsecurity_en.properties Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/org/apache/xml/internal/security/resource/xmlsecurity_en.properties Mon Apr 14 11:34:15 2008 -0700
@@ -1,123 +1,123 @@ algorithm.alreadyRegistered = URI {0} al
-algorithm.alreadyRegistered = URI {0} already assigned to class {1}
-algorithm.classDoesNotExist = Cannot register URI {0} to class {1} because this class does not exist in CLASSPATH
-algorithm.ClassDoesNotExist = Class {0} does not exist
-algorithm.extendsWrongClass = Cannot register URI {0} to class {1} because it does not extend {2}
-algorithms.CannotUseAlgorithmParameterSpecOnDSA = Sorry, but you cannot use a AlgorithmParameterSpec object for creating DSA signatures.
-algorithms.CannotUseAlgorithmParameterSpecOnRSA = Sorry, but you cannot use a AlgorithmParameterSpec object for creating RSA signatures.
-algorithms.CannotUseSecureRandomOnMAC = Sorry, but you cannot use a SecureRandom object for creating MACs.
-algorithms.HMACOutputLengthOnlyForHMAC = A HMACOutputLength can only be specified for HMAC integrity algorithms
-algorithms.NoSuchAlgorithm = The requested algorithm {0} does not exist. Original Message was: {1}
-algorithms.NoSuchMap = The algorithm URI "{0}" could not be mapped to a JCE algorithm
-algorithms.NoSuchProvider = The specified Provider {0} does not exist. Original Message was: {1}
-algorithms.operationOnlyVerification = A public key can only used for verification of a signature.
-algorithms.WrongKeyForThisOperation = Sorry, you supplied the wrong key type for this operation! You supplied a {0} but a {1} is needed.
-attributeValueIllegal = The attribute {0} has value {1} but must be {2}
-c14n.Canonicalizer.Exception = Exception during Canonicalization: Original Message was {0}
-c14n.Canonicalizer.IllegalNode = Illegal node type {0}, node name was {1}
-c14n.Canonicalizer.NoSuchCanonicalizer = No canonicalizer found with URI {0}
-c14n.Canonicalizer.ParserConfigurationException = ParserConfigurationException during Canonicalization: Original Message was {0}
-c14n.Canonicalizer.RelativeNamespace = Element {0} has a relative namespace: {1}="{2}"
-c14n.Canonicalizer.SAXException = SAXException during Canonicalization: Original Message was {0}
-c14n.Canonicalizer.TraversalNotSupported = This DOM document does not support Traversal {0}
-c14n.Canonicalizer.UnsupportedEncoding = Unsupported encoding {0}
-c14n.Canonicalizer.UnsupportedOperation = This canonicalizer does not support this operation
-c14n.XMLUtils.circumventBug2650forgotten = The tree has not been prepared for canonicalization using XMLUtils#circumventBug2650(Document)
-certificate.noSki.lowVersion = Certificate cannot contain a SubjectKeyIdentifier because it is only X509v{0}
-certificate.noSki.notOctetString = Certificates SubjectKeyIdentifier is not a OctetString
-certificate.noSki.null = Certificate does not contain a SubjectKeyIdentifier
-defaultNamespaceCannotBeSetHere = Default namespace cannot be set here
-ElementProxy.nullElement = Cannot create an ElementProxy from a null argument
-empty = {0}
-encryption.algorithmCannotBeUsedForEncryptedData = encryption.algorithmCannotBeUsedForEncryptedData {0}
-encryption.algorithmCannotEatInitParams = encryption.algorithmCannotEatInitParams
-encryption.algorithmCannotEncryptDecrypt = encryption.algorithmCannotEncryptDecrypt
-encryption.algorithmCannotWrapUnWrap = encryption.algorithmCannotWrapUnWrap
-encryption.ExplicitKeySizeMismatch = The xenc:KeySize element requests a key size of {0} bit but the algorithm implements {1} bit
-encryption.nonceLongerThanDecryptedPlaintext = The given nonce is longer than the available plaintext. I Cannot strip away this.
-encryption.RSAOAEP.dataHashWrong = data hash wrong
-encryption.RSAOAEP.dataStartWrong = data wrong start {0}
-encryption.RSAOAEP.dataTooShort = data too short
-encryption.RSAPKCS15.blockTruncated = block truncated
-encryption.RSAPKCS15.noDataInBlock = no data in block
-encryption.RSAPKCS15.unknownBlockType = unknown block type
-encryption.nokey = No Key Encryption Key loaded and cannot determine using key resolvers
-endorsed.jdk1.4.0 = Since it seems that nobody reads our installation notes, we must do it in the exception messages. Hope you read them. You did NOT use the endorsed mechanism from JDK 1.4 properly; look at <http://xml.apache.org/security/Java/installation.html> how to solve this problem.
-errorMessages.InvalidDigestValueException = INVALID signature -- check reference resolution.
-errorMessages.InvalidSignatureValueException = INVALID signature -- core validation failed.
-errorMessages.IOException = Other file I/O and similar exceptions.
-errorMessages.MissingKeyFailureException = Cannot verify because of missing public key. Provide it via addResource and try again.
-errorMessages.MissingResourceFailureException = Cannot verify because of unresolved references. Provide it via addResource and try again.
-errorMessages.NoSuchAlgorithmException = Unknown Algorithm {0}
-errorMessages.NotYetImplementedException = Functionality not yet there.
-errorMessages.XMLSignatureException = Verification failed for some other reason.
-decoding.divisible.four = It should be divisible by four
-decoding.general = Error while decoding
-FileKeyStorageImpl.addToDefaultFromRemoteNotImplemented = Method addToDefaultFromRemote() not yet implemented.
-FileKeyStorageImpl.NoCert.Context = Not found such a X509Certificate including context {0}
-FileKeyStorageImpl.NoCert.IssNameSerNo = Not found such a X509Certificate with IssuerName {0} and serial number {1}
-FileKeyStorageImpl.NoCert.SubjName = Not found such a X509Certificate including SubjectName {0}
-generic.dontHaveConstructionElement = I do not have a construction Element
-generic.EmptyMessage = {0}
-generic.NotYetImplemented = {0} Not YET implemented ;-((
-java.security.InvalidKeyException = Invalid key
-java.security.NoSuchProviderException = Unknown or unsupported provider
-java.security.UnknownKeyType = Unknown or unsupported key type {0}
-KeyInfo.needKeyResolver = More than one keyResovler have to be registered
-KeyInfo.nokey = Cannot get key from {0}
-KeyInfo.noKey = Cannot get the public key
-KeyInfo.wrongNumberOfObject = Need {0} keyObjects
-KeyInfo.wrongUse = This object was made for getting {0}
-keyResolver.alreadyRegistered = {1} class has already been registered for {0}
-KeyResolver.needStorageResolver = Need a StorageResolver to retrieve a Certificate from a {0}
-KeyResoverSpiImpl.cannotGetCert = Cannot get the Certificate that include or in {1} in implement class {0}
-KeyResoverSpiImpl.elementGeneration = Cannot make {1} element in implement class {0}
-KeyResoverSpiImpl.getPoublicKey = Cannot get the public key from implement class {0}
-KeyResoverSpiImpl.InvalidElement = Cannot set (2) Element in implement class {0}
-KeyResoverSpiImpl.keyStore = KeyStorage error in implement class {0}
-KeyResoverSpiImpl.need.Element = {1} type of Element is needed in implement class {0}
-KeyResoverSpiImpl.wrongCRLElement = Cannot make CRL from {1} in implement class {0}
-KeyResoverSpiImpl.wrongKeyObject = Need {1} type of KeyObject for generation Element in implement class{0}
-KeyResoverSpiImpl.wrongNumberOfObject = Need {1} keyObject in implement class {0}
-KeyStore.alreadyRegistered = {0} Class has already been registered for {1}
-KeyStore.register = {1} type class register error in class {0}
-KeyStore.registerStore.register = Registeration error for type {0}
-KeyValue.IllegalArgument = Cannot create a {0} from {1}
-namespacePrefixAlreadyUsedByOtherURI = Namespace prefix {0} already used by other URI {1}
-notYetInitialized = The module {0} is not yet initialized
-prefix.AlreadyAssigned = You want to assign {0} as prefix for namespace {1} but it is already assigned for {2}
-signature.Canonicalizer.UnknownCanonicalizer = Unknown canonicalizer. No handler installed for URI {0}
-signature.DSA.invalidFormat = Invalid ASN.1 encoding of the DSA signature
-signature.Generation.signBeforeGetValue = You have to XMLSignature.sign(java.security.PrivateKey) first
-signature.signaturePropertyHasNoTarget = The Target attribute of the SignatureProperty must be set
-signature.Transform.ErrorDuringTransform = A {1} was thrown during the {0} transform
-signature.Transform.NotYetImplemented = Transform {0} not yet implemented
-signature.Transform.NullPointerTransform = Null pointer as URI. Programming bug?
-signature.Transform.UnknownTransform = Unknown transformation. No handler installed for URI {0}
-signature.Transform.node = Current Node: {0}
-signature.Transform.nodeAndType = Current Node: {0}, type: {1}
-signature.Util.BignumNonPositive = bigInteger.signum() must be positive
-signature.Util.NonTextNode = Not a text node
-signature.Util.TooManyChilds = Too many childs of Type {0} in {1}
-signature.Verification.certificateError = Certificate error
-signature.Verification.IndexOutOfBounds = Index {0} illegal. We only have {1} References
-signature.Verification.internalError = Internal error
-signature.Verification.InvalidDigestOrReference = Invalid digest of reference {0}
-signature.Verification.keyStore = KeyStore error
-signature.Verification.MissingID = Cannot resolve element with ID {0}
-signature.Verification.MissingResources = Cannot resolve external resource {0}
-signature.Verification.NoSignatureElement = Input document contains no {0} Element in namespace {1}
-signature.Verification.Reference.NoInput = The Reference for URI {0} has no XMLSignatureInput
-signature.Verification.SignatureError = Signature error
-signature.XMLSignatureInput.MissingConstuctor = Cannot construct a XMLSignatureInput from class {0}
-signature.XMLSignatureInput.SerializeDOM = Input initialized with DOM Element. Use Canonicalization to serialize it
-signature.XMLSignatureInput.nodesetReference = Unable to convert to nodeset the reference
-transform.Init.IllegalContextArgument = Invalid context argument of class {0}. Must be String, org.w3c.dom.NodeList or java.io.InputStream.
-transform.init.NotInitialized =
-transform.init.wrongURI = Initialized with wrong URI. How could this happen? We implement {0} but {1} was used during initialization
-utils.Base64.IllegalBitlength = Illegal byte length; Data to be decoded must be a multiple of 4
-Base64Decoding = Error while decoding
-utils.resolver.noClass = Could not find a resolver for URI {0} and Base {1}
-xml.WrongContent = Cannot find {0} in {1}
-xml.WrongElement = Cannot create a {0} from a {1} element
-xpath.funcHere.documentsDiffer = The XPath is not in the same document as the context node
-xpath.funcHere.noXPathContext = Try to evaluate an XPath which uses the here() function but XPath is not inside an ds:XPath Element. XPath was : {0}
+algorithm.alreadyRegistered = URI {0} already assigned to class {1}
+algorithm.classDoesNotExist = Cannot register URI {0} to class {1} because this class does not exist in CLASSPATH
+algorithm.ClassDoesNotExist = Class {0} does not exist
+algorithm.extendsWrongClass = Cannot register URI {0} to class {1} because it does not extend {2}
+algorithms.CannotUseAlgorithmParameterSpecOnDSA = Sorry, but you cannot use a AlgorithmParameterSpec object for creating DSA signatures.
+algorithms.CannotUseAlgorithmParameterSpecOnRSA = Sorry, but you cannot use a AlgorithmParameterSpec object for creating RSA signatures.
+algorithms.CannotUseSecureRandomOnMAC = Sorry, but you cannot use a SecureRandom object for creating MACs.
+algorithms.HMACOutputLengthOnlyForHMAC = A HMACOutputLength can only be specified for HMAC integrity algorithms
+algorithms.NoSuchAlgorithm = The requested algorithm {0} does not exist. Original Message was: {1}
+algorithms.NoSuchMap = The algorithm URI "{0}" could not be mapped to a JCE algorithm
+algorithms.NoSuchProvider = The specified Provider {0} does not exist. Original Message was: {1}
+algorithms.operationOnlyVerification = A public key can only used for verification of a signature.
+algorithms.WrongKeyForThisOperation = Sorry, you supplied the wrong key type for this operation! You supplied a {0} but a {1} is needed.
+attributeValueIllegal = The attribute {0} has value {1} but must be {2}
+c14n.Canonicalizer.Exception = Exception during Canonicalization: Original Message was {0}
+c14n.Canonicalizer.IllegalNode = Illegal node type {0}, node name was {1}
+c14n.Canonicalizer.NoSuchCanonicalizer = No canonicalizer found with URI {0}
+c14n.Canonicalizer.ParserConfigurationException = ParserConfigurationException during Canonicalization: Original Message was {0}
+c14n.Canonicalizer.RelativeNamespace = Element {0} has a relative namespace: {1}="{2}"
+c14n.Canonicalizer.SAXException = SAXException during Canonicalization: Original Message was {0}
+c14n.Canonicalizer.TraversalNotSupported = This DOM document does not support Traversal {0}
+c14n.Canonicalizer.UnsupportedEncoding = Unsupported encoding {0}
+c14n.Canonicalizer.UnsupportedOperation = This canonicalizer does not support this operation
+c14n.XMLUtils.circumventBug2650forgotten = The tree has not been prepared for canonicalization using XMLUtils#circumventBug2650(Document)
+certificate.noSki.lowVersion = Certificate cannot contain a SubjectKeyIdentifier because it is only X509v{0}
+certificate.noSki.notOctetString = Certificates SubjectKeyIdentifier is not a OctetString
+certificate.noSki.null = Certificate does not contain a SubjectKeyIdentifier
+defaultNamespaceCannotBeSetHere = Default namespace cannot be set here
+ElementProxy.nullElement = Cannot create an ElementProxy from a null argument
+empty = {0}
+encryption.algorithmCannotBeUsedForEncryptedData = encryption.algorithmCannotBeUsedForEncryptedData {0}
+encryption.algorithmCannotEatInitParams = encryption.algorithmCannotEatInitParams
+encryption.algorithmCannotEncryptDecrypt = encryption.algorithmCannotEncryptDecrypt
+encryption.algorithmCannotWrapUnWrap = encryption.algorithmCannotWrapUnWrap
+encryption.ExplicitKeySizeMismatch = The xenc:KeySize element requests a key size of {0} bit but the algorithm implements {1} bit
+encryption.nonceLongerThanDecryptedPlaintext = The given nonce is longer than the available plaintext. I Cannot strip away this.
+encryption.RSAOAEP.dataHashWrong = data hash wrong
+encryption.RSAOAEP.dataStartWrong = data wrong start {0}
+encryption.RSAOAEP.dataTooShort = data too short
+encryption.RSAPKCS15.blockTruncated = block truncated
+encryption.RSAPKCS15.noDataInBlock = no data in block
+encryption.RSAPKCS15.unknownBlockType = unknown block type
+encryption.nokey = No Key Encryption Key loaded and cannot determine using key resolvers
+endorsed.jdk1.4.0 = Since it seems that nobody reads our installation notes, we must do it in the exception messages. Hope you read them. You did NOT use the endorsed mechanism from JDK 1.4 properly; look at <http://xml.apache.org/security/Java/installation.html> how to solve this problem.
+errorMessages.InvalidDigestValueException = INVALID signature -- check reference resolution.
+errorMessages.InvalidSignatureValueException = INVALID signature -- core validation failed.
+errorMessages.IOException = Other file I/O and similar exceptions.
+errorMessages.MissingKeyFailureException = Cannot verify because of missing public key. Provide it via addResource and try again.
+errorMessages.MissingResourceFailureException = Cannot verify because of unresolved references. Provide it via addResource and try again.
+errorMessages.NoSuchAlgorithmException = Unknown Algorithm {0}
+errorMessages.NotYetImplementedException = Functionality not yet there.
+errorMessages.XMLSignatureException = Verification failed for some other reason.
+decoding.divisible.four = It should be divisible by four
+decoding.general = Error while decoding
+FileKeyStorageImpl.addToDefaultFromRemoteNotImplemented = Method addToDefaultFromRemote() not yet implemented.
+FileKeyStorageImpl.NoCert.Context = Not found such a X509Certificate including context {0}
+FileKeyStorageImpl.NoCert.IssNameSerNo = Not found such a X509Certificate with IssuerName {0} and serial number {1}
+FileKeyStorageImpl.NoCert.SubjName = Not found such a X509Certificate including SubjectName {0}
+generic.dontHaveConstructionElement = I do not have a construction Element
+generic.EmptyMessage = {0}
+generic.NotYetImplemented = {0} Not YET implemented ;-((
+java.security.InvalidKeyException = Invalid key
+java.security.NoSuchProviderException = Unknown or unsupported provider
+java.security.UnknownKeyType = Unknown or unsupported key type {0}
+KeyInfo.needKeyResolver = More than one keyResovler have to be registered
+KeyInfo.nokey = Cannot get key from {0}
+KeyInfo.noKey = Cannot get the public key
+KeyInfo.wrongNumberOfObject = Need {0} keyObjects
+KeyInfo.wrongUse = This object was made for getting {0}
+keyResolver.alreadyRegistered = {1} class has already been registered for {0}
+KeyResolver.needStorageResolver = Need a StorageResolver to retrieve a Certificate from a {0}
+KeyResoverSpiImpl.cannotGetCert = Cannot get the Certificate that include or in {1} in implement class {0}
+KeyResoverSpiImpl.elementGeneration = Cannot make {1} element in implement class {0}
+KeyResoverSpiImpl.getPoublicKey = Cannot get the public key from implement class {0}
+KeyResoverSpiImpl.InvalidElement = Cannot set (2) Element in implement class {0}
+KeyResoverSpiImpl.keyStore = KeyStorage error in implement class {0}
+KeyResoverSpiImpl.need.Element = {1} type of Element is needed in implement class {0}
+KeyResoverSpiImpl.wrongCRLElement = Cannot make CRL from {1} in implement class {0}
+KeyResoverSpiImpl.wrongKeyObject = Need {1} type of KeyObject for generation Element in implement class{0}
+KeyResoverSpiImpl.wrongNumberOfObject = Need {1} keyObject in implement class {0}
+KeyStore.alreadyRegistered = {0} Class has already been registered for {1}
+KeyStore.register = {1} type class register error in class {0}
+KeyStore.registerStore.register = Registeration error for type {0}
+KeyValue.IllegalArgument = Cannot create a {0} from {1}
+namespacePrefixAlreadyUsedByOtherURI = Namespace prefix {0} already used by other URI {1}
+notYetInitialized = The module {0} is not yet initialized
+prefix.AlreadyAssigned = You want to assign {0} as prefix for namespace {1} but it is already assigned for {2}
+signature.Canonicalizer.UnknownCanonicalizer = Unknown canonicalizer. No handler installed for URI {0}
+signature.DSA.invalidFormat = Invalid ASN.1 encoding of the DSA signature
+signature.Generation.signBeforeGetValue = You have to XMLSignature.sign(java.security.PrivateKey) first
+signature.signaturePropertyHasNoTarget = The Target attribute of the SignatureProperty must be set
+signature.Transform.ErrorDuringTransform = A {1} was thrown during the {0} transform
+signature.Transform.NotYetImplemented = Transform {0} not yet implemented
+signature.Transform.NullPointerTransform = Null pointer as URI. Programming bug?
+signature.Transform.UnknownTransform = Unknown transformation. No handler installed for URI {0}
+signature.Transform.node = Current Node: {0}
+signature.Transform.nodeAndType = Current Node: {0}, type: {1}
+signature.Util.BignumNonPositive = bigInteger.signum() must be positive
+signature.Util.NonTextNode = Not a text node
+signature.Util.TooManyChilds = Too many childs of Type {0} in {1}
+signature.Verification.certificateError = Certificate error
+signature.Verification.IndexOutOfBounds = Index {0} illegal. We only have {1} References
+signature.Verification.internalError = Internal error
+signature.Verification.InvalidDigestOrReference = Invalid digest of reference {0}
+signature.Verification.keyStore = KeyStore error
+signature.Verification.MissingID = Cannot resolve element with ID {0}
+signature.Verification.MissingResources = Cannot resolve external resource {0}
+signature.Verification.NoSignatureElement = Input document contains no {0} Element in namespace {1}
+signature.Verification.Reference.NoInput = The Reference for URI {0} has no XMLSignatureInput
+signature.Verification.SignatureError = Signature error
+signature.XMLSignatureInput.MissingConstuctor = Cannot construct a XMLSignatureInput from class {0}
+signature.XMLSignatureInput.SerializeDOM = Input initialized with DOM Element. Use Canonicalization to serialize it
+signature.XMLSignatureInput.nodesetReference = Unable to convert to nodeset the reference
+transform.Init.IllegalContextArgument = Invalid context argument of class {0}. Must be String, org.w3c.dom.NodeList or java.io.InputStream.
+transform.init.NotInitialized =
+transform.init.wrongURI = Initialized with wrong URI. How could this happen? We implement {0} but {1} was used during initialization
+utils.Base64.IllegalBitlength = Illegal byte length; Data to be decoded must be a multiple of 4
+Base64Decoding = Error while decoding
+utils.resolver.noClass = Could not find a resolver for URI {0} and Base {1}
+xml.WrongContent = Cannot find {0} in {1}
+xml.WrongElement = Cannot create a {0} from a {1} element
+xpath.funcHere.documentsDiffer = The XPath is not in the same document as the context node
+xpath.funcHere.noXPathContext = Try to evaluate an XPath which uses the here() function but XPath is not inside an ds:XPath Element. XPath was : {0}
--- a/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java Mon Apr 14 11:34:15 2008 -0700
@@ -91,9 +91,7 @@ abstract public class EventRequestSpec {
void attemptImmediateResolve(VirtualMachine vm) {
// try to resolve immediately
- Iterator iter = vm.allClasses().iterator();
- while (iter.hasNext()) {
- ReferenceType refType = (ReferenceType)iter.next();
+ for (ReferenceType refType : vm.allClasses()) {
if (refSpec.matches(refType)) {
try {
resolve(refType);
--- a/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpecList.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpecList.java Mon Apr 14 11:34:15 2008 -0700
@@ -47,9 +47,8 @@ class EventRequestSpecList {
*/
void resolve(ReferenceType refType) {
synchronized(eventRequestSpecs) {
- Iterator iter = eventRequestSpecs.iterator();
- while (iter.hasNext()) {
- ((EventRequestSpec)iter.next()).attemptResolve(refType);
+ for (EventRequestSpec spec : eventRequestSpecs) {
+ spec.attemptResolve(refType);
}
}
}
@@ -79,7 +78,7 @@ class EventRequestSpecList {
BreakpointSpec
createMethodBreakpoint(String classPattern,
- String methodId, List methodArgs) {
+ String methodId, List<String> methodArgs) {
ReferenceTypeSpec refSpec =
new PatternReferenceTypeSpec(classPattern);
return new MethodBreakpointSpec(this, refSpec,
@@ -132,47 +131,48 @@ class EventRequestSpecList {
// -------- notify routines --------------------
- private Vector specListeners() {
- return (Vector)runtime.specListeners.clone();
+ @SuppressWarnings("unchecked")
+ private Vector<SpecListener> specListeners() {
+ return (Vector<SpecListener>)runtime.specListeners.clone();
}
void notifySet(EventRequestSpec spec) {
- Vector l = specListeners();
+ Vector<SpecListener> l = specListeners();
SpecEvent evt = new SpecEvent(spec);
for (int i = 0; i < l.size(); i++) {
- spec.notifySet((SpecListener)l.elementAt(i), evt);
+ spec.notifySet(l.elementAt(i), evt);
}
}
void notifyDeferred(EventRequestSpec spec) {
- Vector l = specListeners();
+ Vector<SpecListener> l = specListeners();
SpecEvent evt = new SpecEvent(spec);
for (int i = 0; i < l.size(); i++) {
- spec.notifyDeferred((SpecListener)l.elementAt(i), evt);
+ spec.notifyDeferred(l.elementAt(i), evt);
}
}
void notifyDeleted(EventRequestSpec spec) {
- Vector l = specListeners();
+ Vector<SpecListener> l = specListeners();
SpecEvent evt = new SpecEvent(spec);
for (int i = 0; i < l.size(); i++) {
- spec.notifyDeleted((SpecListener)l.elementAt(i), evt);
+ spec.notifyDeleted(l.elementAt(i), evt);
}
}
void notifyResolved(EventRequestSpec spec) {
- Vector l = specListeners();
+ Vector<SpecListener> l = specListeners();
SpecEvent evt = new SpecEvent(spec);
for (int i = 0; i < l.size(); i++) {
- spec.notifyResolved((SpecListener)l.elementAt(i), evt);
+ spec.notifyResolved(l.elementAt(i), evt);
}
}
void notifyError(EventRequestSpec spec, Exception exc) {
- Vector l = specListeners();
+ Vector<SpecListener> l = specListeners();
SpecErrorEvent evt = new SpecErrorEvent(spec, exc);
for (int i = 0; i < l.size(); i++) {
- spec.notifyError((SpecListener)l.elementAt(i), evt);
+ spec.notifyError(l.elementAt(i), evt);
}
}
}
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java Mon Apr 14 11:34:15 2008 -0700
@@ -232,10 +232,7 @@ public class ExecutionManager {
if (pattern.startsWith("*.")) {
// Wildcard matches any leading package name.
pattern = pattern.substring(1);
- List classes = vm().allClasses();
- Iterator iter = classes.iterator();
- while (iter.hasNext()) {
- ReferenceType type = ((ReferenceType)iter.next());
+ for (ReferenceType type : vm().allClasses()) {
if (type.name().endsWith(pattern)) {
result.add(type);
}
@@ -278,7 +275,7 @@ public class ExecutionManager {
public ThreadGroupReference systemThreadGroup()
throws NoSessionException {
ensureActiveSession();
- return (ThreadGroupReference)vm().topLevelThreadGroups().get(0);
+ return vm().topLevelThreadGroups().get(0);
}
/*
@@ -349,10 +346,9 @@ public class ExecutionManager {
* attach sessions.
*/
VirtualMachineManager mgr = Bootstrap.virtualMachineManager();
- List connectors = mgr.attachingConnectors();
- AttachingConnector connector = (AttachingConnector)connectors.get(0);
+ AttachingConnector connector = mgr.attachingConnectors().get(0);
Map<String, Connector.Argument> arguments = connector.defaultArguments();
- ((Connector.Argument)arguments.get("port")).setValue(portName);
+ arguments.get("port").setValue(portName);
Session newSession = internalAttach(connector, arguments);
if (newSession != null) {
@@ -504,10 +500,7 @@ public class ExecutionManager {
* if so, it gets removed here.
*/
EventRequestManager mgr = vm().eventRequestManager();
- List requests = mgr.stepRequests();
- Iterator iter = requests.iterator();
- while (iter.hasNext()) {
- StepRequest request = (StepRequest)iter.next();
+ for (StepRequest request : mgr.stepRequests()) {
if (request.thread().equals(thread)) {
mgr.deleteEventRequest(request);
break;
@@ -591,7 +584,7 @@ public class ExecutionManager {
if (session == null || thread == null) {
return null;
}
- ThreadInfo info = (ThreadInfo)threadInfoMap.get(thread);
+ ThreadInfo info = threadInfoMap.get(thread);
if (info == null) {
//### Should not hardcode initial frame count and prefetch here!
//info = new ThreadInfo(thread, 10, 10);
@@ -607,24 +600,22 @@ public class ExecutionManager {
void validateThreadInfo() {
session.interrupted = true;
- Iterator iter = threadInfoList.iterator();
- while (iter.hasNext()) {
- ((ThreadInfo)iter.next()).validate();
+ for (ThreadInfo threadInfo : threadInfoList) {
+ threadInfo.validate();
}
}
private void invalidateThreadInfo() {
if (session != null) {
session.interrupted = false;
- Iterator iter = threadInfoList.iterator();
- while (iter.hasNext()) {
- ((ThreadInfo)iter.next()).invalidate();
+ for (ThreadInfo threadInfo : threadInfoList) {
+ threadInfo.invalidate();
}
}
}
void removeThreadInfo(ThreadReference thread) {
- ThreadInfo info = (ThreadInfo)threadInfoMap.get(thread);
+ ThreadInfo info = threadInfoMap.get(thread);
if (info != null) {
info.invalidate();
threadInfoMap.remove(thread);
@@ -702,7 +693,7 @@ public class ExecutionManager {
while (inputBuffer.size() < 1) {
inputLock.wait();
}
- line = (String)inputBuffer.removeLast();
+ line = inputBuffer.removeLast();
} catch (InterruptedException e) {}
}
}
@@ -774,7 +765,7 @@ public class ExecutionManager {
public BreakpointSpec
createMethodBreakpoint(String classPattern,
- String methodId, List methodArgs) {
+ String methodId, List<String> methodArgs) {
return specList.createMethodBreakpoint(classPattern,
methodId, methodArgs);
}
@@ -811,7 +802,7 @@ public class ExecutionManager {
specList.install(spec, vm());
}
- public List eventRequestSpecs() {
+ public List<EventRequestSpec> eventRequestSpecs() {
return specList.eventRequestSpecs();
}
}
--- a/src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java Mon Apr 14 11:34:15 2008 -0700
@@ -82,9 +82,7 @@ class JDIEventSource extends Thread {
boolean interrupted = es.suspendedAll();
es.notify(firstListener);
boolean wantInterrupt = JDIEventSource.this.wantInterrupt;
- for (Iterator it = session.runtime.jdiListeners.iterator();
- it.hasNext(); ) {
- JDIListener jl = (JDIListener)it.next();
+ for (JDIListener jl : session.runtime.jdiListeners) {
es.notify(jl);
}
if (interrupted && !wantInterrupt) {
--- a/src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java Mon Apr 14 11:34:15 2008 -0700
@@ -58,12 +58,12 @@ public class LineBreakpointSpec extends
LineNotFoundException {
Location location = null;
try {
- List locs = clazz.locationsOfLine(lineNumber());
+ List<Location> locs = clazz.locationsOfLine(lineNumber());
if (locs.size() == 0) {
throw new LineNotFoundException();
}
// TODO handle multiple locations
- location = (Location)locs.get(0);
+ location = locs.get(0);
if (location.method() == null) {
throw new LineNotFoundException();
}
--- a/src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java Mon Apr 14 11:34:15 2008 -0700
@@ -34,11 +34,11 @@ import java.util.Iterator;
public class MethodBreakpointSpec extends BreakpointSpec {
String methodId;
- List methodArgs;
+ List<String> methodArgs;
MethodBreakpointSpec(EventRequestSpecList specs,
ReferenceTypeSpec refSpec,
- String methodId, List methodArgs) {
+ String methodId, List<String> methodArgs) {
super(specs, refSpec);
this.methodId = methodId;
this.methodArgs = methodArgs;
@@ -76,7 +76,7 @@ public class MethodBreakpointSpec extend
return methodId;
}
- public List methodArgs() {
+ public List<String> methodArgs() {
return methodArgs;
}
@@ -120,14 +120,13 @@ public class MethodBreakpointSpec extend
buffer.append('.');
buffer.append(methodId);
if (methodArgs != null) {
- Iterator iter = methodArgs.iterator();
boolean first = true;
buffer.append('(');
- while (iter.hasNext()) {
+ for (String name : methodArgs) {
if (!first) {
buffer.append(',');
}
- buffer.append((String)iter.next());
+ buffer.append(name);
first = false;
}
buffer.append(")");
@@ -151,8 +150,8 @@ public class MethodBreakpointSpec extend
* and if the number of arguments in the method matches the
* number of names passed
*/
- private boolean compareArgTypes(Method method, List nameList) {
- List argTypeNames = method.argumentTypeNames();
+ private boolean compareArgTypes(Method method, List<String> nameList) {
+ List<String> argTypeNames = method.argumentTypeNames();
// If argument counts differ, we can stop here
if (argTypeNames.size() != nameList.size()) {
@@ -162,8 +161,8 @@ public class MethodBreakpointSpec extend
// Compare each argument type's name
int nTypes = argTypeNames.size();
for (int i = 0; i < nTypes; ++i) {
- String comp1 = (String)argTypeNames.get(i);
- String comp2 = (String)nameList.get(i);
+ String comp1 = argTypeNames.get(i);
+ String comp2 = nameList.get(i);
if (! comp1.equals(comp2)) {
/*
* We have to handle varargs. EG, the
@@ -288,22 +287,17 @@ public class MethodBreakpointSpec extend
List<String> argTypeNames = null;
if (methodArgs() != null) {
argTypeNames = new ArrayList<String>(methodArgs().size());
- Iterator iter = methodArgs().iterator();
- while (iter.hasNext()) {
- String name = (String)iter.next();
+ for (String name : methodArgs()) {
name = normalizeArgTypeName(name);
argTypeNames.add(name);
}
}
// Check each method in the class for matches
- Iterator iter = clazz.methods().iterator();
Method firstMatch = null; // first method with matching name
Method exactMatch = null; // (only) method with same name & sig
int matchCount = 0; // > 1 implies overload
- while (iter.hasNext()) {
- Method candidate = (Method)iter.next();
-
+ for (Method candidate : clazz.methods()) {
if (candidate.name().equals(methodName())) {
matchCount++;
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java Mon Apr 14 11:34:15 2008 -0700
@@ -36,7 +36,7 @@ import java.util.Iterator;
* Descend the tree of thread groups.
* @author Robert G. Field
*/
-public class ThreadGroupIterator implements Iterator {
+public class ThreadGroupIterator implements Iterator<ThreadGroupReference> {
private final Stack<Iterator<ThreadGroupReference>> stack
= new Stack<Iterator<ThreadGroupReference>>();
@@ -56,8 +56,8 @@ public class ThreadGroupIterator impleme
}
*/
- private Iterator top() {
- return (Iterator)stack.peek();
+ private Iterator<ThreadGroupReference> top() {
+ return stack.peek();
}
/**
@@ -77,12 +77,12 @@ public class ThreadGroupIterator impleme
return !stack.isEmpty();
}
- public Object next() {
+ public ThreadGroupReference next() {
return nextThreadGroup();
}
public ThreadGroupReference nextThreadGroup() {
- ThreadGroupReference tg = (ThreadGroupReference)top().next();
+ ThreadGroupReference tg = top().next();
push(tg.threadGroups());
return tg;
}
--- a/src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java Mon Apr 14 11:34:15 2008 -0700
@@ -30,8 +30,8 @@ import java.util.List;
import java.util.List;
import java.util.Iterator;
-public class ThreadIterator implements Iterator {
- Iterator it = null;
+public class ThreadIterator implements Iterator<ThreadReference> {
+ Iterator<ThreadReference> it = null;
ThreadGroupIterator tgi;
public ThreadIterator(ThreadGroupReference tg) {
@@ -53,12 +53,12 @@ public class ThreadIterator implements I
return true;
}
- public Object next() {
+ public ThreadReference next() {
return it.next();
}
public ThreadReference nextThread() {
- return (ThreadReference)next();
+ return next();
}
public void remove() {
--- a/src/share/classes/com/sun/tools/example/debug/expr/LValue.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/expr/LValue.java Mon Apr 14 11:34:15 2008 -0700
@@ -191,11 +191,12 @@ abstract class LValue {
return field;
}
- static List methodsByName(ReferenceType refType, String name, int kind) {
- List list = refType.methodsByName(name);
- Iterator iter = list.iterator();
+ static List<Method> methodsByName(ReferenceType refType,
+ String name, int kind) {
+ List<Method> list = refType.methodsByName(name);
+ Iterator<Method> iter = list.iterator();
while (iter.hasNext()) {
- Method method = (Method)iter.next();
+ Method method = iter.next();
boolean isStatic = method.isStatic();
if (((kind == STATIC) && !isStatic) ||
((kind == INSTANCE) && isStatic)) {
@@ -231,21 +232,21 @@ abstract class LValue {
* argType is not assignable from the type of the argument value.
* IE, one is an Apple and the other is an Orange.
*/
- static int argumentsMatch(List argTypes, List arguments) {
+ static int argumentsMatch(List<Type> argTypes, List<Value> arguments) {
if (argTypes.size() != arguments.size()) {
return DIFFERENT;
}
- Iterator typeIter = argTypes.iterator();
- Iterator valIter = arguments.iterator();
+ Iterator<Type> typeIter = argTypes.iterator();
+ Iterator<Value> valIter = arguments.iterator();
int result = SAME;
// If any pair aren't the same, change the
// result to ASSIGNABLE. If any pair aren't
// assignable, return DIFFERENT
while (typeIter.hasNext()) {
- Type argType = (Type)typeIter.next();
- Value value = (Value)valIter.next();
+ Type argType = typeIter.next();
+ Value value = valIter.next();
if (value == null) {
// Null values can be passed to any non-primitive argument
if (primitiveTypeNames.contains(argType.name())) {
@@ -333,7 +334,7 @@ abstract class LValue {
if (fromType instanceof ArrayType) {
return isArrayAssignableTo((ArrayType)fromType, toType);
}
- List interfaces;
+ List<InterfaceType> interfaces;
if (fromType instanceof ClassType) {
ClassType superclazz = ((ClassType)fromType).superclass();
if ((superclazz != null) && isAssignableTo(superclazz, toType)) {
@@ -344,9 +345,7 @@ abstract class LValue {
// fromType must be an InterfaceType
interfaces = ((InterfaceType)fromType).superinterfaces();
}
- Iterator iter = interfaces.iterator();
- while (iter.hasNext()) {
- InterfaceType interfaze = (InterfaceType)iter.next();
+ for (InterfaceType interfaze : interfaces) {
if (isAssignableTo(interfaze, toType)) {
return true;
}
@@ -354,7 +353,8 @@ abstract class LValue {
return false;
}
- static Method resolveOverload(List overloads, List arguments)
+ static Method resolveOverload(List<Method> overloads,
+ List<Value> arguments)
throws ParseException {
// If there is only one method to call, we'll just choose
@@ -362,7 +362,7 @@ abstract class LValue {
// the invoke will return a better error message than we
// could generate here.
if (overloads.size() == 1) {
- return (Method)overloads.get(0);
+ return overloads.get(0);
}
// Resolving overloads is beyond the scope of this exercise.
@@ -374,12 +374,10 @@ abstract class LValue {
// methods to call. And, since casts aren't implemented,
// the user can't use them to pick a particular overload to call.
// IE, the user is out of luck in this case.
- Iterator iter = overloads.iterator();
Method retVal = null;
int assignableCount = 0;
- while (iter.hasNext()) {
- Method mm = (Method)iter.next();
- List argTypes;
+ for (Method mm : overloads) {
+ List<Type> argTypes;
try {
argTypes = mm.argumentTypes();
} catch (ClassNotLoadedException ee) {
@@ -443,7 +441,7 @@ abstract class LValue {
final ObjectReference obj;
final ThreadReference thread;
final Field matchingField;
- final List overloads;
+ final List<Method> overloads;
Method matchingMethod = null;
List<Value> methodArguments = null;
@@ -510,7 +508,7 @@ abstract class LValue {
final ReferenceType refType;
final ThreadReference thread;
final Field matchingField;
- final List overloads;
+ final List<Method> overloads;
Method matchingMethod = null;
List<Value> methodArguments = null;
@@ -765,7 +763,7 @@ abstract class LValue {
static LValue makeNewObject(VirtualMachine vm,
ExpressionParser.GetFrame frameGetter,
String className, List<Value> arguments) throws ParseException {
- List classes = vm.classesByName(className);
+ List<ReferenceType> classes = vm.classesByName(className);
if (classes.size() == 0) {
throw new ParseException("No class named: " + className);
}
@@ -774,7 +772,7 @@ abstract class LValue {
throw new ParseException("More than one class named: " +
className);
}
- ReferenceType refType = (ReferenceType)classes.get(0);
+ ReferenceType refType = classes.get(0);
if (!(refType instanceof ClassType)) {
@@ -784,9 +782,9 @@ abstract class LValue {
ClassType classType = (ClassType)refType;
List<Method> methods = new ArrayList<Method>(classType.methods()); // writable
- Iterator iter = methods.iterator();
+ Iterator<Method> iter = methods.iterator();
while (iter.hasNext()) {
- Method method = (Method)iter.next();
+ Method method = iter.next();
if (!method.isConstructor()) {
iter.remove();
}
@@ -858,13 +856,13 @@ abstract class LValue {
}
// check for class name
while (izer.hasMoreTokens()) {
- List classes = vm.classesByName(first);
+ List<ReferenceType> classes = vm.classesByName(first);
if (classes.size() > 0) {
if (classes.size() > 1) {
throw new ParseException("More than one class named: " +
first);
} else {
- ReferenceType refType = (ReferenceType)classes.get(0);
+ ReferenceType refType = classes.get(0);
LValue lval = new LValueStaticMember(refType,
izer.nextToken(), thread);
return nFields(lval, izer, thread);
--- a/src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java Mon Apr 14 11:34:15 2008 -0700
@@ -124,9 +124,7 @@ public class ClassTreeTool extends JPane
public void sessionStart(EventObject e) {
// Get system classes and any others loaded before attaching.
try {
- Iterator iter = runtime.allClasses().iterator();
- while (iter.hasNext()) {
- ReferenceType type = ((ReferenceType)iter.next());
+ for (ReferenceType type : runtime.allClasses()) {
root.addClass(type);
}
} catch (VMDisconnectedException ee) {
--- a/src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java Mon Apr 14 11:34:15 2008 -0700
@@ -77,7 +77,7 @@ public class CommandInterpreter {
while (ti.hasNext()) {
tlist.add(ti.nextThread());
}
- threads = (ThreadReference[])tlist.toArray(new ThreadReference[tlist.size()]);
+ threads = tlist.toArray(new ThreadReference[tlist.size()]);
}
return threads;
}
@@ -146,11 +146,9 @@ public class CommandInterpreter {
// Command: classes
private void commandClasses() throws NoSessionException {
- List list = runtime.allClasses();
OutputSink out = env.getOutputSink();
//out.println("** classes list **");
- for (int i = 0 ; i < list.size() ; i++) {
- ReferenceType refType = (ReferenceType)list.get(i);
+ for (ReferenceType refType : runtime.allClasses()) {
out.println(refType.name());
}
out.show();
@@ -167,16 +165,16 @@ public class CommandInterpreter {
String idClass = t.nextToken();
ReferenceType cls = findClass(idClass);
if (cls != null) {
- List methods = cls.allMethods();
+ List<Method> methods = cls.allMethods();
OutputSink out = env.getOutputSink();
for (int i = 0; i < methods.size(); i++) {
- Method method = (Method)methods.get(i);
+ Method method = methods.get(i);
out.print(method.declaringType().name() + " " +
method.name() + "(");
- Iterator it = method.argumentTypeNames().iterator();
+ Iterator<String> it = method.argumentTypeNames().iterator();
if (it.hasNext()) {
while (true) {
- out.print((String)it.next());
+ out.print(it.next());
if (!it.hasNext()) {
break;
}
@@ -193,10 +191,10 @@ public class CommandInterpreter {
}
private ReferenceType findClass(String pattern) throws NoSessionException {
- List results = runtime.findClassesMatchingPattern(pattern);
+ List<ReferenceType> results = runtime.findClassesMatchingPattern(pattern);
if (results.size() > 0) {
//### Should handle multiple results sensibly.
- return (ReferenceType)results.get(0);
+ return results.get(0);
}
return null;
}
@@ -235,11 +233,11 @@ public class CommandInterpreter {
private int printThreadGroup(OutputSink out, ThreadGroupReference tg, int iThread) {
out.println("Group " + tg.name() + ":");
- List tlist = tg.threads();
+ List<ThreadReference> tlist = tg.threads();
int maxId = 0;
int maxName = 0;
for (int i = 0 ; i < tlist.size() ; i++) {
- ThreadReference thr = (ThreadReference)tlist.get(i);
+ ThreadReference thr = tlist.get(i);
int len = Utils.description(thr).length();
if (len > maxId)
maxId = len;
@@ -254,7 +252,7 @@ public class CommandInterpreter {
String maxNumString = String.valueOf(iThread + tlist.size());
int maxNumDigits = maxNumString.length();
for (int i = 0 ; i < tlist.size() ; i++) {
- ThreadReference thr = (ThreadReference)tlist.get(i);
+ ThreadReference thr = tlist.get(i);
char buf[] = new char[80];
for (int j = 0; j < 79; j++) {
buf[j] = ' ';
@@ -283,9 +281,7 @@ public class CommandInterpreter {
sbOut.setLength(79);
out.println(sbOut.toString());
}
- List tglist = tg.threadGroups();
- for (int ig = 0; ig < tglist.size(); ig++) {
- ThreadGroupReference tg0 = (ThreadGroupReference)tglist.get(ig);
+ for (ThreadGroupReference tg0 : tg.threadGroups()) {
if (!tg.equals(tg0)) { // TODO ref mgt
iThread += printThreadGroup(out, tg0, iThread + tlist.size());
}
@@ -733,7 +729,7 @@ public class CommandInterpreter {
if (token.toLowerCase().equals("all")) {
ThreadIterator it = allThreads();
while (it.hasNext()) {
- ThreadReference thread = (ThreadReference)it.next();
+ ThreadReference thread = it.next();
out.println(thread.name() + ": ");
dumpStack(thread, showPC);
}
@@ -755,7 +751,7 @@ public class CommandInterpreter {
//env.failure("Target VM must be in interrupted state.");
//env.failure("Current thread isn't suspended.");
//### Should handle extremely long stack traces sensibly for user.
- List stack = null;
+ List<StackFrame> stack = null;
try {
stack = thread.frames();
} catch (IncompatibleThreadStateException e) {
@@ -772,7 +768,7 @@ public class CommandInterpreter {
OutputSink out = env.getOutputSink();
int nFrames = stack.size();
for (int i = frameIndex; i < nFrames; i++) {
- StackFrame frame = (StackFrame)stack.get(i);
+ StackFrame frame = stack.get(i);
Location loc = frame.location();
Method meth = loc.method();
out.print(" [" + (i + 1) + "] ");
@@ -780,7 +776,7 @@ public class CommandInterpreter {
out.print('.');
out.print(meth.name());
out.print(" (");
- if (meth instanceof Method && ((Method)meth).isNative()) {
+ if (meth.isNative()) {
out.print("native method");
} else if (loc.lineNumber() != -1) {
try {
@@ -806,14 +802,13 @@ public class CommandInterpreter {
private void listEventRequests() throws NoSessionException {
// Print set breakpoints
- Iterator iter = runtime.eventRequestSpecs().iterator();
- if (!iter.hasNext()) {
+ List<EventRequestSpec> specs = runtime.eventRequestSpecs();
+ if (specs.isEmpty()) {
env.notice("No breakpoints/watchpoints/exceptions set.");
} else {
OutputSink out = env.getOutputSink();
out.println("Current breakpoints/watchpoints/exceptions set:");
- while (iter.hasNext()) {
- EventRequestSpec bp = (EventRequestSpec)iter.next();
+ for (EventRequestSpec bp : specs) {
out.println("\t" + bp);
}
out.show();
@@ -926,13 +921,13 @@ public class CommandInterpreter {
//### need 'clear all'
BreakpointSpec bpSpec = parseBreakpointSpec(t.nextToken());
if (bpSpec != null) {
- Iterator iter = runtime.eventRequestSpecs().iterator();
- if (!iter.hasNext()) {
+ List<EventRequestSpec> specs = runtime.eventRequestSpecs();
+
+ if (specs.isEmpty()) {
env.notice("No breakpoints set.");
} else {
- List<BreakpointSpec> toDelete = new ArrayList<BreakpointSpec>();
- while (iter.hasNext()) {
- BreakpointSpec spec = (BreakpointSpec)iter.next();
+ List<EventRequestSpec> toDelete = new ArrayList<EventRequestSpec>();
+ for (EventRequestSpec spec : specs) {
if (spec.equals(bpSpec)) {
toDelete.add(spec);
}
@@ -941,7 +936,7 @@ public class CommandInterpreter {
if (toDelete.size() <= 1) {
env.notice("No matching breakpoint set.");
}
- for (BreakpointSpec spec : toDelete) {
+ for (EventRequestSpec spec : toDelete) {
runtime.delete(spec);
}
}
@@ -988,7 +983,7 @@ public class CommandInterpreter {
lineno = Integer.valueOf(id).intValue();
} catch (NumberFormatException nfe) {
// It isn't -- see if it's a method name.
- List meths = refType.methodsByName(id);
+ List<Method> meths = refType.methodsByName(id);
if (meths == null || meths.size() == 0) {
env.failure(id +
" is not a valid line number or " +
@@ -1001,7 +996,7 @@ public class CommandInterpreter {
refType.name());
return;
}
- loc = ((Method)meths.get(0)).location();
+ loc = meths.get(0).location();
lineno = loc.lineNumber();
}
}
@@ -1121,7 +1116,7 @@ public class CommandInterpreter {
return;
}
- List vars;
+ List<LocalVariable> vars;
try {
vars = frame.visibleVariables();
if (vars == null || vars.size() == 0) {
@@ -1136,15 +1131,13 @@ public class CommandInterpreter {
OutputSink out = env.getOutputSink();
out.println("Method arguments:");
- for (Iterator it = vars.iterator(); it.hasNext(); ) {
- LocalVariable var = (LocalVariable)it.next();
+ for (LocalVariable var : vars) {
if (var.isArgument()) {
printVar(out, var, frame);
}
}
out.println("Local variables:");
- for (Iterator it = vars.iterator(); it.hasNext(); ) {
- LocalVariable var = (LocalVariable)it.next();
+ for (LocalVariable var : vars) {
if (!var.isArgument()) {
printVar(out, var, frame);
}
@@ -1245,8 +1238,7 @@ public class CommandInterpreter {
private void dump(OutputSink out,
ObjectReference obj, ReferenceType refType,
ReferenceType refTypeBase) {
- for (Iterator it = refType.fields().iterator(); it.hasNext(); ) {
- Field field = (Field)it.next();
+ for (Field field : refType.fields()) {
out.print(" ");
if (!refType.equals(refTypeBase)) {
out.print(refType.name() + ".");
@@ -1261,9 +1253,8 @@ public class CommandInterpreter {
dump(out, obj, sup, refTypeBase);
}
} else if (refType instanceof InterfaceType) {
- List sups = ((InterfaceType)refType).superinterfaces();
- for (Iterator it = sups.iterator(); it.hasNext(); ) {
- dump(out, obj, (ReferenceType)it.next(), refTypeBase);
+ for (InterfaceType sup : ((InterfaceType)refType).superinterfaces()) {
+ dump(out, obj, sup, refTypeBase);
}
}
}
--- a/src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java Mon Apr 14 11:34:15 2008 -0700
@@ -201,11 +201,11 @@ public class JDBFileFilter extends FileF
if(description == null || isExtensionListInDescription()) {
fullDescription = description==null ? "(" : description + " (";
// build the description from the extension list
- Enumeration extensions = filters.keys();
+ Enumeration<String> extensions = filters.keys();
if(extensions != null) {
- fullDescription += "." + (String) extensions.nextElement();
+ fullDescription += "." + extensions.nextElement();
while (extensions.hasMoreElements()) {
- fullDescription += ", " + (String) extensions.nextElement();
+ fullDescription += ", " + extensions.nextElement();
}
}
fullDescription += ")";
--- a/src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java Mon Apr 14 11:34:15 2008 -0700
@@ -131,14 +131,13 @@ class LaunchTool {
final JPanel radioPanel = new JPanel();
final ButtonGroup radioGroup = new ButtonGroup();
VirtualMachineManager manager = Bootstrap.virtualMachineManager();
- List all = manager.allConnectors();
+ List<Connector> all = manager.allConnectors();
Map<ButtonModel, Connector> modelToConnector = new HashMap<ButtonModel, Connector>(all.size(), 0.5f);
dialog.setModal(true);
dialog.setTitle("Select Connector Type");
radioPanel.setLayout(new BoxLayout(radioPanel, BoxLayout.Y_AXIS));
- for (Iterator it = all.iterator(); it.hasNext(); ) {
- Connector connector = (Connector)it.next();
+ for (Connector connector : all) {
JRadioButton radio = new JRadioButton(connector.description());
modelToConnector.put(radio.getModel(), connector);
radioPanel.add(radio);
@@ -166,7 +165,7 @@ class LaunchTool {
dialog.show();
return oked[0] ?
- (Connector)(modelToConnector.get(radioGroup.getSelection())) :
+ modelToConnector.get(radioGroup.getSelection()) :
null;
}
@@ -188,13 +187,12 @@ class LaunchTool {
// guts.add(new JLabel(connector.description()));
final List<ArgRep> argReps = new ArrayList<ArgRep>(args.size());
- for (Iterator it = args.values().iterator(); it.hasNext(); ) {
- Object arg = it.next();
+ for (Connector.Argument arg : args.values()) {
ArgRep ar;
if (arg instanceof Connector.BooleanArgument) {
ar = new BooleanArgRep((Connector.BooleanArgument)arg, guts);
} else {
- ar = new StringArgRep((Connector.Argument)arg, guts);
+ ar = new StringArgRep(arg, guts);
}
argReps.add(ar);
}
@@ -202,8 +200,7 @@ class LaunchTool {
JPanel buttonPanel = okCancel( dialog, new ActionListener() {
public void actionPerformed(ActionEvent event) {
- for (Iterator it = argReps.iterator(); it.hasNext(); ) {
- ArgRep ar = (ArgRep)it.next();
+ for (ArgRep ar : argReps) {
if (!ar.isSpecified()) {
JOptionPane.showMessageDialog(dialog,
ar.arg.label() +
--- a/src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java Mon Apr 14 11:34:15 2008 -0700
@@ -42,7 +42,7 @@ public class SearchPath {
dlist.add(st.nextToken());
}
pathString = searchPath;
- pathArray = (String[])dlist.toArray(new String[dlist.size()]);
+ pathArray = dlist.toArray(new String[dlist.size()]);
}
public boolean isEmpty() {
@@ -54,7 +54,7 @@ public class SearchPath {
}
public String[] asArray() {
- return (String[])pathArray.clone();
+ return pathArray.clone();
}
public File resolve(String relativeFileName) {
@@ -89,7 +89,7 @@ public class SearchPath {
}
}
}
- return (String[])s.toArray(new String[s.size()]);
+ return s.toArray(new String[s.size()]);
}
}
--- a/src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java Mon Apr 14 11:34:15 2008 -0700
@@ -113,7 +113,7 @@ public class SourceManager {
* Returns null if not available.
*/
public SourceModel sourceForClass(ReferenceType refType) {
- SourceModel sm = (SourceModel)classToSource.get(refType);
+ SourceModel sm = classToSource.get(refType);
if (sm != null) {
return sm;
}
@@ -140,10 +140,10 @@ public class SourceManager {
*/
//### Use hash table for this?
public SourceModel sourceForFile(File path) {
- Iterator iter = sourceList.iterator();
+ Iterator<SourceModel> iter = sourceList.iterator();
SourceModel sm = null;
while (iter.hasNext()) {
- SourceModel candidate = (SourceModel)iter.next();
+ SourceModel candidate = iter.next();
if (candidate.fileName().equals(path)) {
sm = candidate;
iter.remove(); // Will move to start of list.
--- a/src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java Mon Apr 14 11:34:15 2008 -0700
@@ -187,22 +187,17 @@ public class SourceModel extends Abstrac
* when sourceLines is set.
*/
private void markClassLines(ReferenceType refType) {
- List methods = refType.methods();
- for (Iterator mit = methods.iterator(); mit.hasNext();) {
- Method meth = (Method)mit.next();
+ for (Method meth : refType.methods()) {
try {
- List lines = meth.allLineLocations();
- for (Iterator lit = lines.iterator(); lit.hasNext();) {
- Location loc = (Location)lit.next();
+ for (Location loc : meth.allLineLocations()) {
showExecutable(loc.lineNumber(), refType);
}
} catch (AbsentInformationException exc) {
// do nothing
}
}
- List bps = env.getExecutionManager().eventRequestManager().breakpointRequests();
- for (Iterator it = bps.iterator(); it.hasNext();) {
- BreakpointRequest bp = (BreakpointRequest)it.next();
+ for (BreakpointRequest bp :
+ env.getExecutionManager().eventRequestManager().breakpointRequests()) {
if (bp.location() != null) {
Location loc = bp.location();
if (loc.declaringType().equals(refType)) {
@@ -224,8 +219,8 @@ public class SourceModel extends Abstrac
} finally {
reader.close();
}
- for (Iterator it = classes.iterator(); it.hasNext();) {
- markClassLines((ClassType)it.next());
+ for (ReferenceType refType : classes) {
+ markClassLines(refType);
}
}
--- a/src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java Mon Apr 14 11:34:15 2008 -0700
@@ -139,7 +139,7 @@ public class StackTraceTool extends JPan
String methName =
meth.declaringType().name() + '.' + meth.name();
String position = "";
- if (meth instanceof Method && ((Method)meth).isNative()) {
+ if (meth.isNative()) {
position = " (native method)";
} else if (loc.lineNumber() != -1) {
position = ":" + loc.lineNumber();
--- a/src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java Mon Apr 14 11:34:15 2008 -0700
@@ -133,9 +133,7 @@ public class ThreadTreeTool extends JPan
public void sessionStart(EventObject e) {
try {
- Iterator iter = runtime.allThreads().iterator();
- while (iter.hasNext()) {
- ThreadReference thread = ((ThreadReference)iter.next());
+ for (ThreadReference thread : runtime.allThreads()) {
root.addThread(thread);
}
} catch (VMDisconnectedException ee) {
@@ -244,16 +242,16 @@ public class ThreadTreeTool extends JPan
}
}
- private void addThread(List threadPath, ThreadReference thread) {
+ private void addThread(List<String> threadPath, ThreadReference thread) {
int size = threadPath.size();
if (size == 0) {
return;
} else if (size == 1) {
- String name = (String)threadPath.get(0);
+ String name = threadPath.get(0);
insertNode(name, thread);
} else {
- String head = (String)threadPath.get(0);
- List tail = threadPath.subList(1, size);
+ String head = threadPath.get(0);
+ List<String> tail = threadPath.subList(1, size);
ThreadTreeNode child = insertNode(head, null);
child.addThread(tail, thread);
}
@@ -288,17 +286,17 @@ public class ThreadTreeTool extends JPan
}
}
- private void removeThread(List threadPath, ThreadReference thread) {
+ private void removeThread(List<String> threadPath, ThreadReference thread) {
int size = threadPath.size();
if (size == 0) {
return;
} else if (size == 1) {
- String name = (String)threadPath.get(0);
+ String name = threadPath.get(0);
ThreadTreeNode child = findLeafNode(thread, name);
treeModel.removeNodeFromParent(child);
} else {
- String head = (String)threadPath.get(0);
- List tail = threadPath.subList(1, size);
+ String head = threadPath.get(0);
+ List<String> tail = threadPath.subList(1, size);
ThreadTreeNode child = findInternalNode(head);
child.removeThread(tail, thread);
if (child.isThreadGroup() && child.getChildCount() < 1) {
--- a/src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java Mon Apr 14 11:34:15 2008 -0700
@@ -34,7 +34,7 @@ import java.util.Iterator;
class BreakpointSpec extends EventRequestSpec {
String methodId;
- List methodArgs;
+ List<String> methodArgs;
int lineNumber;
BreakpointSpec(ReferenceTypeSpec refSpec, int lineNumber) {
@@ -45,7 +45,7 @@ class BreakpointSpec extends EventReques
}
BreakpointSpec(ReferenceTypeSpec refSpec, String methodId,
- List methodArgs) throws MalformedMemberNameException {
+ List<String> methodArgs) throws MalformedMemberNameException {
super(refSpec);
this.methodId = methodId;
this.methodArgs = methodArgs;
@@ -83,7 +83,7 @@ class BreakpointSpec extends EventReques
return lineNumber;
}
- List methodArgs() {
+ List<String> methodArgs() {
return methodArgs;
}
@@ -146,14 +146,13 @@ class BreakpointSpec extends EventReques
buffer.append('.');
buffer.append(methodId);
if (methodArgs != null) {
- Iterator iter = methodArgs.iterator();
boolean first = true;
buffer.append('(');
- while (iter.hasNext()) {
+ for (String arg : methodArgs) {
if (!first) {
buffer.append(',');
}
- buffer.append((String)iter.next());
+ buffer.append(arg);
first = false;
}
buffer.append(")");
@@ -176,12 +175,12 @@ class BreakpointSpec extends EventReques
location = method.location();
} else {
// let AbsentInformationException be thrown
- List locs = refType.locationsOfLine(lineNumber());
+ List<Location> locs = refType.locationsOfLine(lineNumber());
if (locs.size() == 0) {
throw new LineNotFoundException();
}
// TO DO: handle multiple locations
- location = (Location)locs.get(0);
+ location = locs.get(0);
if (location.method() == null) {
throw new LineNotFoundException();
}
@@ -202,8 +201,8 @@ class BreakpointSpec extends EventReques
* and if the number of arguments in the method matches the
* number of names passed
*/
- private boolean compareArgTypes(Method method, List nameList) {
- List argTypeNames = method.argumentTypeNames();
+ private boolean compareArgTypes(Method method, List<String> nameList) {
+ List<String> argTypeNames = method.argumentTypeNames();
// If argument counts differ, we can stop here
if (argTypeNames.size() != nameList.size()) {
@@ -213,8 +212,8 @@ class BreakpointSpec extends EventReques
// Compare each argument type's name
int nTypes = argTypeNames.size();
for (int i = 0; i < nTypes; ++i) {
- String comp1 = (String)argTypeNames.get(i);
- String comp2 = (String)nameList.get(i);
+ String comp1 = argTypeNames.get(i);
+ String comp2 = nameList.get(i);
if (! comp1.equals(comp2)) {
/*
* We have to handle varargs. EG, the
@@ -331,22 +330,17 @@ class BreakpointSpec extends EventReques
List<String> argTypeNames = null;
if (methodArgs() != null) {
argTypeNames = new ArrayList<String>(methodArgs().size());
- Iterator iter = methodArgs().iterator();
- while (iter.hasNext()) {
- String name = (String)iter.next();
+ for (String name : methodArgs()) {
name = normalizeArgTypeName(name);
argTypeNames.add(name);
}
}
// Check each method in the class for matches
- Iterator iter = refType.methods().iterator();
Method firstMatch = null; // first method with matching name
Method exactMatch = null; // (only) method with same name & sig
int matchCount = 0; // > 1 implies overload
- while (iter.hasNext()) {
- Method candidate = (Method)iter.next();
-
+ for (Method candidate : refType.methods()) {
if (candidate.name().equals(methodName())) {
matchCount++;
--- a/src/share/classes/com/sun/tools/example/debug/tty/Commands.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/Commands.java Mon Apr 14 11:34:15 2008 -0700
@@ -157,16 +157,16 @@ class Commands {
buf.append(method.name());
buf.append("(");
- List args = method.argumentTypeNames();
+ List<String> args = method.argumentTypeNames();
int lastParam = args.size() - 1;
// output param types except for the last
for (int ii = 0; ii < lastParam; ii++) {
- buf.append((String)args.get(ii));
+ buf.append(args.get(ii));
buf.append(", ");
}
if (lastParam >= 0) {
// output the last param
- String lastStr = (String)args.get(lastParam);
+ String lastStr = args.get(lastParam);
if (method.isVarArgs()) {
// lastParam is an array. Replace the [] with ...
buf.append(lastStr.substring(0, lastStr.length() - 2));
@@ -180,12 +180,11 @@ class Commands {
}
void commandConnectors(VirtualMachineManager vmm) {
- Iterator iter = vmm.allConnectors().iterator();
- if (iter.hasNext()) {
+ Collection<Connector> ccs = vmm.allConnectors();
+ if (ccs.isEmpty()) {
MessageOutput.println("Connectors available");
}
- while (iter.hasNext()) {
- Connector cc = (Connector)iter.next();
+ for (Connector cc : ccs) {
String transportName =
cc.transport() == null ? "null" : cc.transport().name();
MessageOutput.println();
@@ -193,10 +192,7 @@ class Commands {
new Object [] {cc.name(), transportName});
MessageOutput.println("Connector description", cc.description());
- Iterator argIter = cc.defaultArguments().values().iterator();
- if (argIter.hasNext()) {
- while (argIter.hasNext()) {
- Connector.Argument aa = (Connector.Argument)argIter.next();
+ for (Connector.Argument aa : cc.defaultArguments().values()) {
MessageOutput.println();
boolean requiredArgument = aa.mustSpecify();
@@ -215,16 +211,12 @@ class Commands {
}
}
- }
}
void commandClasses() {
- List list = Env.vm().allClasses();
-
StringBuffer classList = new StringBuffer();
- for (int i = 0 ; i < list.size() ; i++) {
- ReferenceType refType = (ReferenceType)list.get(i);
+ for (ReferenceType refType : Env.vm().allClasses()) {
classList.append(refType.name());
classList.append("\n");
}
@@ -232,7 +224,7 @@ class Commands {
}
void commandClass(StringTokenizer t) {
- List list = Env.vm().allClasses();
+ List<ReferenceType> list = Env.vm().allClasses();
if (!t.hasMoreTokens()) {
MessageOutput.println("No class specified.");
@@ -265,51 +257,31 @@ class Commands {
superclass = showAll ? superclass.superclass() : null;
}
- List interfaces = showAll ? clazz.allInterfaces()
- : clazz.interfaces();
- Iterator iter = interfaces.iterator();
- while (iter.hasNext()) {
- InterfaceType interfaze = (InterfaceType)iter.next();
+ List<InterfaceType> interfaces =
+ showAll ? clazz.allInterfaces() : clazz.interfaces();
+ for (InterfaceType interfaze : interfaces) {
MessageOutput.println("implements:", interfaze.name());
}
- List subs = clazz.subclasses();
- iter = subs.iterator();
- while (iter.hasNext()) {
- ClassType sub = (ClassType)iter.next();
+ for (ClassType sub : clazz.subclasses()) {
MessageOutput.println("subclass:", sub.name());
}
- List nested = clazz.nestedTypes();
- iter = nested.iterator();
- while (iter.hasNext()) {
- ReferenceType nest = (ReferenceType)iter.next();
+ for (ReferenceType nest : clazz.nestedTypes()) {
MessageOutput.println("nested:", nest.name());
}
} else if (type instanceof InterfaceType) {
InterfaceType interfaze = (InterfaceType)type;
MessageOutput.println("Interface:", interfaze.name());
- List supers = interfaze.superinterfaces();
- Iterator iter = supers.iterator();
- while (iter.hasNext()) {
- InterfaceType superinterface = (InterfaceType)iter.next();
+ for (InterfaceType superinterface : interfaze.superinterfaces()) {
MessageOutput.println("extends:", superinterface.name());
}
- List subs = interfaze.subinterfaces();
- iter = subs.iterator();
- while (iter.hasNext()) {
- InterfaceType sub = (InterfaceType)iter.next();
+ for (InterfaceType sub : interfaze.subinterfaces()) {
MessageOutput.println("subinterface:", sub.name());
}
- List implementors = interfaze.implementors();
- iter = implementors.iterator();
- while (iter.hasNext()) {
- ClassType implementor = (ClassType)iter.next();
+ for (ClassType implementor : interfaze.implementors()) {
MessageOutput.println("implementor:", implementor.name());
}
- List nested = interfaze.nestedTypes();
- iter = nested.iterator();
- while (iter.hasNext()) {
- ReferenceType nest = (ReferenceType)iter.next();
+ for (ReferenceType nest : interfaze.nestedTypes()) {
MessageOutput.println("nested:", nest.name());
}
} else { // array type
@@ -327,10 +299,8 @@ class Commands {
String idClass = t.nextToken();
ReferenceType cls = Env.getReferenceTypeFromToken(idClass);
if (cls != null) {
- List methods = cls.allMethods();
StringBuffer methodsList = new StringBuffer();
- for (int i = 0; i < methods.size(); i++) {
- Method method = (Method)methods.get(i);
+ for (Method method : cls.allMethods()) {
methodsList.append(method.declaringType().name());
methodsList.append(" ");
methodsList.append(typedName(method));
@@ -351,11 +321,10 @@ class Commands {
String idClass = t.nextToken();
ReferenceType cls = Env.getReferenceTypeFromToken(idClass);
if (cls != null) {
- List fields = cls.allFields();
- List visible = cls.visibleFields();
+ List<Field> fields = cls.allFields();
+ List<Field> visible = cls.visibleFields();
StringBuffer fieldsList = new StringBuffer();
- for (int i = 0; i < fields.size(); i++) {
- Field field = (Field)fields.get(i);
+ for (Field field : fields) {
String s;
if (!visible.contains(field)) {
s = MessageOutput.format("list field typename and name hidden",
@@ -386,7 +355,7 @@ class Commands {
int maxIdLength = 0;
int maxNameLength = 0;
while (threadIter.hasNext()) {
- ThreadReference thr = (ThreadReference)threadIter.next();
+ ThreadReference thr = threadIter.next();
maxIdLength = Math.max(maxIdLength,
Env.description(thr).length());
maxNameLength = Math.max(maxNameLength,
@@ -395,7 +364,7 @@ class Commands {
threadIter = new ThreadIterator(tg);
while (threadIter.hasNext()) {
- ThreadReference thr = (ThreadReference)threadIter.next();
+ ThreadReference thr = threadIter.next();
if (thr.threadGroup() == null) {
continue;
}
@@ -588,9 +557,7 @@ class Commands {
private List<ThreadReference> allThreads(ThreadGroupReference group) {
List<ThreadReference> list = new ArrayList<ThreadReference>();
list.addAll(group.threads());
- Iterator iter = group.threadGroups().iterator();
- while (iter.hasNext()) {
- ThreadGroupReference child = (ThreadGroupReference)iter.next();
+ for (ThreadGroupReference child : group.threadGroups()) {
list.addAll(allThreads(child));
}
return list;
@@ -641,10 +608,7 @@ class Commands {
* if so, it gets removed here.
*/
EventRequestManager mgr = Env.vm().eventRequestManager();
- List requests = mgr.stepRequests();
- Iterator iter = requests.iterator();
- while (iter.hasNext()) {
- StepRequest request = (StepRequest)iter.next();
+ for (StepRequest request : mgr.stepRequests()) {
if (request.thread().equals(thread)) {
mgr.deleteEventRequest(request);
break;
@@ -768,9 +732,7 @@ class Commands {
boolean noExceptions = true;
// Print a listing of the catch patterns currently in place
- Iterator iter = Env.specList.eventRequestSpecs().iterator();
- while (iter.hasNext()) {
- EventRequestSpec spec = (EventRequestSpec)iter.next();
+ for (EventRequestSpec spec : Env.specList.eventRequestSpecs()) {
if (spec instanceof ExceptionSpec) {
if (noExceptions) {
noExceptions = false;
@@ -928,7 +890,7 @@ class Commands {
}
private void dumpStack(ThreadInfo threadInfo, boolean showPC) {
- List stack = null;
+ List<StackFrame> stack = null;
try {
stack = threadInfo.getStack();
} catch (IncompatibleThreadStateException e) {
@@ -940,7 +902,7 @@ class Commands {
} else {
int nFrames = stack.size();
for (int i = threadInfo.getCurrentFrameIndex(); i < nFrames; i++) {
- StackFrame frame = (StackFrame)stack.get(i);
+ StackFrame frame = stack.get(i);
dumpFrame (i, showPC, frame);
}
}
@@ -956,7 +918,7 @@ class Commands {
long lineNumber = loc.lineNumber();
String methodInfo = null;
- if (meth instanceof Method && ((Method)meth).isNative()) {
+ if (meth.isNative()) {
methodInfo = MessageOutput.format("native method");
} else if (lineNumber != -1) {
try {
@@ -994,9 +956,7 @@ class Commands {
} else {
String token = t.nextToken();
if (token.toLowerCase().equals("all")) {
- Iterator iter = ThreadInfo.threads().iterator();
- while (iter.hasNext()) {
- ThreadInfo threadInfo = (ThreadInfo)iter.next();
+ for (ThreadInfo threadInfo : ThreadInfo.threads()) {
MessageOutput.println("Thread:",
threadInfo.getThread().name());
dumpStack(threadInfo, showPC);
@@ -1051,9 +1011,7 @@ class Commands {
boolean noBreakpoints = true;
// Print set breakpoints
- Iterator iter = Env.specList.eventRequestSpecs().iterator();
- while (iter.hasNext()) {
- EventRequestSpec spec = (EventRequestSpec)iter.next();
+ for (EventRequestSpec spec : Env.specList.eventRequestSpecs()) {
if (spec instanceof BreakpointSpec) {
if (noBreakpoints) {
noBreakpoints = false;
@@ -1075,7 +1033,7 @@ class Commands {
protected BreakpointSpec parseBreakpointSpec(StringTokenizer t,
String atForm, String inForm) {
- EventRequestSpec breakpoint = null;
+ BreakpointSpec breakpoint = null;
try {
String token = t.nextToken(":( \t\n\r");
@@ -1149,7 +1107,7 @@ class Commands {
printBreakpointCommandUsage(atForm, inForm);
return null;
}
- return (BreakpointSpec)breakpoint;
+ return breakpoint;
}
private void resolveNow(EventRequestSpec spec) {
@@ -1209,8 +1167,8 @@ class Commands {
}
}
- private List<EventRequestSpec> parseWatchpointSpec(StringTokenizer t) {
- List<EventRequestSpec> list = new ArrayList<EventRequestSpec>();
+ private List<WatchpointSpec> parseWatchpointSpec(StringTokenizer t) {
+ List<WatchpointSpec> list = new ArrayList<WatchpointSpec>();
boolean access = false;
boolean modification = false;
int suspendPolicy = EventRequest.SUSPEND_ALL;
@@ -1242,7 +1200,7 @@ class Commands {
fieldName = fieldName.substring(dot+1);
try {
- EventRequestSpec spec;
+ WatchpointSpec spec;
if (access) {
spec = Env.specList.createAccessWatchpoint(className,
fieldName);
@@ -1269,9 +1227,8 @@ class Commands {
return;
}
- Iterator iter = parseWatchpointSpec(t).iterator();
- while (iter.hasNext()) {
- resolveNow((WatchpointSpec)iter.next());
+ for (WatchpointSpec spec : parseWatchpointSpec(t)) {
+ resolveNow(spec);
}
}
@@ -1281,9 +1238,7 @@ class Commands {
return;
}
- Iterator iter = parseWatchpointSpec(t).iterator();
- while (iter.hasNext()) {
- WatchpointSpec spec = (WatchpointSpec)iter.next();
+ for (WatchpointSpec spec : parseWatchpointSpec(t)) {
if (Env.specList.delete(spec)) {
MessageOutput.println("Removed:", spec.toString());
} else {
@@ -1482,7 +1437,7 @@ class Commands {
lineno = n.intValue();
} catch (java.text.ParseException jtpe) {
// It isn't -- see if it's a method name.
- List meths = refType.methodsByName(id);
+ List<Method> meths = refType.methodsByName(id);
if (meths == null || meths.size() == 0) {
MessageOutput.println("is not a valid line number or method name for",
new Object [] {id, refType.name()});
@@ -1492,7 +1447,7 @@ class Commands {
new Object [] {id, refType.name()});
return;
}
- loc = ((Method)meths.get(0)).location();
+ loc = meths.get(0).location();
lineno = loc.lineNumber();
}
}
@@ -1539,14 +1494,11 @@ class Commands {
try {
ReferenceType refType = Env.getReferenceTypeFromToken(idClass);
if (refType != null) {
- List lines = null;
+ List<Location> lines = null;
if (idMethod == null) {
lines = refType.allLineLocations();
} else {
- List methods = refType.allMethods();
- Iterator iter = methods.iterator();
- while (iter.hasNext()) {
- Method method = (Method)iter.next();
+ for (Method method : refType.allMethods()) {
if (method.name().equals(idMethod)) {
lines = method.allLineLocations();
}
@@ -1555,9 +1507,7 @@ class Commands {
MessageOutput.println("is not a valid method name", idMethod);
}
}
- Iterator iter = lines.iterator();
- while (iter.hasNext()) {
- Location line = (Location)iter.next();
+ for (Location line : lines) {
MessageOutput.printDirectln(line.toString());// Special case: use printDirectln()
}
} else {
@@ -1620,21 +1570,19 @@ class Commands {
MessageOutput.println("No local variables");
return;
}
- Map values = frame.getValues(vars);
+ Map<LocalVariable, Value> values = frame.getValues(vars);
MessageOutput.println("Method arguments:");
- for (Iterator it = vars.iterator(); it.hasNext(); ) {
- LocalVariable var = (LocalVariable)it.next();
+ for (LocalVariable var : vars) {
if (var.isArgument()) {
- Value val = (Value)values.get(var);
+ Value val = values.get(var);
printVar(var, val);
}
}
MessageOutput.println("Local variables:");
- for (Iterator it = vars.iterator(); it.hasNext(); ) {
- LocalVariable var = (LocalVariable)it.next();
+ for (LocalVariable var : vars) {
if (!var.isArgument()) {
- Value val = (Value)values.get(var);
+ Value val = values.get(var);
printVar(var, val);
}
}
@@ -1647,9 +1595,8 @@ class Commands {
private void dump(ObjectReference obj, ReferenceType refType,
ReferenceType refTypeBase) {
- for (Iterator it = refType.fields().iterator(); it.hasNext(); ) {
+ for (Field field : refType.fields()) {
StringBuffer o = new StringBuffer();
- Field field = (Field)it.next();
o.append(" ");
if (!refType.equals(refTypeBase)) {
o.append(refType.name());
@@ -1666,14 +1613,13 @@ class Commands {
dump(obj, sup, refTypeBase);
}
} else if (refType instanceof InterfaceType) {
- List sups = ((InterfaceType)refType).superinterfaces();
- for (Iterator it = sups.iterator(); it.hasNext(); ) {
- dump(obj, (ReferenceType)it.next(), refTypeBase);
+ for (InterfaceType sup : ((InterfaceType)refType).superinterfaces()) {
+ dump(obj, sup, refTypeBase);
}
} else {
/* else refType is an instanceof ArrayType */
if (obj instanceof ArrayReference) {
- for (Iterator it = ((ArrayReference)obj).getValues().iterator();
+ for (Iterator<Value> it = ((ArrayReference)obj).getValues().iterator();
it.hasNext(); ) {
MessageOutput.printDirect(it.next().toString());// Special case: use printDirect()
if (it.hasNext()) {
@@ -1770,13 +1716,11 @@ class Commands {
new Object [] {owner.name(),
new Integer (object.entryCount())});
}
- List waiters = object.waitingThreads();
+ List<ThreadReference> waiters = object.waitingThreads();
if (waiters.size() == 0) {
MessageOutput.println("No waiters");
} else {
- Iterator iter = waiters.iterator();
- while (iter.hasNext()) {
- ThreadReference waiter = (ThreadReference)iter.next();
+ for (ThreadReference waiter : waiters) {
MessageOutput.println("Waiting thread:", waiter.name());
}
}
@@ -1800,13 +1744,11 @@ class Commands {
ThreadReference thread = threadInfo.getThread();
try {
MessageOutput.println("Monitor information for thread", thread.name());
- List owned = thread.ownedMonitors();
+ List<ObjectReference> owned = thread.ownedMonitors();
if (owned.size() == 0) {
MessageOutput.println("No monitors owned");
} else {
- Iterator iter = owned.iterator();
- while (iter.hasNext()) {
- ObjectReference monitor = (ObjectReference)iter.next();
+ for (ObjectReference monitor : owned) {
MessageOutput.println("Owned monitor:", monitor.toString());
}
}
@@ -1833,9 +1775,7 @@ class Commands {
}
String token = t.nextToken();
if (token.toLowerCase().equals("all")) {
- Iterator iter = ThreadInfo.threads().iterator();
- while (iter.hasNext()) {
- ThreadInfo threadInfo = (ThreadInfo)iter.next();
+ for (ThreadInfo threadInfo : ThreadInfo.threads()) {
printThreadLockInfo(threadInfo);
}
} else {
@@ -1930,14 +1870,12 @@ class Commands {
void commandSave(final StringTokenizer t) { // Undocumented command: useful for testing.
if (!t.hasMoreTokens()) {
- Set keys = Env.getSaveKeys();
- Iterator iter = keys.iterator();
- if (!iter.hasNext()) {
+ Set<String> keys = Env.getSaveKeys();
+ if (keys.isEmpty()) {
MessageOutput.println("No saved values");
return;
}
- while (iter.hasNext()) {
- String key = (String)iter.next();
+ for (String key : keys) {
Value value = Env.getSavedValue(key);
if ((value instanceof ObjectReference) &&
((ObjectReference)value).isCollected()) {
@@ -1976,7 +1914,7 @@ class Commands {
// Overloading is not handled here.
String methodName = t.nextToken();
- List classes = Env.vm().classesByName(className);
+ List<ReferenceType> classes = Env.vm().classesByName(className);
// TO DO: handle multiple classes found
if (classes.size() == 0) {
if (className.indexOf('.') < 0) {
@@ -1987,17 +1925,14 @@ class Commands {
return;
}
- ReferenceType rt = (ReferenceType)classes.get(0);
+ ReferenceType rt = classes.get(0);
if (!(rt instanceof ClassType)) {
MessageOutput.println("not a class", className);
return;
}
byte[] bytecodes = null;
- List list = rt.methodsByName(methodName);
- Iterator iter = list.iterator();
- while (iter.hasNext()) {
- Method method = (Method)iter.next();
+ for (Method method : rt.methodsByName(methodName)) {
if (!method.isAbstract()) {
bytecodes = method.bytecodes();
break;
@@ -2047,7 +1982,7 @@ class Commands {
MessageOutput.println("Specify classes to redefine");
} else {
String className = t.nextToken();
- List classes = Env.vm().classesByName(className);
+ List<ReferenceType> classes = Env.vm().classesByName(className);
if (classes.size() == 0) {
MessageOutput.println("No class named", className);
return;
@@ -2057,7 +1992,7 @@ class Commands {
return;
}
Env.setSourcePath(Env.getSourcePath());
- ReferenceType refType = (ReferenceType)classes.get(0);
+ ReferenceType refType = classes.get(0);
if (!t.hasMoreTokens()) {
MessageOutput.println("Specify file name for class", className);
return;
@@ -2074,7 +2009,8 @@ class Commands {
new Object [] {fileName, exc.toString()});
return;
}
- Map<ReferenceType, byte[]> map = new HashMap<ReferenceType, byte[]>();
+ Map<ReferenceType, byte[]> map
+ = new HashMap<ReferenceType, byte[]>();
map.put(refType, bytes);
try {
Env.vm().redefineClasses(map);
--- a/src/share/classes/com/sun/tools/example/debug/tty/Env.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/Env.java Mon Apr 14 11:34:15 2008 -0700
@@ -89,7 +89,7 @@ class Env {
sourceCache.clear();
}
- static void setSourcePath(List srcList) {
+ static void setSourcePath(List<String> srcList) {
sourceMapper = new SourceMapper(srcList);
sourceCache.clear();
}
@@ -106,10 +106,8 @@ class Env {
}
static String excludesString() {
- Iterator iter = excludes().iterator();
StringBuffer buffer = new StringBuffer();
- while (iter.hasNext()) {
- String pattern = (String)iter.next();
+ for (String pattern : excludes()) {
buffer.append(pattern);
buffer.append(",");
}
@@ -117,25 +115,19 @@ class Env {
}
static void addExcludes(StepRequest request) {
- Iterator iter = excludes().iterator();
- while (iter.hasNext()) {
- String pattern = (String)iter.next();
+ for (String pattern : excludes()) {
request.addClassExclusionFilter(pattern);
}
}
static void addExcludes(MethodEntryRequest request) {
- Iterator iter = excludes().iterator();
- while (iter.hasNext()) {
- String pattern = (String)iter.next();
+ for (String pattern : excludes()) {
request.addClassExclusionFilter(pattern);
}
}
static void addExcludes(MethodExitRequest request) {
- Iterator iter = excludes().iterator();
- while (iter.hasNext()) {
- String pattern = (String)iter.next();
+ for (String pattern : excludes()) {
request.addClassExclusionFilter(pattern);
}
}
@@ -175,10 +167,10 @@ class Env {
try {
String fileName = location.sourceName();
- Iterator iter = sourceCache.iterator();
+ Iterator<SourceCode> iter = sourceCache.iterator();
SourceCode code = null;
while (iter.hasNext()) {
- SourceCode candidate = (SourceCode)iter.next();
+ SourceCode candidate = iter.next();
if (candidate.fileName().equals(fileName)) {
code = candidate;
iter.remove();
@@ -269,10 +261,7 @@ class Env {
// loaded class whose name matches this limited regular
// expression is selected.
idToken = idToken.substring(1);
- List classes = Env.vm().allClasses();
- Iterator iter = classes.iterator();
- while (iter.hasNext()) {
- ReferenceType type = ((ReferenceType)iter.next());
+ for (ReferenceType type : Env.vm().allClasses()) {
if (type.name().endsWith(idToken)) {
cls = type;
break;
@@ -280,21 +269,21 @@ class Env {
}
} else {
// It's a class name
- List classes = Env.vm().classesByName(idToken);
+ List<ReferenceType> classes = Env.vm().classesByName(idToken);
if (classes.size() > 0) {
// TO DO: handle multiples
- cls = (ReferenceType)classes.get(0);
+ cls = classes.get(0);
}
}
return cls;
}
- static Set getSaveKeys() {
+ static Set<String> getSaveKeys() {
return savedValues.keySet();
}
static Value getSavedValue(String key) {
- return (Value)savedValues.get(key);
+ return savedValues.get(key);
}
static void setSavedValue(String key, Value value) {
@@ -327,7 +316,7 @@ class Env {
if (index >= sourceLines.size()) {
return null;
} else {
- return (String)sourceLines.get(index);
+ return sourceLines.get(index);
}
}
}
--- a/src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java Mon Apr 14 11:34:15 2008 -0700
@@ -150,7 +150,7 @@ public class EventHandler implements Run
EventSet eventSet = queue.remove();
EventIterator iter = eventSet.eventIterator();
while (iter.hasNext()) {
- handleExitEvent((Event)iter.next());
+ handleExitEvent(iter.next());
}
} catch (InterruptedException exc) {
// ignore
@@ -183,7 +183,7 @@ public class EventHandler implements Run
* If any event in the set has a thread associated with it,
* they all will, so just grab the first one.
*/
- Event event = (Event)set.iterator().next(); // Is there a better way?
+ Event event = set.iterator().next(); // Is there a better way?
thread = eventThread(event);
} else {
thread = null;
--- a/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java Mon Apr 14 11:34:15 2008 -0700
@@ -101,10 +101,8 @@ abstract class EventRequestSpec {
* so that is all we need to examine.
*/
ArrayList<ExceptionRequest> deleteList = new ArrayList<ExceptionRequest>();
- Iterator iter =
- Env.vm().eventRequestManager().exceptionRequests().iterator();
- while (iter.hasNext()) {
- ExceptionRequest er = (ExceptionRequest)iter.next();
+ for (ExceptionRequest er :
+ Env.vm().eventRequestManager().exceptionRequests()) {
if (prs.matches(er.exception())) {
deleteList.add (er);
}
@@ -115,9 +113,7 @@ abstract class EventRequestSpec {
}
private EventRequest resolveAgainstPreparedClasses() throws Exception {
- Iterator iter = Env.vm().allClasses().iterator();
- while (iter.hasNext()) {
- ReferenceType refType = (ReferenceType)iter.next();
+ for (ReferenceType refType : Env.vm().allClasses()) {
if (refType.isPrepared() && refSpec.matches(refType)) {
resolved = resolveEventRequest(refType);
}
--- a/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java Mon Apr 14 11:34:15 2008 -0700
@@ -55,9 +55,7 @@ class EventRequestSpecList {
boolean resolve(ClassPrepareEvent event) {
boolean failure = false;
synchronized(eventRequestSpecs) {
- Iterator iter = eventRequestSpecs.iterator();
- while (iter.hasNext()) {
- EventRequestSpec spec = (EventRequestSpec)iter.next();
+ for (EventRequestSpec spec : eventRequestSpecs) {
if (!spec.isResolved()) {
try {
EventRequest eventRequest = spec.resolve(event);
@@ -77,9 +75,7 @@ class EventRequestSpecList {
}
void resolveAll() {
- Iterator iter = eventRequestSpecs.iterator();
- while (iter.hasNext()) {
- EventRequestSpec spec = (EventRequestSpec)iter.next();
+ for (EventRequestSpec spec : eventRequestSpecs) {
try {
EventRequest eventRequest = spec.resolveEagerly();
if (eventRequest != null) {
@@ -106,16 +102,16 @@ class EventRequestSpecList {
}
}
- EventRequestSpec createBreakpoint(String classPattern,
- int line) throws ClassNotFoundException {
+ BreakpointSpec createBreakpoint(String classPattern, int line)
+ throws ClassNotFoundException {
ReferenceTypeSpec refSpec =
new PatternReferenceTypeSpec(classPattern);
return new BreakpointSpec(refSpec, line);
}
- EventRequestSpec createBreakpoint(String classPattern,
+ BreakpointSpec createBreakpoint(String classPattern,
String methodId,
- List methodArgs)
+ List<String> methodArgs)
throws MalformedMemberNameException,
ClassNotFoundException {
ReferenceTypeSpec refSpec =
@@ -132,7 +128,7 @@ class EventRequestSpecList {
return new ExceptionSpec(refSpec, notifyCaught, notifyUncaught);
}
- EventRequestSpec createAccessWatchpoint(String classPattern,
+ WatchpointSpec createAccessWatchpoint(String classPattern,
String fieldId)
throws MalformedMemberNameException,
ClassNotFoundException {
@@ -141,7 +137,7 @@ class EventRequestSpecList {
return new AccessWatchpointSpec(refSpec, fieldId);
}
- EventRequestSpec createModificationWatchpoint(String classPattern,
+ WatchpointSpec createModificationWatchpoint(String classPattern,
String fieldId)
throws MalformedMemberNameException,
ClassNotFoundException {
@@ -154,7 +150,7 @@ class EventRequestSpecList {
synchronized (eventRequestSpecs) {
int inx = eventRequestSpecs.indexOf(proto);
if (inx != -1) {
- EventRequestSpec spec = (EventRequestSpec)eventRequestSpecs.get(inx);
+ EventRequestSpec spec = eventRequestSpecs.get(inx);
spec.remove();
eventRequestSpecs.remove(inx);
return true;
--- a/src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java Mon Apr 14 11:34:15 2008 -0700
@@ -39,15 +39,13 @@ class SourceMapper {
private final String[] dirs;
- SourceMapper(List sourcepath) {
+ SourceMapper(List<String> sourcepath) {
/*
* sourcepath can arrive from the debugee as a List.
* (via PathSearchingVirtualMachine.classPath())
*/
List<String> dirList = new ArrayList<String>();
- Iterator iter = sourcepath.iterator();
- while (iter.hasNext()) {
- String element = (String)iter.next();
+ for (String element : sourcepath) {
//XXX remove .jar and .zip files; we want only directories on
//the source path. (Bug ID 4186582)
if ( ! (element.endsWith(".jar") ||
@@ -55,7 +53,7 @@ class SourceMapper {
dirList.add(element);
}
}
- dirs = (String[])dirList.toArray(new String[0]);
+ dirs = dirList.toArray(new String[0]);
}
SourceMapper(String sourcepath) {
@@ -79,7 +77,7 @@ class SourceMapper {
dirList.add(s);
}
}
- dirs = (String[])dirList.toArray(new String[0]);
+ dirs = dirList.toArray(new String[0]);
}
/*
--- a/src/share/classes/com/sun/tools/example/debug/tty/TTY.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/TTY.java Mon Apr 14 11:34:15 2008 -0700
@@ -160,9 +160,7 @@ public class TTY implements EventNotifie
// here the next time.
Env.setAtExitMethod(null);
EventRequestManager erm = Env.vm().eventRequestManager();
- Iterator it = erm.methodExitRequests().iterator();
- while (it.hasNext()) {
- EventRequest eReq = (EventRequest)it.next();
+ for (EventRequest eReq : erm.methodExitRequests()) {
if (eReq.equals(me.request())) {
eReq.disable();
}
@@ -178,9 +176,8 @@ public class TTY implements EventNotifie
public void vmInterrupted() {
Thread.yield(); // fetch output
printCurrentLocation();
- Iterator it = monitorCommands.iterator();
- while (it.hasNext()) {
- StringTokenizer t = new StringTokenizer((String)it.next());
+ for (String cmd : monitorCommands) {
+ StringTokenizer t = new StringTokenizer(cmd);
t.nextToken(); // get rid of monitor number
executeCommand(t);
}
@@ -563,9 +560,8 @@ public class TTY implements EventNotifie
++monitorCount;
monitorCommands.add(monitorCount + ": " + t.nextToken(""));
} else {
- Iterator it = monitorCommands.iterator();
- while (it.hasNext()) {
- MessageOutput.printDirectln((String)it.next());// Special case: use printDirectln()
+ for (String cmd : monitorCommands) {
+ MessageOutput.printDirectln(cmd);// Special case: use printDirectln()
}
}
}
@@ -581,9 +577,7 @@ public class TTY implements EventNotifie
return;
}
String monStr = monTok + ":";
- Iterator it = monitorCommands.iterator();
- while (it.hasNext()) {
- String cmd = (String)it.next();
+ for (String cmd : monitorCommands) {
StringTokenizer ct = new StringTokenizer(cmd);
if (ct.nextToken().equals(monStr)) {
monitorCommands.remove(cmd);
@@ -768,10 +762,8 @@ public class TTY implements EventNotifie
}
private static boolean supportsSharedMemory() {
- List connectors = Bootstrap.virtualMachineManager().allConnectors();
- Iterator iter = connectors.iterator();
- while (iter.hasNext()) {
- Connector connector = (Connector)iter.next();
+ for (Connector connector :
+ Bootstrap.virtualMachineManager().allConnectors()) {
if (connector.transport() == null) {
continue;
}
--- a/src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java Mon Apr 14 11:34:15 2008 -0700
@@ -36,7 +36,7 @@ import java.util.Iterator;
* Descend the tree of thread groups.
* @author Robert G. Field
*/
-class ThreadGroupIterator implements Iterator {
+class ThreadGroupIterator implements Iterator<ThreadGroupReference> {
private final Stack<Iterator<ThreadGroupReference>> stack = new Stack<Iterator<ThreadGroupReference>>();
ThreadGroupIterator(List<ThreadGroupReference> tgl) {
@@ -53,8 +53,8 @@ class ThreadGroupIterator implements Ite
this(Env.vm().topLevelThreadGroups());
}
- private Iterator top() {
- return (Iterator)stack.peek();
+ private Iterator<ThreadGroupReference> top() {
+ return stack.peek();
}
/**
@@ -74,12 +74,12 @@ class ThreadGroupIterator implements Ite
return !stack.isEmpty();
}
- public Object next() {
+ public ThreadGroupReference next() {
return nextThreadGroup();
}
public ThreadGroupReference nextThreadGroup() {
- ThreadGroupReference tg = (ThreadGroupReference)top().next();
+ ThreadGroupReference tg = top().next();
push(tg.threadGroups());
return tg;
}
--- a/src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java Mon Apr 14 11:34:15 2008 -0700
@@ -56,9 +56,7 @@ class ThreadInfo {
private static void initThreads() {
if (!gotInitialThreads) {
- Iterator iter = Env.vm().allThreads().iterator();
- while (iter.hasNext()) {
- ThreadReference thread = (ThreadReference)iter.next();
+ for (ThreadReference thread : Env.vm().allThreads()) {
threads.add(new ThreadInfo(thread));
}
gotInitialThreads = true;
@@ -113,9 +111,7 @@ class ThreadInfo {
current = null;
group = null;
synchronized (threads) {
- Iterator iter = threads().iterator();
- while (iter.hasNext()) {
- ThreadInfo ti = (ThreadInfo)iter.next();
+ for (ThreadInfo ti : threads()) {
ti.invalidate();
}
}
@@ -163,8 +159,7 @@ class ThreadInfo {
if (group == null) {
// Current thread group defaults to the first top level
// thread group.
- setThreadGroup((ThreadGroupReference)
- Env.vm().topLevelThreadGroups().get(0));
+ setThreadGroup(Env.vm().topLevelThreadGroups().get(0));
}
return group;
}
@@ -173,9 +168,7 @@ class ThreadInfo {
ThreadInfo retInfo = null;
synchronized (threads) {
- Iterator iter = threads().iterator();
- while (iter.hasNext()) {
- ThreadInfo ti = (ThreadInfo)iter.next();
+ for (ThreadInfo ti : threads()) {
if (ti.thread.uniqueID() == id) {
retInfo = ti;
break;
@@ -208,7 +201,7 @@ class ThreadInfo {
*
* @return a <code>List</code> of the stack frames.
*/
- List getStack() throws IncompatibleThreadStateException {
+ List<StackFrame> getStack() throws IncompatibleThreadStateException {
return thread.frames();
}
--- a/src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java Mon Apr 14 11:34:15 2008 -0700
@@ -30,8 +30,8 @@ import java.util.List;
import java.util.List;
import java.util.Iterator;
-class ThreadIterator implements Iterator {
- Iterator it = null;
+class ThreadIterator implements Iterator<ThreadReference> {
+ Iterator<ThreadReference> it = null;
ThreadGroupIterator tgi;
ThreadIterator(ThreadGroupReference tg) {
@@ -56,12 +56,12 @@ class ThreadIterator implements Iterator
return true;
}
- public Object next() {
+ public ThreadReference next() {
return it.next();
}
public ThreadReference nextThread() {
- return (ThreadReference)next();
+ return next();
}
public void remove() {
--- a/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java Mon Apr 14 11:34:15 2008 -0700
@@ -61,10 +61,8 @@ class VMConnection {
}
private Connector findConnector(String name) {
- List connectors = Bootstrap.virtualMachineManager().allConnectors();
- Iterator iter = connectors.iterator();
- while (iter.hasNext()) {
- Connector connector = (Connector)iter.next();
+ for (Connector connector :
+ Bootstrap.virtualMachineManager().allConnectors()) {
if (connector.name().equals(name)) {
return connector;
}
@@ -108,7 +106,7 @@ class VMConnection {
String value = token.substring(index + 1,
token.length() - 1); // Remove comma delimiter
- Connector.Argument argument = (Connector.Argument)arguments.get(name);
+ Connector.Argument argument = arguments.get(name);
if (argument == null) {
throw new IllegalArgumentException
(MessageOutput.format("Argument is not defined for connector:",
@@ -195,7 +193,7 @@ class VMConnection {
return false;
}
- Connector.Argument argument = (Connector.Argument)connectorArgs.get(name);
+ Connector.Argument argument = connectorArgs.get(name);
if (argument == null) {
return false;
}
@@ -204,7 +202,7 @@ class VMConnection {
}
String connectorArg(String name) {
- Connector.Argument argument = (Connector.Argument)connectorArgs.get(name);
+ Connector.Argument argument = connectorArgs.get(name);
if (argument == null) {
return "";
}
--- a/src/share/classes/com/sun/tools/hat/internal/server/ClassQuery.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/hat/internal/server/ClassQuery.java Mon Apr 14 11:34:15 2008 -0700
@@ -99,8 +99,7 @@ class ClassQuery extends QueryHandler {
}
out.println("<h2>Instance Data Members:</h2>");
- JavaField[] ff = clazz.getFields();
- ff = (JavaField[]) ff.clone();
+ JavaField[] ff = clazz.getFields().clone();
ArraySorter.sort(ff, new Comparer() {
public int compare(Object lhs, Object rhs) {
JavaField left = (JavaField) lhs;
--- a/src/share/classes/com/sun/tools/hat/internal/server/PlatformClasses.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/hat/internal/server/PlatformClasses.java Mon Apr 14 11:34:15 2008 -0700
@@ -90,9 +90,7 @@ public class PlatformClasses {
// is the right thing to do anyway.
}
}
- int num = list.size();
- names = new String[num];
- names = (String[]) list.toArray(names);
+ names = list.toArray(new String[list.size()]);
}
return names;
}
--- a/src/share/classes/com/sun/tools/jdi/AbstractLauncher.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/AbstractLauncher.java Mon Apr 14 11:34:15 2008 -0700
@@ -119,7 +119,7 @@ abstract class AbstractLauncher extends
String[] tokenArray = new String[tokenList.size()];
for (int i = 0; i < tokenList.size(); i++) {
- tokenArray[i] = (String)tokenList.get(i);
+ tokenArray[i] = tokenList.get(i);
}
return tokenArray;
}
--- a/src/share/classes/com/sun/tools/jdi/ClassTypeImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/ClassTypeImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -95,11 +95,8 @@ public class ClassTypeImpl extends Refer
}
public List<ClassType> subclasses() {
- List<ReferenceType> all = vm.allClasses();
List<ClassType> subs = new ArrayList<ClassType>();
- Iterator iter = all.iterator();
- while (iter.hasNext()) {
- ReferenceType refType = (ReferenceType)iter.next();
+ for (ReferenceType refType : vm.allClasses()) {
if (refType instanceof ClassType) {
ClassType clazz = (ClassType)refType;
ClassType superclass = clazz.superclass();
@@ -223,7 +220,7 @@ public class ClassTypeImpl extends Refer
List<? extends Value> arguments = method.validateAndPrepareArgumentsForInvoke(origArguments);
- ValueImpl[] args = (ValueImpl[])arguments.toArray(new ValueImpl[0]);
+ ValueImpl[] args = arguments.toArray(new ValueImpl[0]);
JDWP.ClassType.InvokeMethod ret;
try {
PacketStream stream =
@@ -271,7 +268,7 @@ public class ClassTypeImpl extends Refer
List<Value> arguments = method.validateAndPrepareArgumentsForInvoke(
origArguments);
- ValueImpl[] args = (ValueImpl[])arguments.toArray(new ValueImpl[0]);
+ ValueImpl[] args = arguments.toArray(new ValueImpl[0]);
JDWP.ClassType.NewInstance ret = null;
try {
PacketStream stream =
@@ -301,11 +298,8 @@ public class ClassTypeImpl extends Refer
}
public Method concreteMethodByName(String name, String signature) {
- List methods = visibleMethods();
Method method = null;
- Iterator iter = methods.iterator();
- while (iter.hasNext()) {
- Method candidate = (Method)iter.next();
+ for (Method candidate : visibleMethods()) {
if (candidate.name().equals(name) &&
candidate.signature().equals(signature) &&
!candidate.isAbstract()) {
@@ -330,9 +324,7 @@ public class ClassTypeImpl extends Refer
* Avoid duplicate checking on each method by iterating through
* duplicate-free allInterfaces() rather than recursing
*/
- Iterator iter = allInterfaces().iterator();
- while (iter.hasNext()) {
- InterfaceType interfaze = (InterfaceType)iter.next();
+ for (InterfaceType interfaze : allInterfaces()) {
list.addAll(interfaze.methods());
}
--- a/src/share/classes/com/sun/tools/jdi/ConcreteMethodImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/ConcreteMethodImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -247,7 +247,7 @@ public class ConcreteMethodImpl extends
public byte[] bytecodes() {
byte[] bytecodes = (bytecodesRef == null) ? null :
- (byte[])bytecodesRef.get();
+ bytecodesRef.get();
if (bytecodes == null) {
try {
bytecodes = JDWP.Method.Bytecodes.
@@ -262,7 +262,7 @@ public class ConcreteMethodImpl extends
* to return the cached bytecodes directly; instead, we
* make a clone at the cost of using more memory.
*/
- return (byte[])bytecodes.clone();
+ return bytecodes.clone();
}
int argSlotCount() throws AbsentInformationException {
@@ -279,7 +279,7 @@ public class ConcreteMethodImpl extends
String stratumID = stratum.id();
SoftLocationXRefs info =
(softOtherLocationXRefsRef == null) ? null :
- (SoftLocationXRefs)softOtherLocationXRefsRef.get();
+ softOtherLocationXRefsRef.get();
if (info != null && info.stratumID.equals(stratumID)) {
return info;
}
@@ -348,7 +348,7 @@ public class ConcreteMethodImpl extends
private SoftLocationXRefs getBaseLocations() {
SoftLocationXRefs info = (softBaseLocationXRefsRef == null) ? null :
- (SoftLocationXRefs)softBaseLocationXRefsRef.get();
+ softBaseLocationXRefsRef.get();
if (info != null) {
return info;
}
--- a/src/share/classes/com/sun/tools/jdi/EventSetImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/EventSetImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -56,10 +56,8 @@ public class EventSetImpl extends ArrayL
public String toString() {
String string = "event set, policy:" + suspendPolicy +
", count:" + this.size() + " = {";
- Iterator iter = this.iterator();
boolean first = true;
- while (iter.hasNext()) {
- Event event = (Event)iter.next();
+ for (Event event : this) {
if (!first) {
string += ", ";
}
@@ -787,9 +785,7 @@ public class EventSetImpl extends ArrayL
}
private ThreadReference eventThread() {
- Iterator iter = this.iterator();
- while (iter.hasNext()) {
- Event event = (Event)iter.next();
+ for (Event event : this) {
if (event instanceof ThreadedEventImpl) {
return ((ThreadedEventImpl)event).thread();
}
@@ -846,7 +842,7 @@ public class EventSetImpl extends ArrayL
}
public Event nextEvent() {
- return (Event)next();
+ return next();
}
public void remove() {
--- a/src/share/classes/com/sun/tools/jdi/JNITypeParser.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/JNITypeParser.java Mon Apr 14 11:34:15 2008 -0700
@@ -82,7 +82,7 @@ public class JNITypeParser {
}
String typeName() {
- return (String)typeNameList().get(typeNameList().size()-1);
+ return typeNameList().get(typeNameList().size()-1);
}
List<String> argumentTypeNames() {
@@ -90,7 +90,7 @@ public class JNITypeParser {
}
String signature() {
- return (String)signatureList().get(signatureList().size()-1);
+ return signatureList().get(signatureList().size()-1);
}
List<String> argumentSignatures() {
--- a/src/share/classes/com/sun/tools/jdi/MethodImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/MethodImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -158,7 +158,7 @@ public abstract class MethodImpl extends
Type argumentType(int index) throws ClassNotLoadedException {
ReferenceTypeImpl enclosing = (ReferenceTypeImpl)declaringType();
- String signature = (String)argumentSignatures().get(index);
+ String signature = argumentSignatures().get(index);
return enclosing.findType(signature);
}
@@ -263,10 +263,10 @@ public abstract class MethodImpl extends
return argumentType(index);
}
public String typeName(){
- return (String)argumentTypeNames().get(index);
+ return argumentTypeNames().get(index);
}
public String signature() {
- return (String)argumentSignatures().get(index);
+ return argumentSignatures().get(index);
}
public Type findType(String signature) throws ClassNotLoadedException {
return MethodImpl.this.findType(signature);
@@ -307,7 +307,7 @@ public abstract class MethodImpl extends
arguments.add(argArray);
return;
}
- Value nthArgValue = (Value)arguments.get(paramCount - 1);
+ Value nthArgValue = arguments.get(paramCount - 1);
if (nthArgValue == null) {
return;
}
@@ -371,7 +371,7 @@ public abstract class MethodImpl extends
}
for (int i = 0; i < argSize; i++) {
- Value value = (Value)arguments.get(i);
+ Value value = arguments.get(i);
value = ValueImpl.prepareForAssignment(value,
new ArgumentContainer(i));
arguments.set(i, value);
@@ -386,11 +386,11 @@ public abstract class MethodImpl extends
sb.append(name());
sb.append("(");
boolean first = true;
- for (Iterator it = argumentTypeNames().iterator(); it.hasNext();) {
+ for (String name : argumentTypeNames()) {
if (!first) {
sb.append(", ");
}
- sb.append((String)it.next());
+ sb.append(name);
first = false;
}
sb.append(")");
--- a/src/share/classes/com/sun/tools/jdi/ObjectReferenceImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/ObjectReferenceImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -383,7 +383,7 @@ public class ObjectReferenceImpl extends
List<Value> arguments = method.validateAndPrepareArgumentsForInvoke(
origArguments);
- ValueImpl[] args = (ValueImpl[])arguments.toArray(new ValueImpl[0]);
+ ValueImpl[] args = arguments.toArray(new ValueImpl[0]);
JDWP.ObjectReference.InvokeMethod ret;
try {
PacketStream stream =
@@ -583,7 +583,7 @@ public class ObjectReferenceImpl extends
// Validate assignment
ReferenceType destType = (ReferenceTypeImpl)destination.type();
ReferenceTypeImpl myType = (ReferenceTypeImpl)referenceType();
- if (!myType.isAssignableTo((ReferenceType)destType)) {
+ if (!myType.isAssignableTo(destType)) {
JNITypeParser parser = new JNITypeParser(destType.signature());
String destTypeName = parser.typeName();
throw new InvalidTypeException("Can't assign " +
--- a/src/share/classes/com/sun/tools/jdi/PacketStream.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/PacketStream.java Mon Apr 14 11:34:15 2008 -0700
@@ -485,7 +485,7 @@ class PacketStream {
* Read field represented as vm specific byte sequence.
*/
Field readField() {
- ReferenceTypeImpl refType = (ReferenceTypeImpl)readReferenceType();
+ ReferenceTypeImpl refType = readReferenceType();
long fieldRef = readFieldRef();
return refType.getFieldMirror(fieldRef);
}
--- a/src/share/classes/com/sun/tools/jdi/ReferenceTypeImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/ReferenceTypeImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -59,7 +59,7 @@ implements ReferenceType {
private boolean constantPoolInfoGotten = false;
private int constanPoolCount;
private byte[] constantPoolBytes;
- private SoftReference constantPoolBytesRef = null;
+ private SoftReference<byte[]> constantPoolBytesRef = null;
/* to mark a SourceFile request that returned a genuine JDWP.Error.ABSENT_INFORMATION */
private static final String ABSENT_BASE_SOURCE_NAME = "**ABSENT_BASE_SOURCE_NAME**";
@@ -352,13 +352,10 @@ implements ReferenceType {
abstract List<? extends ReferenceType> inheritedTypes();
void addVisibleFields(List<Field> visibleList, Map<String, Field> visibleTable, List<String> ambiguousNames) {
- List<Field> list = visibleFields();
- Iterator iter = list.iterator();
- while (iter.hasNext()) {
- Field field = (Field)iter.next();
+ for (Field field : visibleFields()) {
String name = field.name();
if (!ambiguousNames.contains(name)) {
- Field duplicate = (Field)visibleTable.get(name);
+ Field duplicate = visibleTable.get(name);
if (duplicate == null) {
visibleList.add(field);
visibleTable.put(name, field);
@@ -402,10 +399,8 @@ implements ReferenceType {
* hide.
*/
List<Field> retList = new ArrayList<Field>(fields());
- iter = retList.iterator();
- while (iter.hasNext()) {
- Field field = (Field)iter.next();
- Field hidden = (Field)visibleTable.get(field.name());
+ for (Field field : retList) {
+ Field hidden = visibleTable.get(field.name());
if (hidden != null) {
visibleList.remove(hidden);
}
@@ -515,12 +510,9 @@ implements ReferenceType {
* methods.
*/
void addToMethodMap(Map<String, Method> methodMap, List<Method> methodList) {
- Iterator iter = methodList.iterator();
- while (iter.hasNext()) {
- Method method = (Method)iter.next();
+ for (Method method : methodList)
methodMap.put(method.name().concat(method.signature()), method);
}
- }
abstract void addVisibleMethods(Map<String, Method> methodMap);
@@ -549,9 +541,7 @@ implements ReferenceType {
public List<Method> methodsByName(String name) {
List<Method> methods = visibleMethods();
ArrayList<Method> retList = new ArrayList<Method>(methods.size());
- Iterator iter = methods.iterator();
- while (iter.hasNext()) {
- Method candidate = (Method)iter.next();
+ for (Method candidate : methods) {
if (candidate.name().equals(name)) {
retList.add(candidate);
}
@@ -563,9 +553,7 @@ implements ReferenceType {
public List<Method> methodsByName(String name, String signature) {
List<Method> methods = visibleMethods();
ArrayList<Method> retList = new ArrayList<Method>(methods.size());
- Iterator iter = methods.iterator();
- while (iter.hasNext()) {
- Method candidate = (Method)iter.next();
+ for (Method candidate : methods) {
if (candidate.name().equals(name) &&
candidate.signature().equals(signature)) {
retList.add(candidate);
@@ -706,7 +694,7 @@ implements ReferenceType {
}
public String sourceName() throws AbsentInformationException {
- return (String)(sourceNames(vm.getDefaultStratum()).get(0));
+ return sourceNames(vm.getDefaultStratum()).get(0);
}
public List<String> sourceNames(String stratumID)
@@ -796,7 +784,7 @@ implements ReferenceType {
if (!vm.canGetSourceDebugExtension()) {
return NO_SDE_INFO_MARK;
}
- SDE sde = (sdeRef == null) ? null : (SDE)sdeRef.get();
+ SDE sde = (sdeRef == null) ? null : sdeRef.get();
if (sde == null) {
String extension = null;
try {
@@ -1034,13 +1022,13 @@ implements ReferenceType {
throw exc;
}
if (constantPoolBytesRef != null) {
- byte[] cpbytes = (byte[])constantPoolBytesRef.get();
+ byte[] cpbytes = constantPoolBytesRef.get();
/*
* Arrays are always modifiable, so it is a little unsafe
* to return the cached bytecodes directly; instead, we
* make a clone at the cost of using more memory.
*/
- return (byte[])cpbytes.clone();
+ return cpbytes.clone();
} else {
return null;
}
--- a/src/share/classes/com/sun/tools/jdi/SDE.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/SDE.java Mon Apr 14 11:34:15 2008 -0700
@@ -327,7 +327,7 @@ class SDE {
ignoreWhite();
while (((ch = sdeRead()) != '\n') && (ch != '\r')) {
- sb.append((char)ch);
+ sb.append(ch);
}
// check for CR LF
if ((ch == '\r') && (sdePeek() == '\n')) {
--- a/src/share/classes/com/sun/tools/jdi/StackFrameImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/StackFrameImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -162,7 +162,7 @@ public class StackFrameImpl extends Mirr
for (LocalVariable variable : allVariables) {
String name = variable.name();
if (variable.isVisible(this)) {
- LocalVariable existing = (LocalVariable)map.get(name);
+ LocalVariable existing = map.get(name);
if ((existing == null) ||
((LocalVariableImpl)variable).hides(existing)) {
map.put(name, variable);
@@ -330,7 +330,7 @@ public class StackFrameImpl extends Mirr
slot = 1;
}
for (int ii = 0; ii < count; ++ii) {
- char sigChar = (char)argSigs.get(ii).charAt(0);
+ char sigChar = argSigs.get(ii).charAt(0);
slots[ii] = new JDWP.StackFrame.GetValues.SlotInfo(slot++,(byte)sigChar);
if (sigChar == 'J' || sigChar == 'D') {
slot++;
--- a/src/share/classes/com/sun/tools/jdi/TargetVM.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/TargetVM.java Mon Apr 14 11:34:15 2008 -0700
@@ -148,7 +148,7 @@ public class TargetVM implements Runnabl
idString = String.valueOf(p.id);
synchronized(waitingQueue) {
- p2 = (Packet)waitingQueue.get(idString);
+ p2 = waitingQueue.get(idString);
if (p2 != null)
waitingQueue.remove(idString);
--- a/src/share/classes/com/sun/tools/jdi/ThreadGroupReferenceImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/ThreadGroupReferenceImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -86,30 +86,22 @@ public class ThreadGroupReferenceImpl ex
}
public void suspend() {
- List threads = threads();
- Iterator iter = threads.iterator();
- while (iter.hasNext()) {
- ((ThreadReference)iter.next()).suspend();
+ for (ThreadReference thread : threads()) {
+ thread.suspend();
}
- List groups = threadGroups();
- iter = groups.iterator();
- while (iter.hasNext()) {
- ((ThreadGroupReference)iter.next()).suspend();
+ for (ThreadGroupReference threadGroup : threadGroups()) {
+ threadGroup.suspend();
}
}
public void resume() {
- List threads = threads();
- Iterator iter = threads.iterator();
- while (iter.hasNext()) {
- ((ThreadReference)iter.next()).resume();
+ for (ThreadReference thread : threads()) {
+ thread.resume();
}
- List groups = threadGroups();
- iter = groups.iterator();
- while (iter.hasNext()) {
- ((ThreadGroupReference)iter.next()).resume();
+ for (ThreadGroupReference threadGroup : threadGroups()) {
+ threadGroup.resume();
}
}
--- a/src/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -1191,8 +1191,7 @@ class VirtualMachineImpl extends MirrorI
}
requests = new JDWP.VirtualMachine.DisposeObjects.Request[size];
for (int i = 0; i < requests.length; i++) {
- SoftObjectReference ref =
- (SoftObjectReference)batchedDisposeRequests.get(i);
+ SoftObjectReference ref = batchedDisposeRequests.get(i);
if ((traceFlags & TRACE_OBJREFS) != 0) {
printTrace("Disposing object " + ref.key().longValue() +
" (ref count = " + ref.count() + ")");
@@ -1436,7 +1435,7 @@ class VirtualMachineImpl extends MirrorI
}
ObjectReferenceImpl object() {
- return (ObjectReferenceImpl)get();
+ return get();
}
}
}
--- a/src/share/classes/com/sun/tools/jdi/VirtualMachineManagerImpl.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/com/sun/tools/jdi/VirtualMachineManagerImpl.java Mon Apr 14 11:34:15 2008 -0700
@@ -92,7 +92,7 @@ public class VirtualMachineManagerImpl i
Connector connector;
try {
- connector = (Connector)connectors.next();
+ connector = connectors.next();
} catch (ThreadDeath x) {
throw x;
} catch (Exception x) {
@@ -121,7 +121,7 @@ public class VirtualMachineManagerImpl i
TransportService transportService;
try {
- transportService = (TransportService)transportServices.next();
+ transportService = transportServices.next();
} catch (ThreadDeath x) {
throw x;
} catch (Exception x) {
--- a/src/share/classes/java/awt/Component.java Thu Apr 10 13:57:15 2008 -0700
+++ b/src/share/classes/java/awt/Component.java Mon Apr 14 11:34:15 2008 -0700
@@ -634,6 +634,11 @@ public abstract class Component implemen
*/
private PropertyChangeSupport changeSupport;
+ private transient final Object changeSupportLock = new Object();
+ private Object getChangeSupportLock() {
+ return changeSupportLock;
+ }
+
boolean isPacked = false;
/**
@@ -935,24 +940,26 @@ public abstract class Component implemen
*/
public GraphicsConfiguration getGraphicsConfiguration() {
synchronized(getTreeLock()) {
- GraphicsConfiguration gc = graphicsConfig;
- Component parent = getParent();
- while ((gc == null) && (parent != null)) {
- gc = parent.getGraphicsConfiguration();
- parent = parent.getParent();
- }
- return gc;
+ if (graphicsConfig != null) {
+ return graphicsConfig;
+ } else if (getParent() != null) {
+ return getParent().getGraphicsConfiguration();
+ } else {
+ return null;
+ }
}
}
final GraphicsConfiguration getGraphicsConfiguration_NoClientCode() {
- GraphicsConfiguration gc = this.graphicsConfig;
- Component par = this.parent;
- while ((gc == null) && (par != null)) {
- gc = par.getGraphicsConfiguration_NoClientCode();
- par = par.parent;
- }
- return gc;
+ GraphicsConfiguration graphicsConfig = this.graphicsConfig;
+ Container parent = this.parent;
+ if (graphicsConfig != null) {
+ return graphicsConfig;
+ } else if (parent != null) {
+ return parent.getGraphicsConfiguration_NoClientCode();
+ } else {
+ return null;
+ }
}
/**
@@ -4602,7 +4609,8 @@ public abstract class Component implemen
e.isPopupTrigger(),
e.getScrollType(),
e.getScrollAmount(),
- e.getWheelRotation());
+ e.getWheelRotation(),
+ e.getPreciseWheelRotation());
((AWTEvent)e).copyPrivateDataInto(newMWE);
// When dispatching a wheel event to
// ancestor, there is no need trying to find descendant
@@ -6484,7 +6492,7 @@ public abstract class Component implemen
// will need some help.
Container parent = this.parent;
if (parent != null && parent.peer instanceof LightweightPeer) {
- nativeInLightFixer = new NativeInLightFixer();
+ relocateComponent();
}
}
invalidate();
@@ -6593,10 +6601,6 @@ public abstract class Component implemen
if (inputContext != null) {
inputContext.removeNotify(this);
}
- }
-
- if (nativeInLightFixer != null) {
- nativeInLightFixer.uninstall();
}
ComponentPeer p = peer;
@@ -7836,15 +7840,17 @@ public abstract class Component implemen
* @see #getPropertyChangeListeners
* @see #addPropertyChangeListener(java.lang.String, java.beans.PropertyChangeListener)
*/
- public synchronized void addPropertyChangeListener(
+ public void addPropertyChangeListener(
PropertyChangeListener listener) {
- if (listener == null) {
- return;
- }
- if (changeSupport == null) {
- changeSupport = new PropertyChangeSupport(this);
- }
- changeSupport.addPropertyChangeListener(listener);
+ synchronized (getChangeSupportLock()) {
+ if (listener == null) {
+ return;
+ }
+ if (changeSupport == null) {
+ changeSupport = new PropertyChangeSupport(this);
+ }
+ changeSupport.addPropertyChangeListener(listener);
+ }
}
/**
@@ -7860,12 +7866,14 @@ public abstract class Component implemen
* @see #getPropertyChangeListeners
* @see #removePropertyChangeListener(java.lang.String,java.beans.PropertyChangeListener)
*/
- public synchronized void removePropertyChangeListener(
+ public void removePropertyChangeListener(
PropertyChangeListener listener) {
- if (listener == null || changeSupport == null) {
- return;
- }
- changeSupport.removePropertyChangeListener(listener);
+ synchronized (getChangeSupportLock()) {
+ if (listener == null || changeSupport == null) {
+ return;
+ }
+ changeSupport.removePropertyChangeListener(listener);
+ }
}
/**
@@ -7882,11 +7890,13 @@ public abstract class Component implemen
* @see java.beans.PropertyChangeSupport#getPropertyChangeListeners
* @since 1.4
*/
- public synchronized PropertyChangeListener[] getPropertyChangeListeners() {
- if (changeSupport == null) {
- return new PropertyChangeListener[0];
- }
- return changeSupport.getPropertyChangeListeners();
+ public PropertyChangeListener[] getPropertyChangeListeners() {
+ synchronized (getChangeSupportLock()) {
+ if (changeSupport == null) {
+ return new PropertyChangeListener[0];
+ }
+ return changeSupport.getPropertyChangeListeners();
+ }
}
/**
@@ -7920,16 +7930,18 @@ public abstract class Component implemen
* @see #getPropertyChangeListeners(java.lang.String)
* @see #addPropertyChangeListener(java.lang.String, java.beans.PropertyChangeListener)
*/
- public synchronized void addPropertyChangeListener(
+ public void addPropertyChangeListener(
String propertyName,
PropertyChangeListener listener) {
- if (listener == null) {
- return;
- }
- if (changeSupport == null) {
- changeSupport = new PropertyChangeSupport(this);
- }
- changeSupport.addPropertyChangeListener(propertyName, listener);
+ synchronized (getChangeSupportLock()) {
+ if (listener == null) {
+ return;
+ }
+ if (changeSupport == null) {
+ changeSupport = new PropertyChangeSupport(this);
+ }
+ changeSupport.addPropertyChangeListener(propertyName, listener);
+ }
}
/**
@@ -7948,13 +7960,15 @@ public abstract class Component implemen
* @see #getPropertyChangeListeners(java.lang.String)
* @see #removePropertyChangeListener(java.beans.PropertyChangeListener)
*/
- public synchronized void removePropertyChangeListener(
+ public void removePropertyChangeListener(
String propertyName,
PropertyChangeListener listener) {
- if (listener == null || changeSupport == null) {
- return;
- }
- changeSupport.removePropertyChangeListener(propertyName, listener);
+ synchronized (getChangeSupportLock()) {
+ if (listener == null || changeSupport == null) {
+ return;
+ }
+ changeSupport.removePropertyChangeListener(propertyName, listener);
+ }
}
/**
@@ -7971,12 +7985,14 @@ public abstract class Component implemen
* @see #getPropertyChangeListeners
* @since 1.4
*/
- public synchronized PropertyChangeListener[] getPropertyChangeListeners(
+ public PropertyChangeListener[] getPropertyChangeListeners(
String propertyName) {
- if (changeSupport == null) {
- return new PropertyChangeListener[0];
- }
- return changeSupport.getPropertyChangeListeners(propertyName);
+ synchronized (getChangeSupportLock()) {
+ if (changeSupport == null) {
+ return new PropertyChangeListener[0];
+ }
+ return changeSupport.getPropertyChangeListeners(propertyName);
+ }
}
/**
@@ -7991,7 +8007,10 @@ public abstract class Component implemen
*/
protected void firePropertyChange(String propertyName,
Object oldValue, Object newValue) {
- PropertyChangeSupport changeSupport = this.changeSupport;
+ PropertyChangeSupport changeSupport;
+ synchronized (getChangeSupportLock()) {
+ changeSupport = this.changeSupport;
+ }
if (changeSupport == null ||
(oldValue != null && newValue != null && oldValue.equals(newValue))) {
return;
@@ -8491,8 +8510,6 @@ public abstract class Component implemen
setComponentOrientation(orientation);
}
- transient NativeInLightFixer nativeInLightFixer;
-
/**
* Checks that this component meets the prerequesites to be focus owner:
* - it is enabled, visible, focusable
@@ -8518,188 +8535,25 @@ public abstract class Component implemen
}
/**
- * This odd class is to help out a native component that has been
- * embedded in a lightweight component. Moving lightweight
- * components around and changing their visibility is not seen
- * by the native window system. This