提交 f34ba41b 编写于 作者: I igor

Merge

...@@ -466,12 +466,14 @@ else ...@@ -466,12 +466,14 @@ else
# On X86, make sure tail call optimization is off # On X86, make sure tail call optimization is off
# The z and y are the tail call optimizations. # The z and y are the tail call optimizations.
ifeq ($(ARCH_FAMILY), i586) ifeq ($(ARCH_FAMILY), i586)
ifeq ($(shell $(EXPR) $(CC_VER) \> 5.8), 1) ifeq ($(shell $(EXPR) $(CC_MAJORVER) \>= 5), 1)
# Somehow, tail call optimization is creeping in. ifeq ($(shell $(EXPR) $(CC_MINORVER) \> 8), 1)
# Make sure it is off. # Somehow, tail call optimization is creeping in.
# WARNING: These may cause compiler warnings about duplicate -O options # Make sure it is off.
CC_XKEEPFRAME_OPTIONS += -Wu,-O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz # WARNING: These may cause compiler warnings about duplicate -O options
CXX_XKEEPFRAME_OPTIONS += -Qoption ube -O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz CC_XKEEPFRAME_OPTIONS += -Wu,-O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz
CXX_XKEEPFRAME_OPTIONS += -Qoption ube -O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz
endif
endif endif
endif endif
...@@ -487,12 +489,15 @@ else ...@@ -487,12 +489,15 @@ else
CC_XKEEPFRAME_OPTIONS += -Wu,-Z~B CC_XKEEPFRAME_OPTIONS += -Wu,-Z~B
CXX_XKEEPFRAME_OPTIONS += -Qoption ube -Z~B CXX_XKEEPFRAME_OPTIONS += -Qoption ube -Z~B
endif endif
ifeq ($(shell $(EXPR) $(CC_VER) \> 5.6), 1)
# Do NOT use frame pointer register as a general purpose opt register ifeq ($(shell $(EXPR) $(CC_MAJORVER) \>= 5), 1)
CC_OPT/NONE += -xregs=no%frameptr ifeq ($(shell $(EXPR) $(CC_MINORVER) \> 6), 1)
CXX_OPT/NONE += -xregs=no%frameptr # Do NOT use frame pointer register as a general purpose opt register
CC_XKEEPFRAME_OPTIONS += -xregs=no%frameptr CC_OPT/NONE += -xregs=no%frameptr
CXX_XKEEPFRAME_OPTIONS += -xregs=no%frameptr CXX_OPT/NONE += -xregs=no%frameptr
CC_XKEEPFRAME_OPTIONS += -xregs=no%frameptr
CXX_XKEEPFRAME_OPTIONS += -xregs=no%frameptr
endif
endif endif
endif endif
......
...@@ -251,8 +251,8 @@ ZLIB_VERSION = 1.2.3 ...@@ -251,8 +251,8 @@ ZLIB_VERSION = 1.2.3
# Localizations for the different parts of the product beyond English # Localizations for the different parts of the product beyond English
# #
JRE_LOCALES = de es fr it ja ko sv zh_CN zh_TW zh_HK JRE_LOCALES = de es fr it ja ko pt_BR sv zh_CN zh_TW zh_HK
PLUGIN_LOCALES = de es fr it ja ko sv zh_CN zh_TW zh_HK PLUGIN_LOCALES = de es fr it ja ko pt_BR sv zh_CN zh_TW zh_HK
JDK_LOCALES = ja zh_CN JDK_LOCALES = ja zh_CN
# #
......
...@@ -61,6 +61,7 @@ endif ...@@ -61,6 +61,7 @@ endif
# Get compiler version # Get compiler version
_CC_VER :=$(shell $(CC) -V 2>&1 | $(HEAD) -n 1) _CC_VER :=$(shell $(CC) -V 2>&1 | $(HEAD) -n 1)
CC_VER :=$(call GetVersion,"$(_CC_VER)") CC_VER :=$(call GetVersion,"$(_CC_VER)")
CC_MAJORVER :=$(call MajorVersion,$(CC_VER))
CC_MINORVER :=$(call MinorVersion,$(CC_VER)) CC_MINORVER :=$(call MinorVersion,$(CC_VER))
# Name of compilers being used # Name of compilers being used
......
...@@ -123,7 +123,7 @@ LIBM=-lm ...@@ -123,7 +123,7 @@ LIBM=-lm
# GCC29_COMPILER_PATH: is the path to where the gcc 2.9 compiler is installed # GCC29_COMPILER_PATH: is the path to where the gcc 2.9 compiler is installed
# NOTE: Must end with / so that it could be empty, allowing PATH usage. # NOTE: Must end with / so that it could be empty, allowing PATH usage.
ifneq "$(origin ALT_GCC29_COMPILER_PATH)" "undefined" ifdef ALT_GCC29_COMPILER_PATH
GCC29_COMPILER_PATH :=$(call PrefixPath,$(ALT_GCC29_COMPILER_PATH)) GCC29_COMPILER_PATH :=$(call PrefixPath,$(ALT_GCC29_COMPILER_PATH))
else else
GCC29_COMPILER_PATH = $(JDK_DEVTOOLS_DIR)/$(PLATFORM)/gcc29/usr/ GCC29_COMPILER_PATH = $(JDK_DEVTOOLS_DIR)/$(PLATFORM)/gcc29/usr/
......
# #
# Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -65,7 +65,7 @@ ...@@ -65,7 +65,7 @@
# If we are using freetype, the freetype version expected. # If we are using freetype, the freetype version expected.
# #
# REQUIRED_GCC_VER # REQUIRED_GCC_VER
# Solaris and Linux only. The required version of gcc/g++ for the plugin. # Solaris and Linux only. The required version of gcc/g++ for the legacy OJI plugin.
# #
# REQUIRED_LINK_VER # REQUIRED_LINK_VER
# Windows only: The version of link.exe expected. # Windows only: The version of link.exe expected.
...@@ -193,7 +193,7 @@ endif ...@@ -193,7 +193,7 @@ endif
REQUIRED_ANT_VER = 1.6.3 REQUIRED_ANT_VER = 1.6.3
REQUIRED_BOOT_VER = 1.6 REQUIRED_BOOT_VER = 1.6
REQUIRED_FREETYPE_VERSION = 2.3.0 REQUIRED_FREETYPE_VERSION = 2.3.0
REQUIRED_MAKE_VER = 3.78 REQUIRED_MAKE_VER = 3.81
REQUIRED_UNZIP_VER = 5.12 REQUIRED_UNZIP_VER = 5.12
REQUIRED_ZIP_VER = 2.2 REQUIRED_ZIP_VER = 2.2
...@@ -287,9 +287,12 @@ ifdef BUILD_NUMBER ...@@ -287,9 +287,12 @@ ifdef BUILD_NUMBER
FULL_VERSION = $(RELEASE)-$(BUILD_NUMBER) FULL_VERSION = $(RELEASE)-$(BUILD_NUMBER)
else else
BUILD_NUMBER = b00 BUILD_NUMBER = b00
BUILD_DATE := $(shell $(DATE) '+%Y_%m_%d_%H_%M') ifndef USER_RELEASE_SUFFIX
CLEAN_USERNAME := $(shell $(ECHO) "$(USER)" | $(TR) -d -c '[:alnum:]') BUILD_DATE := $(shell $(DATE) '+%Y_%m_%d_%H_%M')
USER_RELEASE_SUFFIX := $(shell $(ECHO) "$(CLEAN_USERNAME)_$(BUILD_DATE)" | $(TR) '[:upper:]' '[:lower:]' ) CLEAN_USERNAME := $(shell $(ECHO) "$(USER)" | $(TR) -d -c '[:alnum:]')
USER_RELEASE_SUFFIX := $(shell $(ECHO) "$(CLEAN_USERNAME)_$(BUILD_DATE)" | $(TR) '[:upper:]' '[:lower:]' )
endif
export USER_RELEASE_SUFFIX
FULL_VERSION = $(RELEASE)-$(USER_RELEASE_SUFFIX)-$(BUILD_NUMBER) FULL_VERSION = $(RELEASE)-$(USER_RELEASE_SUFFIX)-$(BUILD_NUMBER)
endif endif
...@@ -335,7 +338,9 @@ endif ...@@ -335,7 +338,9 @@ endif
# Include any private definitions for this set of workspaces # Include any private definitions for this set of workspaces
_PRIVATE_DEFS_FILE=$(JDK_MAKE_SHARED_DIR)/PrivateDefs.gmk _PRIVATE_DEFS_FILE=$(JDK_MAKE_SHARED_DIR)/PrivateDefs.gmk
USING_PRIVATE_DEFS:=$(shell if [ -f $(_PRIVATE_DEFS_FILE) ]; then echo true; else echo false; fi) ifeq ($(USING_PRIVATE_DEFS),)
USING_PRIVATE_DEFS:=$(shell if [ -f $(_PRIVATE_DEFS_FILE) ]; then echo true; else echo false; fi)
endif
ifeq ($(USING_PRIVATE_DEFS),true) ifeq ($(USING_PRIVATE_DEFS),true)
dummy:=$(warning "WARNING: Using definitions from $(_PRIVATE_DEFS_FILE)") dummy:=$(warning "WARNING: Using definitions from $(_PRIVATE_DEFS_FILE)")
include $(_PRIVATE_DEFS_FILE) include $(_PRIVATE_DEFS_FILE)
......
...@@ -99,12 +99,16 @@ ifeq ($(PLATFORM), linux) ...@@ -99,12 +99,16 @@ ifeq ($(PLATFORM), linux)
echo "RedHat"; \ echo "RedHat"; \
elif [ -f /etc/SuSE-release ] ; then \ elif [ -f /etc/SuSE-release ] ; then \
echo "SuSE"; \ echo "SuSE"; \
elif [ -f /etc/lsb-release ] ; then \
$(EGREP) DISTRIB_ID /etc/lsb-release | $(SED) -e 's@.*DISTRIB_ID=\(.*\)@\1@'; \
else \ else \
echo "Unknown"; \ echo "Unknown"; \
fi) fi)
OS_VARIANT_VERSION := $(shell \ OS_VARIANT_VERSION := $(shell \
if [ "$(OS_VARIANT_NAME)" = "Fedora" ] ; then \ if [ "$(OS_VARIANT_NAME)" = "Fedora" ] ; then \
$(CAT) /etc/fedora-release | $(HEAD) -1 | $(NAWK) '{ print $$3; }' ; \ $(CAT) /etc/fedora-release | $(HEAD) -1 | $(NAWK) '{ print $$3; }' ; \
elif [ -f /etc/lsb-release ] ; then \
$(EGREP) DISTRIB_RELEASE /etc/lsb-release | $(SED) -e 's@.*DISTRIB_RELEASE=\(.*\)@\1@'; \
fi) fi)
ALSA_INCLUDE=/usr/include/alsa/version.h ALSA_INCLUDE=/usr/include/alsa/version.h
ALSA_LIBRARY=/usr/lib/libasound.so ALSA_LIBRARY=/usr/lib/libasound.so
...@@ -279,7 +283,7 @@ sane-arch_data_model: ...@@ -279,7 +283,7 @@ sane-arch_data_model:
fi fi
###################################################### ######################################################
# Check the OS version (windows and linus have release name checks) # Check the OS version (windows and linux have release name checks)
# NOTE: OPENJDK explicitly does not check for OS release information. # NOTE: OPENJDK explicitly does not check for OS release information.
# Unless we know for sure that it will not build somewhere, we cannot # Unless we know for sure that it will not build somewhere, we cannot
# generate a fatal sanity error, and a warning about the official # generate a fatal sanity error, and a warning about the official
...@@ -1389,20 +1393,21 @@ ifdef REQUIRED_ALSA_VERSION ...@@ -1389,20 +1393,21 @@ ifdef REQUIRED_ALSA_VERSION
endif endif
sane-alsa-headers: sane-alsa-headers:
ifdef REQUIRED_ALSA_VERSION ifdef REQUIRED_ALSA_VERSION
if [ "$(ALSA_CHECK)" != "same" -a "$(ALSA_CHECK)" != "newer" ] ; then \ @if [ "$(ALSA_CHECK)" != "missing" ] ; then \
$(ECHO) "ERROR: The ALSA version must be $(REQUIRED_ALSA_VERSION) or higher. \n" \ if [ "$(ALSA_CHECK)" != "same" -a "$(ALSA_CHECK)" != "newer" ] ; then \
" You have the following ALSA version installed: $${alsa_version) \n" \ $(ECHO) "ERROR: The ALSA version must be $(REQUIRED_ALSA_VERSION) or higher. \n" \
" Please reinstall ALSA (drivers and lib). You can download \n" \ " You have the following ALSA version installed: $${alsa_version} \n" \
" the source distribution from http://www.alsa-project.org \n" \ " Please reinstall ALSA (drivers and lib). You can download \n" \
" or go to http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \ " the source distribution from http://www.alsa-project.org \n" \
"" >> $(ERROR_FILE) ; \ " or go to http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \
fi \ "" >> $(ERROR_FILE) ; \
fi ; \
else \ else \
$(ECHO) "ERROR: You seem to not have installed ALSA $(REQUIRED_ALSA_VERSION) or higher. \n" \ $(ECHO) "ERROR: You seem to not have installed ALSA $(REQUIRED_ALSA_VERSION) or higher. \n" \
" Please install ALSA (drivers and lib). You can download the \n" \ " Please install ALSA (drivers and lib). You can download the \n" \
" source distribution from http://www.alsa-project.org or go to \n" \ " source distribution from http://www.alsa-project.org or go to \n" \
" http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \ " http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \
"" >> $(ERROR_FILE) ; \ "" >> $(ERROR_FILE) ; \
fi fi
endif endif
...@@ -1476,20 +1481,20 @@ ifeq ($(PLATFORM), windows) ...@@ -1476,20 +1481,20 @@ ifeq ($(PLATFORM), windows)
endif endif
###################################################### ######################################################
# Check the Solaris GNU c++ compiler for solaris plugin # Check the GNU C++ compiler for OJI plugin
###################################################### ######################################################
sane-gcc-compiler: sane-gcc-compiler:
ifeq ($(PLATFORM), solaris) ifndef OPENJDK
ifndef OPENJDK ifeq ($(PLATFORM), solaris)
@if [ -r $(GCC_COMPILER_PATH) ]; then \ @if [ -r $(GCC_COMPILER_PATH) ]; then \
if [ ! "$(GCC_VER)" = $(REQUIRED_GCC_VERSION) ]; then \ if [ ! "$(GCC_VER)" = $(REQUIRED_GCC_VER) ]; then \
$(ECHO) "ERROR: The Solaris GCC compiler version must be $(REQUIRED_GCC_VERSION). \n" \ $(ECHO) "ERROR: The Solaris GCC compiler version must be $(REQUIRED_GCC_VER). \n" \
" You are using the following compiler version: $(GCC_VER) \n" \ " You are using the following compiler version: $(GCC_VER) \n" \
" The compiler was obtained from the following location: \n" \ " The compiler was obtained from the following location: \n" \
" $(GCC_COMPILER_PATH) \n" \ " $(GCC_COMPILER_PATH) \n" \
" Please change your compiler. \n" \ " Please change your compiler. \n" \
"" >> $(ERROR_FILE) ; \ "" >> $(ERROR_FILE) ; \
fi \ fi \
else \ else \
$(ECHO) "ERROR: You do not have a valid GCC_COMPILER_PATH setting. \n" \ $(ECHO) "ERROR: You do not have a valid GCC_COMPILER_PATH setting. \n" \
" Please check your access to \n" \ " Please check your access to \n" \
...@@ -1501,15 +1506,16 @@ ifeq ($(PLATFORM), solaris) ...@@ -1501,15 +1506,16 @@ ifeq ($(PLATFORM), solaris)
endif endif
ifeq ($(PLATFORM), linux) ifeq ($(PLATFORM), linux)
ifeq ($(ARCH_DATA_MODEL), 32)
ifdef ALT_GCC29_COMPILER_PATH ifdef ALT_GCC29_COMPILER_PATH
@if [ ! -x $(ALT_GCC29_COMPILER_PATH)/bin/gcc ]; then \ @if [ ! -x $(ALT_GCC29_COMPILER_PATH)/bin/gcc ]; then \
$(ECHO) "ERROR: You do not have a valid ALT_GCC29_COMPILER_PATH setting. \n" \ $(ECHO) "ERROR: You do not have a valid ALT_GCC29_COMPILER_PATH setting. \n" \
" Please check your access to \n" \ " Please check your access to \n" \
" $(ALT_GCC29_COMPILER_PATH)/bin/gcc \n" \ " $(ALT_GCC29_COMPILER_PATH)/bin/gcc \n" \
" This will affect you if you build the plugin target. \n" \ " This will affect you if you build the plugin target. \n" \
"" >> $(ERROR_FILE) ; \ "" >> $(ERROR_FILE) ; \
fi fi
endif else
ifdef ALT_GCC29_PLUGIN_LIB_PATH ifdef ALT_GCC29_PLUGIN_LIB_PATH
@if [ ! -r $(ALT_GCC29_PLUGIN_LIB_PATH)/libjavaplugin_oji.so ]; then \ @if [ ! -r $(ALT_GCC29_PLUGIN_LIB_PATH)/libjavaplugin_oji.so ]; then \
$(ECHO) "Error: You do not have a valid ALT_GCC29_PLUGIN_LIB_PATH setting. \n" \ $(ECHO) "Error: You do not have a valid ALT_GCC29_PLUGIN_LIB_PATH setting. \n" \
...@@ -1523,13 +1529,15 @@ ifeq ($(PLATFORM), solaris) ...@@ -1523,13 +1529,15 @@ ifeq ($(PLATFORM), solaris)
$(ECHO) "ERROR: You do not have a valid GCC29_COMPILER_PATH setting. \n" \ $(ECHO) "ERROR: You do not have a valid GCC29_COMPILER_PATH setting. \n" \
" Please check your access to \n" \ " Please check your access to \n" \
" $(GCC29_COMPILER_PATH) \n" \ " $(GCC29_COMPILER_PATH) \n" \
" and/or check your value of ALT_GCC29_COMPILER_PATH. \n" \ " and/or check your value of ALT_GCC29_COMPILER_PATH or ALT_GCC29_PLUGIN_LIB_PATH \n" \
" This will affect you if you build the plugin target. \n" \ " This will affect you if you build the plugin target. \n" \
"" >> $(ERROR_FILE) ; \ "" >> $(ERROR_FILE) ; \
fi fi
endif endif # ALT_GCC29_PLUGIN_LIB_PATH
endif endif # ALT_GCC29_COMPILER_PATH
endif endif # ARCH_DATA_MODEL, 32
endif # LINUX
endif # OPEN_JDK
###################################################### ######################################################
......
...@@ -190,7 +190,6 @@ $(call CopyrightLine,$(COPYRIGHT_URL),$(FIRST_COPYRIGHT_YEAR),)\ ...@@ -190,7 +190,6 @@ $(call CopyrightLine,$(COPYRIGHT_URL),$(FIRST_COPYRIGHT_YEAR),)\
# Common javadoc options used by all # Common javadoc options used by all
COMMON_JAVADOCFLAGS = \ COMMON_JAVADOCFLAGS = \
$(NO_PROPRIETARY_API_WARNINGS) \ $(NO_PROPRIETARY_API_WARNINGS) \
-source 1.5 \
-quiet \ -quiet \
-use \ -use \
-keywords \ -keywords \
......
# #
# Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -137,6 +137,7 @@ JAVA_JAVA_java = \ ...@@ -137,6 +137,7 @@ JAVA_JAVA_java = \
java/lang/Comparable.java \ java/lang/Comparable.java \
java/lang/Readable.java \ java/lang/Readable.java \
java/lang/Override.java \ java/lang/Override.java \
java/lang/SafeVarargs.java \
java/lang/SuppressWarnings.java \ java/lang/SuppressWarnings.java \
java/lang/ref/Reference.java \ java/lang/ref/Reference.java \
java/lang/ref/SoftReference.java \ java/lang/ref/SoftReference.java \
......
...@@ -37,4 +37,5 @@ FILES_java = \ ...@@ -37,4 +37,5 @@ FILES_java = \
sun/util/resources/TimeZoneNames_es.java \ sun/util/resources/TimeZoneNames_es.java \
sun/util/resources/TimeZoneNames_fr.java \ sun/util/resources/TimeZoneNames_fr.java \
sun/util/resources/TimeZoneNames_it.java \ sun/util/resources/TimeZoneNames_it.java \
sun/util/resources/TimeZoneNames_pt_BR.java \
sun/util/resources/TimeZoneNames_sv.java sun/util/resources/TimeZoneNames_sv.java
...@@ -26,9 +26,6 @@ ...@@ -26,9 +26,6 @@
# JPRT rule to build this workspace # JPRT rule to build this workspace
JPRT_ARCHIVE_BUNDLE=$(ABS_OUTPUTDIR)/$(JPRT_BUILD_FLAVOR)-bundle.zip JPRT_ARCHIVE_BUNDLE=$(ABS_OUTPUTDIR)/$(JPRT_BUILD_FLAVOR)-bundle.zip
ifdef JPRT_BUILD_VERSION
MILESTONE=$(JPRT_BUILD_VERSION)
endif
jprt_build_product: all images jprt_build_product: all images
( $(CD) $(OUTPUTDIR)/j2sdk-image && \ ( $(CD) $(OUTPUTDIR)/j2sdk-image && \
......
...@@ -33,8 +33,8 @@ DEMONAME = zipfs ...@@ -33,8 +33,8 @@ DEMONAME = zipfs
include $(BUILDDIR)/common/Defs.gmk include $(BUILDDIR)/common/Defs.gmk
DEMO_ROOT = $(SHARE_SRC)/demo/nio/$(DEMONAME) DEMO_ROOT = $(SHARE_SRC)/demo/nio/$(DEMONAME)
DEMO_TOPFILES = ./README.txt DEMO_TOPFILES = README.txt Demo.java
DEMO_SRCDIR = $(DEMO_ROOT) DEMO_SRCDIR = $(DEMO_ROOT)/src
DEMO_DESTDIR = $(DEMODIR)/nio/$(DEMONAME) DEMO_DESTDIR = $(DEMODIR)/nio/$(DEMONAME)
# #
...@@ -42,10 +42,10 @@ DEMO_DESTDIR = $(DEMODIR)/nio/$(DEMONAME) ...@@ -42,10 +42,10 @@ DEMO_DESTDIR = $(DEMODIR)/nio/$(DEMONAME)
# #
include $(BUILDDIR)/common/Demo.gmk include $(BUILDDIR)/common/Demo.gmk
#EXTJAR = $(EXTDIR)/$(DEMONAME).jar EXTJAR = $(EXTDIR)/$(DEMONAME).jar
#
#all : build $(EXTJAR) all : build $(EXTJAR)
#
#$(EXTJAR) : $(DEMO_JAR) $(EXTJAR) : $(DEMO_JAR)
# $(prep-target) $(prep-target)
# $(CP) $(DEMO_JAR) $(EXTJAR) $(CP) $(DEMO_JAR) $(EXTJAR)
...@@ -18,11 +18,15 @@ MEDIA_SRC = $(SUN_SRC)/awt/medialib ...@@ -18,11 +18,15 @@ MEDIA_SRC = $(SUN_SRC)/awt/medialib
J2D_SRC = $(SUN_SRC)/java2d J2D_SRC = $(SUN_SRC)/java2d
J2D_FONT_SRC = $(SUN_SRC)/font J2D_FONT_SRC = $(SUN_SRC)/font
J2D_WINDOWS_SRC = $(WINDOWS_SRC)/native/sun/java2d J2D_WINDOWS_SRC = $(WINDOWS_SRC)/native/sun/java2d
AWT_WINDOWS_SRC = $(WINDOWS_SRC)/native/sun/awt
LOOP_SRC = $(SUN_SRC)/java2d/loops LOOP_SRC = $(SUN_SRC)/java2d/loops
PIPE_SRC = $(SUN_SRC)/java2d/pipe PIPE_SRC = $(SUN_SRC)/java2d/pipe
WINDOWS_SRC = $(TOPDIR)/src/windows WINDOWS_SRC = $(TOPDIR)/src/windows
SRC = $(WINDOWS_SRC)/native/sun/windows SRC = $(WINDOWS_SRC)/native/sun/windows
# ensure consistent sort order
LC_ALL:= C
SRCDIRS = \ SRCDIRS = \
$(COMP_SRC) \ $(COMP_SRC) \
$(DEBUG_SRC) \ $(DEBUG_SRC) \
...@@ -61,6 +65,7 @@ INCLUDES = \ ...@@ -61,6 +65,7 @@ INCLUDES = \
-I$(J2D_WINDOWS_SRC)/windows \ -I$(J2D_WINDOWS_SRC)/windows \
-I$(J2D_WINDOWS_SRC)/d3d \ -I$(J2D_WINDOWS_SRC)/d3d \
-I$(J2D_WINDOWS_SRC)/opengl \ -I$(J2D_WINDOWS_SRC)/opengl \
-I$(AWT_WINDOWS_SRC) \
-I$(LOOP_SRC) \ -I$(LOOP_SRC) \
-I$(PIPE_SRC) \ -I$(PIPE_SRC) \
-I$(SRC) -I$(SRC)
...@@ -68,22 +73,29 @@ INCLUDES = \ ...@@ -68,22 +73,29 @@ INCLUDES = \
STUBFILES = \ STUBFILES = \
$(STUBDIR)/ddraw.h \ $(STUBDIR)/ddraw.h \
$(STUBDIR)/d3d.h \ $(STUBDIR)/d3d.h \
$(STUBDIR)/d3d9.h \
$(STUBDIR)/Ole2.h \ $(STUBDIR)/Ole2.h \
$(STUBDIR)/Zmouse.h \ $(STUBDIR)/Zmouse.h \
$(STUBDIR)/cderr.h \ $(STUBDIR)/cderr.h \
$(STUBDIR)/comdef.h \
$(STUBDIR)/commctrl.h \ $(STUBDIR)/commctrl.h \
$(STUBDIR)/commdlg.h \ $(STUBDIR)/commdlg.h \
$(STUBDIR)/comutil.h \
$(STUBDIR)/direct.h \ $(STUBDIR)/direct.h \
$(STUBDIR)/d3dcom.h \ $(STUBDIR)/d3dcom.h \
$(STUBDIR)/imm.h \ $(STUBDIR)/imm.h \
$(STUBDIR)/ime.h \ $(STUBDIR)/ime.h \
$(STUBDIR)/io.h \ $(STUBDIR)/io.h \
$(STUBDIR)/map \
$(STUBDIR)/mmsystem.h \ $(STUBDIR)/mmsystem.h \
$(STUBDIR)/new.h \ $(STUBDIR)/new.h \
$(STUBDIR)/new \
$(STUBDIR)/ole2.h \ $(STUBDIR)/ole2.h \
$(STUBDIR)/process.h \
$(STUBDIR)/richole.h \ $(STUBDIR)/richole.h \
$(STUBDIR)/richedit.h \ $(STUBDIR)/richedit.h \
$(STUBDIR)/shellapi.h \ $(STUBDIR)/shellapi.h \
$(STUBDIR)/shlwapi.h \
$(STUBDIR)/shlobj.h \ $(STUBDIR)/shlobj.h \
$(STUBDIR)/tchar.h \ $(STUBDIR)/tchar.h \
$(STUBDIR)/winbase.h \ $(STUBDIR)/winbase.h \
...@@ -135,6 +147,9 @@ dependencies: ...@@ -135,6 +147,9 @@ dependencies:
include FILES_export_windows.gmk include FILES_export_windows.gmk
EXTRAFILES_java = \ EXTRAFILES_java = \
sun/java2d/opengl/OGLContext/OGLContextCaps.java \
sun/java2d/d3d/D3DPaints/MultiGradient.java \
sun/java2d/d3d/D3DContext/D3DContextCaps.java \
java/lang/Integer.java java/lang/Integer.java
FILES_java = $(FILES_export) $(FILES_export2) $(FILES_export3) \ FILES_java = $(FILES_export) $(FILES_export2) $(FILES_export3) \
......
...@@ -85,6 +85,8 @@ FILES_2D_c = \ ...@@ -85,6 +85,8 @@ FILES_2D_c = \
ScaledBlit.c \ ScaledBlit.c \
FillRect.c \ FillRect.c \
FillSpans.c \ FillSpans.c \
FillParallelogram.c \
DrawParallelogram.c \
DrawLine.c \ DrawLine.c \
DrawRect.c \ DrawRect.c \
DrawPolygons.c \ DrawPolygons.c \
......
...@@ -30,6 +30,8 @@ FILES_c = \ ...@@ -30,6 +30,8 @@ FILES_c = \
ScaledBlit.c \ ScaledBlit.c \
FillRect.c \ FillRect.c \
FillSpans.c \ FillSpans.c \
FillParallelogram.c \
DrawParallelogram.c \
DrawLine.c \ DrawLine.c \
DrawRect.c \ DrawRect.c \
DrawPolygons.c \ DrawPolygons.c \
......
...@@ -36,6 +36,8 @@ FILES_export = \ ...@@ -36,6 +36,8 @@ FILES_export = \
sun/java2d/loops/TransformBlit.java \ sun/java2d/loops/TransformBlit.java \
sun/java2d/loops/FillRect.java \ sun/java2d/loops/FillRect.java \
sun/java2d/loops/FillSpans.java \ sun/java2d/loops/FillSpans.java \
sun/java2d/loops/FillParallelogram.java \
sun/java2d/loops/DrawParallelogram.java \
sun/java2d/loops/DrawGlyphList.java \ sun/java2d/loops/DrawGlyphList.java \
sun/java2d/loops/DrawGlyphListAA.java \ sun/java2d/loops/DrawGlyphListAA.java \
sun/java2d/loops/DrawGlyphListLCD.java \ sun/java2d/loops/DrawGlyphListLCD.java \
......
...@@ -135,6 +135,8 @@ FILES_export2 = \ ...@@ -135,6 +135,8 @@ FILES_export2 = \
sun/java2d/loops/ScaledBlit.java \ sun/java2d/loops/ScaledBlit.java \
sun/java2d/loops/FillRect.java \ sun/java2d/loops/FillRect.java \
sun/java2d/loops/FillSpans.java \ sun/java2d/loops/FillSpans.java \
sun/java2d/loops/FillParallelogram.java \
sun/java2d/loops/DrawParallelogram.java \
sun/java2d/loops/DrawGlyphList.java \ sun/java2d/loops/DrawGlyphList.java \
sun/java2d/loops/DrawGlyphListAA.java \ sun/java2d/loops/DrawGlyphListAA.java \
sun/java2d/loops/DrawGlyphListLCD.java \ sun/java2d/loops/DrawGlyphListLCD.java \
......
...@@ -366,11 +366,12 @@ _FONTCONFIGS = \ ...@@ -366,11 +366,12 @@ _FONTCONFIGS = \
fontconfig.properties \ fontconfig.properties \
fontconfig.RedHat.properties \ fontconfig.RedHat.properties \
fontconfig.RedHat.2.1.properties \ fontconfig.RedHat.2.1.properties \
fontconfig.RedHat.3.properties \ fontconfig.RedHat.3.properties \
fontconfig.RedHat.4.properties \ fontconfig.RedHat.4.properties \
fontconfig.Sun.properties \ fontconfig.Sun.properties \
fontconfig.Turbo.properties \ fontconfig.Turbo.properties \
fontconfig.SuSE.properties fontconfig.SuSE.10.properties \
fontconfig.SuSE.11.properties
endif endif
FONTCONFIGS_SRC_PREFIX = $(PLATFORM). FONTCONFIGS_SRC_PREFIX = $(PLATFORM).
......
此差异已折叠。
...@@ -112,6 +112,8 @@ SUNWprivate_1.1 { ...@@ -112,6 +112,8 @@ SUNWprivate_1.1 {
Java_sun_java2d_loops_DrawRect_DrawRect; Java_sun_java2d_loops_DrawRect_DrawRect;
Java_sun_java2d_loops_FillRect_FillRect; Java_sun_java2d_loops_FillRect_FillRect;
Java_sun_java2d_loops_FillSpans_FillSpans; Java_sun_java2d_loops_FillSpans_FillSpans;
Java_sun_java2d_loops_FillParallelogram_FillParallelogram;
Java_sun_java2d_loops_DrawParallelogram_DrawParallelogram;
Java_sun_java2d_loops_GraphicsPrimitiveMgr_initIDs; Java_sun_java2d_loops_GraphicsPrimitiveMgr_initIDs;
Java_sun_java2d_loops_GraphicsPrimitiveMgr_registerNativeLoops; Java_sun_java2d_loops_GraphicsPrimitiveMgr_registerNativeLoops;
Java_sun_java2d_loops_MaskBlit_MaskBlit; Java_sun_java2d_loops_MaskBlit_MaskBlit;
......
...@@ -68,8 +68,7 @@ FILES_cpp_shared = \ ...@@ -68,8 +68,7 @@ FILES_cpp_shared = \
GlyphPositioningTables.cpp \ GlyphPositioningTables.cpp \
GlyphSubstLookupProc.cpp \ GlyphSubstLookupProc.cpp \
GlyphSubstitutionTables.cpp \ GlyphSubstitutionTables.cpp \
HebrewLigatureData.cpp \ HangulLayoutEngine.cpp \
HebrewShaping.cpp \
IndicClassTables.cpp \ IndicClassTables.cpp \
IndicReordering.cpp \ IndicReordering.cpp \
KernTable.cpp \ KernTable.cpp \
...@@ -95,6 +94,8 @@ FILES_cpp_shared = \ ...@@ -95,6 +94,8 @@ FILES_cpp_shared = \
SubstitutionLookups.cpp \ SubstitutionLookups.cpp \
ThaiShaping.cpp \ ThaiShaping.cpp \
ThaiStateTables.cpp \ ThaiStateTables.cpp \
TibetanLayoutEngine.cpp \
TibetanReordering.cpp \
ValueRecords.cpp \ ValueRecords.cpp \
ArabicLayoutEngine.cpp \ ArabicLayoutEngine.cpp \
ArabicShaping.cpp \ ArabicShaping.cpp \
......
Copyright %YEARS% Sun Microsystems, Inc. All Rights Reserved. Copyright (c) %YEARS% Oracle and/or its affiliates. All rights reserved.
Redistribution and use in source and binary forms, with or without Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions modification, are permitted provided that the following conditions
...@@ -26,3 +26,4 @@ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF ...@@ -26,3 +26,4 @@ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Copyright %YEARS% Sun Microsystems, Inc. All Rights Reserved. Copyright (c) %YEARS% Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it This code is free software; you can redistribute it and/or modify it
...@@ -20,3 +20,4 @@ Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ...@@ -20,3 +20,4 @@ Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any or visit www.oracle.com if you need additional information or have any
questions. questions.
Copyright %YEARS% Sun Microsystems, Inc. All Rights Reserved. Copyright (c) %YEARS% Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it This code is free software; you can redistribute it and/or modify it
...@@ -18,3 +18,4 @@ Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ...@@ -18,3 +18,4 @@ Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any or visit www.oracle.com if you need additional information or have any
questions. questions.
#
# This properties file is used to create a PropertyResourceBundle
# It contains Locale specific strings used be the Accessibility package.
#
# When this file is read in, the strings are put into the
# defaults table. This is an implementation detail of the current
# workings of Accessibility. DO NOT DEPEND ON THIS.
# This may change in future versions of Accessibility as we improve
# localization support.
#
# @author Lynn Monsanto
#
# accessible roles
#
alert=alerta
awtcomponent=componente AWT
checkbox=caixa de sele\u00e7\u00e3o
colorchooser=seletor de cores
columnheader=cabe\u00e7alho da coluna
combobox=caixa de combina\u00e7\u00e3o
canvas=tela
desktopicon=\u00edcone da \u00e1rea de trabalho
desktoppane=painel da \u00e1rea de trabalho
dialog=caixa de di\u00e1logo
directorypane=painel do diret\u00f3rio
glasspane=painel transparente
filechooser=seletor de arquivos
filler=preenchimento
frame=quadro
internalframe=quadro interno
label=r\u00f3tulo
layeredpane=painel em camadas
list=lista
listitem=item da lista
menubar=barra de menus
menu=menu
menuitem=item do menu
optionpane=painel de op\u00e7\u00f5es
pagetab=aba da p\u00e1gina
pagetablist=lista de abas da p\u00e1gina
panel=painel
passwordtext=texto da senha
popupmenu=menu pop-up
progressbar=barra de progresso
pushbutton=bot\u00e3o de a\u00e7\u00e3o
radiobutton=bot\u00e3o de op\u00e7\u00e3o
rootpane=painel base
rowheader=cabe\u00e7alho da linha
scrollbar=barra de rolagem
scrollpane=painel de rolagem
separator=separador
slider=controle deslizante
splitpane=painel dividido
swingcomponent=componente swing
table=tabela
text=texto
tree=\u00e1rvore
togglebutton=bot\u00e3o de altern\u00e2ncia
toolbar=barra de ferramentas
tooltip=dica de ferramenta
unknown=desconhecido
viewport=janela de visualiza\u00e7\u00e3o
window=janela
#
# accessible relations
#
labelFor=r\u00f3tulo de
labeledBy=rotulado por
memberOf=membro de
controlledBy=controlledBy
controllerFor=controllerFor
#
# accessible states
#
active=ativo
armed=armado
busy=ocupado
checked=selecionado
collapsed=recolhido
editable=edit\u00e1vel
expandable=expans\u00edvel
expanded=expandido
enabled=habilitado
focusable=focaliz\u00e1vel
focused=focalizado
iconified=iconizado
modal=modal
multiline=v\u00e1rias linhas
multiselectable=m\u00faltipla escolha
opaque=opaco
pressed=pressionado
resizable=redimension\u00e1vel
selectable=selecion\u00e1vel
selected=selecionado
showing=exibindo
singleline=linha \u00fanica
transient=transit\u00f3rio
visible=vis\u00edvel
vertical=vertical
horizontal=horizontal
#
# accessible actions
#
toggle expandir=alternar expandir
# new relations, roles and states for J2SE 1.5.0
#
# accessible relations
#
flowsTo=fluxos para
flowsFrom=fluxos de
subwindowOf=subjanela de
parentWindowOf=janela pai de
embeds=integra
embeddedBy=integrado por
childNodeOf=n\u00f3 filho de
#
# accessible roles
#
header=cabe\u00e7alho
footer=rodap\u00e9
paragraph=par\u00e1grafo
ruler=r\u00e9gua
editbar=barra de edi\u00e7\u00e3o
progressMonitor=monitor de progresso
#
# accessible states
#
managesDescendants=gerencia descendentes
indeterminate=indeterminado
truncated=truncado
# new for J2SE 1.6.0
#
# accessible roles
#
htmlcontainer=cont\u00eainer HTML
#
# END OF MATERIAL TO LOCALIZE
#
# Refer to the note in basic.properties for a description as to what
# the mnemonics correspond to and how to calculate them.
# GTK specific properties
# GTK color chooser properties:
GTKColorChooserPanel.nameText=Seletor de cores do GTK
# mnemonic as a VK_ constant
GTKColorChooserPanel.mnemonic=71
# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
# want an index other than would normally be underlined by
# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
# if GTKColorChooserPanel.nameText defines the mnemonic character more
# than once and you want a character other than the first underlined.
# Text and mnemonics for the spinner. You can also defined a different
# index for the mnemonic via xxxMnemonicIndex, for example
# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
# character of GTKColorChooserPanel.hueText should be underlined to
# represent the mnemonic.
GTKColorChooserPanel.hueText=Matiz:
GTKColorChooserPanel.hueMnemonic=72
GTKColorChooserPanel.redText=Vermelho:
GTKColorChooserPanel.redMnemonic=69
GTKColorChooserPanel.saturationText=Satura\u00e7\u00e3o:
GTKColorChooserPanel.saturationMnemonic=83
GTKColorChooserPanel.greenText=Verde:
GTKColorChooserPanel.greenMnemonic=71
GTKColorChooserPanel.valueText=Valor:
GTKColorChooserPanel.valueMnemonic=86
GTKColorChooserPanel.blueText=Azul:
GTKColorChooserPanel.blueMnemonic=66
GTKColorChooserPanel.colorNameText=Nome da cor:
GTKColorChooserPanel.colorNameMnemonic=78
############ FILE CHOOSER STRINGS #############
FileChooser.acceptAllFileFilterText=Todos os arquivos
FileChooser.newFolderButtonText=Nova pasta
FileChooser.newFolderButtonMnemonic=78
FileChooser.newFolderDialogText=Nome da pasta:
FileChooser.deleteFileButtonText=Excluir arquivo
FileChooser.deleteFileButtonMnemonic=76
FileChooser.renameFileButtonText=Renomear arquivo
FileChooser.renameFileButtonMnemonic=82
FileChooser.cancelButtonText=Cancelar
FileChooser.cancelButtonMnemonic=67
FileChooser.saveButtonText=OK
FileChooser.saveButtonMnemonic=79
FileChooser.openButtonText=OK
FileChooser.openButtonMnemonic=79
FileChooser.saveDialogTitleText=Salvar
FileChooser.openDialogTitleText=Abrir
FileChooser.pathLabelText=Sele\u00e7\u00e3o:
FileChooser.filterLabelText=Filtro:
FileChooser.pathLabelMnemonic=83
FileChooser.foldersLabelText=Pastas
FileChooser.foldersLabelMnemonic=68
FileChooser.filesLabelText=Arquivos
FileChooser.filesLabelMnemonic=70
FileChooser.cancelButtonToolTipText=Anular caixa de di\u00e1logo do seletor de arquivos.
FileChooser.saveButtonToolTipText=Salvar arquivo selecionado.
FileChooser.openButtonToolTipText=Abrir arquivo selecionado.
FileChooser.renameFileDialogText=Renomear arquivo "{0}" por
FileChooser.renameFileErrorTitle=Erro
FileChooser.renameFileErrorText=Erro ao renomear o arquivo "{0}" por "{1}"
OptionPane.okButtonMnemonic=79
OptionPane.cancelButtonMnemonic=67
# This properties file is used to create a PropertyResourceBundle
# It contains Locale specific strings used be the Motif Look and Feel.
# Currently, the following components need this for support:
#
# FileChooser
#
# When this file is read in, the strings are put into the
# defaults table. This is an implementation detail of the current
# workings of Swing. DO NOT DEPEND ON THIS.
# This may change in future versions of Swing as we improve localization
# support.
#
# Refer to the note in basic.properties for a description as to what
# the mnemonics correspond to and how to calculate them.
#
# @author Steve Wilson
############ FILE CHOOSER STRINGS #############
FileChooser.acceptAllFileFilterText=*
FileChooser.cancelButtonText=Cancelar
FileChooser.saveButtonText=Salvar
FileChooser.openButtonText=OK
FileChooser.saveDialogTitleText=Salvar
FileChooser.openDialogTitleText=Abrir
FileChooser.updateButtonText=Atualizar
FileChooser.helpButtonText=Ajuda
FileChooser.pathLabelText=Inserir caminho ou nome da pasta:
FileChooser.filterLabelText=Filtro
FileChooser.foldersLabelText=Pastas
FileChooser.filesLabelText=Arquivos
FileChooser.enterFileNameLabelText=Inserir nome de arquivo:
FileChooser.cancelButtonToolTipText=Anular caixa de di\u00e1logo do seletor de arquivos.
FileChooser.saveButtonToolTipText=Salvar arquivo selecionado.
FileChooser.openButtonToolTipText=Abrir arquivo selecionado.
FileChooser.updateButtonToolTipText=Atualizar lista de diret\u00f3rios.
FileChooser.helpButtonToolTipText=Ajuda do FileChooser.
...@@ -33,11 +33,11 @@ FileChooser.newFolderActionLabelText=Neuer Ordner ...@@ -33,11 +33,11 @@ FileChooser.newFolderActionLabelText=Neuer Ordner
FileChooser.listViewButtonToolTipText=Liste FileChooser.listViewButtonToolTipText=Liste
FileChooser.listViewButtonAccessibleName=Liste FileChooser.listViewButtonAccessibleName=Liste
FileChooser.listViewActionLabelText=Liste FileChooser.listViewActionLabelText=Liste
FileChooser.detailsViewButtonToolTipText=Einzelheiten FileChooser.detailsViewButtonToolTipText=Details
FileChooser.detailsViewButtonAccessibleName=Einzelheiten FileChooser.detailsViewButtonAccessibleName=Details
FileChooser.viewMenuButtonToolTipText = View Menu FileChooser.viewMenuButtonToolTipText = View Menu
FileChooser.viewMenuButtonAccessibleName = View Menu FileChooser.viewMenuButtonAccessibleName = View Menu
FileChooser.detailsViewActionLabelText=Einzelheiten FileChooser.detailsViewActionLabelText=Details
FileChooser.refreshActionLabelText=Aktualisieren FileChooser.refreshActionLabelText=Aktualisieren
FileChooser.viewMenuLabelText=Ansicht FileChooser.viewMenuLabelText=Ansicht
FileChooser.fileNameHeaderText=Dateiname FileChooser.fileNameHeaderText=Dateiname
......
...@@ -45,3 +45,6 @@ FileChooser.fileSizeHeaderText=\u30b5\u30a4\u30ba ...@@ -45,3 +45,6 @@ FileChooser.fileSizeHeaderText=\u30b5\u30a4\u30ba
FileChooser.fileTypeHeaderText=\u30bf\u30a4\u30d7 FileChooser.fileTypeHeaderText=\u30bf\u30a4\u30d7
FileChooser.fileDateHeaderText=\u66f4\u65b0\u65e5 FileChooser.fileDateHeaderText=\u66f4\u65b0\u65e5
FileChooser.fileAttrHeaderText=\u5c5e\u6027 FileChooser.fileAttrHeaderText=\u5c5e\u6027
FileChooser.directoryOpenButtonText=\u958b\u304f(O)
FileChooser.openButtonText=\u958b\u304f(O)
FileChooser.saveButtonText=\u4fdd\u5b58(S)
...@@ -45,3 +45,6 @@ FileChooser.fileSizeHeaderText=\ud06c\uae30 ...@@ -45,3 +45,6 @@ FileChooser.fileSizeHeaderText=\ud06c\uae30
FileChooser.fileTypeHeaderText=\uc885\ub958 FileChooser.fileTypeHeaderText=\uc885\ub958
FileChooser.fileDateHeaderText=\uc218\uc815 FileChooser.fileDateHeaderText=\uc218\uc815
FileChooser.fileAttrHeaderText=\uc18d\uc131 FileChooser.fileAttrHeaderText=\uc18d\uc131
FileChooser.directoryOpenButtonText=\uc5f4\uae30(O)
FileChooser.openButtonText=\uc5f4\uae30(O)
FileChooser.saveButtonText=\uc800\uc7a5(S)
# This properties file is used to create a PropertyResourceBundle
# It contains Locale specific strings used be the Windows Look and Feel.
# Currently, the following components need this for support:
#
# FileChooser
#
# When this file is read in, the strings are put into the
# defaults table. This is an implementation detail of the current
# workings of Swing. DO NOT DEPEND ON THIS.
# This may change in future versions of Swing as we improve localization
# support.
#
# Refer to the note in basic.properties for a description as to what
# the mnemonics correspond to and how to calculate them.
#
# @author Steve Wilson
############ FILE CHOOSER STRINGS #############
FileChooser.lookInLabelText=Consultar em:
FileChooser.saveInLabelText=Salvar em:
FileChooser.fileNameLabelText=Nome de arquivo:
FileChooser.filesOfTypeLabelText=Arquivos de tipo:
FileChooser.upFolderToolTipText=Um n\u00edvel acima
FileChooser.upFolderAccessibleName=Acima
FileChooser.homeFolderToolTipText=In\u00edcio
FileChooser.homeFolderAccessibleName=In\u00edcio
FileChooser.newFolderToolTipText=Criar nova pasta
FileChooser.newFolderAccessibleName=Nova pasta
FileChooser.newFolderActionLabelText=Nova pasta
FileChooser.listViewButtonToolTipText=Lista
FileChooser.listViewButtonAccessibleName=Lista
FileChooser.listViewActionLabelText=Lista
FileChooser.detailsViewButtonToolTipText=Detalhes
FileChooser.detailsViewButtonAccessibleName=Detalhes
FileChooser.detailsViewActionLabelText=Detalhes
FileChooser.refreshActionLabelText=Atualizar
FileChooser.viewMenuLabelText=Exibir
FileChooser.fileNameHeaderText=Nome
FileChooser.fileSizeHeaderText=Tamanho
FileChooser.fileTypeHeaderText=Tipo
FileChooser.fileDateHeaderText=Modificado
FileChooser.fileAttrHeaderText=Atributos
...@@ -45,3 +45,6 @@ FileChooser.fileSizeHeaderText=\u5927\u5c0f ...@@ -45,3 +45,6 @@ FileChooser.fileSizeHeaderText=\u5927\u5c0f
FileChooser.fileTypeHeaderText=\u7c7b\u578b FileChooser.fileTypeHeaderText=\u7c7b\u578b
FileChooser.fileDateHeaderText=\u4fee\u8ba2\u7248 FileChooser.fileDateHeaderText=\u4fee\u8ba2\u7248
FileChooser.fileAttrHeaderText=\u5c5e\u6027 FileChooser.fileAttrHeaderText=\u5c5e\u6027
FileChooser.directoryOpenButtonText=\u6253\u5f00(O)
FileChooser.openButtonText=\u6253\u5f00(O)
FileChooser.saveButtonText=\u4fdd\u5b58(S)
...@@ -45,3 +45,6 @@ FileChooser.fileSizeHeaderText=\u5927\u5c0f ...@@ -45,3 +45,6 @@ FileChooser.fileSizeHeaderText=\u5927\u5c0f
FileChooser.fileTypeHeaderText=\u985e\u578b FileChooser.fileTypeHeaderText=\u985e\u578b
FileChooser.fileDateHeaderText=\u4fee\u6539 FileChooser.fileDateHeaderText=\u4fee\u6539
FileChooser.fileAttrHeaderText=\u5c6c\u6027 FileChooser.fileAttrHeaderText=\u5c6c\u6027
FileChooser.directoryOpenButtonText=\u958b\u555f(O)
FileChooser.openButtonText=\u958b\u555f(O)
FileChooser.saveButtonText=\u5132\u5b58(S)
/* /*
* Copyright (c) 1999, 2002, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -113,6 +113,6 @@ public class BasicControl implements Control { ...@@ -113,6 +113,6 @@ public class BasicControl implements Control {
* ASN.1 BER encoded value. * ASN.1 BER encoded value.
*/ */
public byte[] getEncodedValue() { public byte[] getEncodedValue() {
return value; return value == null ? null : value.clone();
} }
} }
...@@ -427,7 +427,10 @@ final class Filter { ...@@ -427,7 +427,10 @@ final class Filter {
} }
} else { } else {
// descriptor // descriptor
if (filter[i] != '-' && // The underscore ("_") character is not allowed by
// the LDAP specification. We allow it here to
// tolerate the incorrect use in practice.
if (filter[i] != '-' && filter[i] != '_' &&
!(filter[i] >= '0' && filter[i] <= '9') && !(filter[i] >= '0' && filter[i] <= '9') &&
!(filter[i] >= 'A' && filter[i] <= 'Z') && !(filter[i] >= 'A' && filter[i] <= 'Z') &&
!(filter[i] >= 'a' && filter[i] <= 'z')) { !(filter[i] >= 'a' && filter[i] <= 'z')) {
...@@ -467,7 +470,10 @@ final class Filter { ...@@ -467,7 +470,10 @@ final class Filter {
break; break;
} }
if (filter[i] != '-' && // The underscore ("_") character is not allowed by
// the LDAP specification. We allow it here to
// tolerate the incorrect use in practice.
if (filter[i] != '-' && filter[i] != '_' &&
!(filter[i] >= '0' && filter[i] <= '9') && !(filter[i] >= '0' && filter[i] <= '9') &&
!(filter[i] >= 'A' && filter[i] <= 'Z') && !(filter[i] >= 'A' && filter[i] <= 'Z') &&
!(filter[i] >= 'a' && filter[i] <= 'z')) { !(filter[i] >= 'a' && filter[i] <= 'z')) {
...@@ -515,7 +521,10 @@ final class Filter { ...@@ -515,7 +521,10 @@ final class Filter {
} }
} else { } else {
// descriptor // descriptor
if (filter[j] != '-' && // The underscore ("_") character is not allowed by
// the LDAP specification. We allow it here to
// tolerate the incorrect use in practice.
if (filter[j] != '-' && filter[j] != '_' &&
!(filter[j] >= '0' && filter[j] <= '9') && !(filter[j] >= '0' && filter[j] <= '9') &&
!(filter[j] >= 'A' && filter[j] <= 'Z') && !(filter[j] >= 'A' && filter[j] <= 'Z') &&
!(filter[j] >= 'a' && filter[j] <= 'z')) { !(filter[j] >= 'a' && filter[j] <= 'z')) {
......
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: keine Metadaten ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: keine Metadaten
cachedrowsetimpl.movetoins2 = moveToInsertRow: ung\u00fcltige Spaltenanzahl cachedrowsetimpl.movetoins2 = moveToInsertRow: ung\u00fcltige Spaltenanzahl
cachedrowsetimpl.tablename = Tabellenname darf nicht Null sein cachedrowsetimpl.tablename = Tabellenname darf nicht Null sein
cachedrowsetimpl.keycols = Ung\u00fcltige Schl\u00fcsselspalten cachedrowsetimpl.keycols = Ung\u00fcltige Schl\u00fcsselspalten
cachedrowsetimpl.invalidcol = Ung\u00fcltiger Spaltenindex
cachedrowsetimpl.opnotsupp = Datenbank unterst\u00fctzt Vorgang nicht cachedrowsetimpl.opnotsupp = Datenbank unterst\u00fctzt Vorgang nicht
cachedrowsetimpl.matchcols = \u00dcbereinstimmende Spalten entsprechen nicht den definierten Spalten cachedrowsetimpl.matchcols = \u00dcbereinstimmende Spalten entsprechen nicht den definierten Spalten
cachedrowsetimpl.setmatchcols = \u00dcbereinstimmende Spalten m\u00fcssen vor dem Abrufen definiert werden cachedrowsetimpl.setmatchcols = \u00dcbereinstimmende Spalten m\u00fcssen vor dem Abrufen definiert werden
...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = Kein definierter Verkn\u00fcpfungstyp ...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = Kein definierter Verkn\u00fcpfungstyp
joinrowsetimpl.notsupported = Verkn\u00fcpfungstyp wird nicht unterst\u00fctzt joinrowsetimpl.notsupported = Verkn\u00fcpfungstyp wird nicht unterst\u00fctzt
joinrowsetimpl.initerror = Initialisierungsfehler bei JoinRowSet joinrowsetimpl.initerror = Initialisierungsfehler bei JoinRowSet
joinrowsetimpl.genericerr = Generischer Anfangsfehler bei joinrowset joinrowsetimpl.genericerr = Generischer Anfangsfehler bei joinrowset
joinrowsetimpl.emptyrowset = Leeres Rowset kann nicht zu JoinRowSet hinzugef\u00fcgt werden joinrowsetimpl.emptyrowset = Leeres rowset kann nicht zu diesem JoinRowSet hinzugef\u00fcgt werden
#JdbcRowSetImpl exceptions #JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = Ung\u00fcltiger Status jdbcrowsetimpl.invalstate = Ung\u00fcltiger Status
...@@ -117,16 +116,16 @@ jdbcrowsetimpl.featnotsupp = Funktion nicht unterst\u00fctzt ...@@ -117,16 +116,16 @@ jdbcrowsetimpl.featnotsupp = Funktion nicht unterst\u00fctzt
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = (JNDI) Verbindung nicht m\u00f6glich crsreader.connect = (JNDI) Verbindung nicht m\u00f6glich
crsreader.paramtype = Parametertyp konnte nicht abgeleitet werden crsreader.paramtype = Parametertyp konnte nicht abgeleitet werden
crsreader.connecterr = Interner Fehler im RowSetReader: keine Verbindung oder kein Befehl crsreader.connecterr = Interner Fehler in RowSetReader: Keine Verbindung oder kein Befehl
crsreader.datedetected = Datum gefunden crsreader.datedetected = Datum festgestellt
crsreader.caldetected = Kalender gefunden crsreader.caldetected = Kalender festgestellt
#CachedRowSetWriter exceptions #CachedRowSetWriter exceptions
crswriter.connect = Verbindung konnte nicht hergestellt werden crswriter.connect = Verbindung konnte nicht hergestellt werden
crswriter.tname = writeData kann Tabellennamen nicht feststellen crswriter.tname = writeData kann Tabellennamen nicht feststellen
crswriter.params1 = Wert f\u00fcr params1: {0} crswriter.params1 = Wert f\u00fcr params1: {0}
crswriter.params2 = Wert f\u00fcr params2: {0} crswriter.params2 = Wert f\u00fcr params2: {0}
crswriter.conflictsno = Konflikte w\u00e4hrend der Synchronisation crswriter.conflictsno = Konflikt beim Synchronisieren
#InsertRow exceptions #InsertRow exceptions
insertrow.novalue = Es wurde kein Wert eingef\u00fcgt insertrow.novalue = Es wurde kein Wert eingef\u00fcgt
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = Aufzul\u00f6sender Wert befindet sich entweder in der Date ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = Aufzul\u00f6sender Wert befindet sich entweder in der Date
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = Ende von RowSet wurde erreicht. Ung\u00fcltige Cursorposition wrsxmlreader.invalidcp = Ende von RowSet wurde erreicht. Ung\u00fcltige Cursorposition
wrsxmlreader.readxml = readXML: {0} wrsxmlreader.readxml = readXML: {0}
wrsxmlreader.parseerr = ** Parsing-Fehler wrsxmlreader.parseerr = ** Parsing-Fehler: {0}, Zeile: {1} , uri: {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException: {0} wrsxmlwriter.ioex = IOException: {0}
...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = Kein zul\u00e4ssiger Typ ...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = Kein zul\u00e4ssiger Typ
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = Fehler beim Definieren der Zuordnung: {0} xmlrch.errmap = Fehler beim Definieren der Zuordnung: {0}
xmlrch.errmetadata = Fehler beim Definieren der Metadaten: {0} xmlrch.errmetadata = Fehler beim Definieren der Metadaten: {0}
xmlrch.errinsert = Fehler beim Einf\u00fcgen der Werte: {0} xmlrch.errinsertval = Fehler beim Einf\u00fcgen der Werte: {0}
xmlrch.errconstr = Fehler beim Erstellen der Zeile: {0} xmlrch.errconstr = Fehler beim Erstellen der Zeile: {0}
xmlrch.errdel = Fehler beim L\u00f6schen der Zeile: {0} xmlrch.errdel = Fehler beim L\u00f6schen der Zeile: {0}
xmlrch.errinsert = Fehler beim Erstellen der Einf\u00fcgezeile: {0}
xmlrch.errinsdel = Fehler beim Erstellen der Einf\u00fcge- oder L\u00f6schzeile: {0} xmlrch.errinsdel = Fehler beim Erstellen der Einf\u00fcge- oder L\u00f6schzeile: {0}
xmlrch.errupdate = Fehler beim Erstellen der Aktualisierungszeile: {0} xmlrch.errupdate = Fehler beim Erstellen der Aktualisierungszeile: {0}
xmlrch.errupdrow = Fehler beim Aktualisieren der Zeile : {0} xmlrch.errupdrow = Fehler beim Aktualisieren der Zeile: {0}
xmlrch.chars = Zeichen: xmlrch.chars = Zeichen:
xmlrch.badvalue = Fehlerhafter Wert; Eigenschaft darf nicht Null sein. xmlrch.badvalue = Fehlerhafter Wert; Eigenschaft darf nicht Null sein.
xmlrch.badvalue1 = Fehlerhafter Wert; Metadaten d\u00fcrfen nicht Null sein. xmlrch.badvalue1 = Fehlerhafter Wert; Metadaten d\u00fcrfen nicht Null sein.
xmlrch.warning = ** Warnung xmlrch.warning = ** Warnung: {0}, Zeile: {1} , uri: {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = Sperren der Klassifizierung wird nicht unterst\u00fctzt riop.locking = Sperren der Klassifizierung wird nicht unterst\u00fctzt
......
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: no hay metadatos ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: no hay metadatos
cachedrowsetimpl.movetoins2 = moveToInsertRow: n\u00famero de columnas no v\u00e1lido cachedrowsetimpl.movetoins2 = moveToInsertRow: n\u00famero de columnas no v\u00e1lido
cachedrowsetimpl.tablename = El nombre de la tabla no puede ser nulo cachedrowsetimpl.tablename = El nombre de la tabla no puede ser nulo
cachedrowsetimpl.keycols = Columnas clave no v\u00e1lidas cachedrowsetimpl.keycols = Columnas clave no v\u00e1lidas
cachedrowsetimpl.invalidcol = \u00cdndice de columnas no v\u00e1lido
cachedrowsetimpl.opnotsupp = La base de datos no admite esta operaci\u00f3n cachedrowsetimpl.opnotsupp = La base de datos no admite esta operaci\u00f3n
cachedrowsetimpl.matchcols = Las columnas emparejadas no concuerdan con las definidas cachedrowsetimpl.matchcols = Las columnas emparejadas no concuerdan con las definidas
cachedrowsetimpl.setmatchcols = Configurar emparejamiento de columnas antes de obtenerlas cachedrowsetimpl.setmatchcols = Configurar emparejamiento de columnas antes de obtenerlas
...@@ -76,7 +75,7 @@ cachedrowsetimpl.pagesize = El tama\u00f1o de p\u00e1gina no puede ser menor que ...@@ -76,7 +75,7 @@ cachedrowsetimpl.pagesize = El tama\u00f1o de p\u00e1gina no puede ser menor que
cachedrowsetimpl.pagesize1 = El tama\u00f1o de p\u00e1gina no puede ser mayor que maxRows cachedrowsetimpl.pagesize1 = El tama\u00f1o de p\u00e1gina no puede ser mayor que maxRows
cachedrowsetimpl.fwdonly = ResultSet s\u00f3lo se reenv\u00eda cachedrowsetimpl.fwdonly = ResultSet s\u00f3lo se reenv\u00eda
cachedrowsetimpl.type = El tipo es: {0} cachedrowsetimpl.type = El tipo es: {0}
cachedrowsetimpl.opnotysupp = Operaci\u00f3n a\u00fan no admitida cachedrowsetimpl.opnotysupp = Operaci\u00f3n no admitida todav\u00eda
cachedrowsetimpl.featnotsupp = Funci\u00f3n no admitida cachedrowsetimpl.featnotsupp = Funci\u00f3n no admitida
# WebRowSetImpl exceptions # WebRowSetImpl exceptions
...@@ -111,13 +110,13 @@ jdbcrowsetimpl.unsetmatch = Las columnas que se est\u00e1n desconfigurando no so ...@@ -111,13 +110,13 @@ jdbcrowsetimpl.unsetmatch = Las columnas que se est\u00e1n desconfigurando no so
jdbcrowsetimpl.usecolname = Usar nombre de columna como argumento en unsetMatchColumn jdbcrowsetimpl.usecolname = Usar nombre de columna como argumento en unsetMatchColumn
jdbcrowsetimpl.usecolid = Usar ID de columna como argumento en unsetMatchColumn jdbcrowsetimpl.usecolid = Usar ID de columna como argumento en unsetMatchColumn
jdbcrowsetimpl.resnotupd = ResultSet no se puede actualizar jdbcrowsetimpl.resnotupd = ResultSet no se puede actualizar
jdbcrowsetimpl.opnotysupp = Operaci\u00f3n a\u00fan no admitida jdbcrowsetimpl.opnotysupp = Operaci\u00f3n no admitida todav\u00eda
jdbcrowsetimpl.featnotsupp = Funci\u00f3n no admitida jdbcrowsetimpl.featnotsupp = Funci\u00f3n no admitida
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = (JNDI) No se puede conectar crsreader.connect = (JNDI) No se puede conectar
crsreader.paramtype = No se puede deducir tipo de par\u00e1metro crsreader.paramtype = No se puede deducir tipo de par\u00e1metro
crsreader.connecterr = Error interno en RowSetReader: no hay conexi\u00f3n ni comando crsreader.connecterr = Error interno en RowSetReader: no hay conexi\u00f3n o comando
crsreader.datedetected = Fecha detectada crsreader.datedetected = Fecha detectada
crsreader.caldetected = Calendario detectado crsreader.caldetected = Calendario detectado
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = El valor que se debe definir puede estar en la base de dat ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = El valor que se debe definir puede estar en la base de dat
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = Se ha llegado al final de RowSet. Posici\u00f3n de cursor no v\u00e1lida wrsxmlreader.invalidcp = Se ha llegado al final de RowSet. Posici\u00f3n de cursor no v\u00e1lida
wrsxmlreader.readxml = readXML: {0} wrsxmlreader.readxml = readXML: {0}
wrsxmlreader.parseerr = ** Error de an\u00e1lisis wrsxmlreader.parseerr = ** Error de an\u00e1lisis: {0} , l\u00ednea: {1} , uri: {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException: {0} wrsxmlwriter.ioex = IOException: {0}
...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = Tipo incorrecto ...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = Tipo incorrecto
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = Error al configurar la asignaci\u00f3n: {0} xmlrch.errmap = Error al configurar la asignaci\u00f3n: {0}
xmlrch.errmetadata = Error al configurar metadatos: {0} xmlrch.errmetadata = Error al configurar metadatos: {0}
xmlrch.errinsert = Error al insertar los valores: {0} xmlrch.errinsertval = Error al insertar los valores: {0}
xmlrch.errconstr = Error al construir fila: {0} xmlrch.errconstr = Error al construir fila: {0}
xmlrch.errdel = Error al borrar fila: {0} xmlrch.errdel = Error al borrar fila: {0}
xmlrch.errinsert = Error al construir insertar fila: {0}
xmlrch.errinsdel = Error al construir insertar o suprimir fila: {0} xmlrch.errinsdel = Error al construir insertar o suprimir fila: {0}
xmlrch.errupdate = Error al construir actualizar fila: {0} xmlrch.errupdate = Error al construir actualizar fila: {0}
xmlrch.errupdrow = Error al actualizar la fila: {0} xmlrch.errupdrow = Error al actualizar la fila: {0}
xmlrch.chars = caracteres: xmlrch.chars = caracteres:
xmlrch.badvalue = Valor incorrecto; la propiedad no puede ser nula xmlrch.badvalue = Valor incorrecto; la propiedad no puede ser nula
xmlrch.badvalue1 = Valor incorrecto; los metadatos no pueden ser nulos xmlrch.badvalue1 = Valor incorrecto; los metadatos no pueden ser nulos
xmlrch.warning = ** Advertencia xmlrch.warning = ** Advertencia: {0} , l\u00ednea: {1} , uri: {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = No se permite bloquear la clasificaci\u00f3n riop.locking = No se permite bloquear la clasificaci\u00f3n
......
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow : aucune m\u00e9tadonn\u00e9e ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow : aucune m\u00e9tadonn\u00e9e
cachedrowsetimpl.movetoins2 = moveToInsertRow : Nombre de colonnes non valide cachedrowsetimpl.movetoins2 = moveToInsertRow : Nombre de colonnes non valide
cachedrowsetimpl.tablename = Le nom du tableau ne peut pas \u00eatre null cachedrowsetimpl.tablename = Le nom du tableau ne peut pas \u00eatre null
cachedrowsetimpl.keycols = Colonnes de cl\u00e9 non valides cachedrowsetimpl.keycols = Colonnes de cl\u00e9 non valides
cachedrowsetimpl.invalidcol = Index de colonne non valide
cachedrowsetimpl.opnotsupp = Op\u00e9ration non prise en charge par la base de donn\u00e9es cachedrowsetimpl.opnotsupp = Op\u00e9ration non prise en charge par la base de donn\u00e9es
cachedrowsetimpl.matchcols = Les colonnes correspondantes ne sont pas les m\u00eames que les colonnes d\u00e9finies cachedrowsetimpl.matchcols = Les colonnes correspondantes ne sont pas les m\u00eames que les colonnes d\u00e9finies
cachedrowsetimpl.setmatchcols = D\u00e9finissez les colonnes correspondantes avant de les prendre cachedrowsetimpl.setmatchcols = D\u00e9finissez les colonnes correspondantes avant de les prendre
...@@ -76,7 +75,7 @@ cachedrowsetimpl.pagesize = La taille de la page ne peut pas \u00eatre n\u00e9ga ...@@ -76,7 +75,7 @@ cachedrowsetimpl.pagesize = La taille de la page ne peut pas \u00eatre n\u00e9ga
cachedrowsetimpl.pagesize1 = La taille de la page ne peut pas \u00eatre sup\u00e9rieure \u00e0 maxRows cachedrowsetimpl.pagesize1 = La taille de la page ne peut pas \u00eatre sup\u00e9rieure \u00e0 maxRows
cachedrowsetimpl.fwdonly = ResultSet est en avant seulement cachedrowsetimpl.fwdonly = ResultSet est en avant seulement
cachedrowsetimpl.type = Le type est : {0} cachedrowsetimpl.type = Le type est : {0}
cachedrowsetimpl.opnotysupp = Op\u00e9ration encore non prise en charge cachedrowsetimpl.opnotysupp = Op\u00e9ration non encore prise en charge
cachedrowsetimpl.featnotsupp = Fonction non prise en charge cachedrowsetimpl.featnotsupp = Fonction non prise en charge
# WebRowSetImpl exceptions # WebRowSetImpl exceptions
...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = Ce n'est pas un type de jointure d\u00e9fini ...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = Ce n'est pas un type de jointure d\u00e9fini
joinrowsetimpl.notsupported = Ce type de jointure n'est pas pris en charge joinrowsetimpl.notsupported = Ce type de jointure n'est pas pris en charge
joinrowsetimpl.initerror = Erreur d'initialisation de JoinRowSet joinrowsetimpl.initerror = Erreur d'initialisation de JoinRowSet
joinrowsetimpl.genericerr = Erreur initiale g\u00e9n\u00e9rique de JoinRowSet joinrowsetimpl.genericerr = Erreur initiale g\u00e9n\u00e9rique de JoinRowSet
joinrowsetimpl.emptyrowset = Impossible d'ajouter un ensemble de lignes vide \u00e0 ce JoinRowSet joinrowsetimpl.emptyrowset = Impossible d'ajouter un objet RowSet vide \u00e0 ce JoinRowSet
#JdbcRowSetImpl exceptions #JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = \u00c9tat non valide jdbcrowsetimpl.invalstate = \u00c9tat non valide
...@@ -111,22 +110,22 @@ jdbcrowsetimpl.unsetmatch = Les colonnes non d\u00e9finies ne sont pas les m\u00 ...@@ -111,22 +110,22 @@ jdbcrowsetimpl.unsetmatch = Les colonnes non d\u00e9finies ne sont pas les m\u00
jdbcrowsetimpl.usecolname = Utilisez le nom de la colonne en argument de unsetMatchColumn jdbcrowsetimpl.usecolname = Utilisez le nom de la colonne en argument de unsetMatchColumn
jdbcrowsetimpl.usecolid = Utilisez l'ID de la colonne en argument de unsetMatchColumn jdbcrowsetimpl.usecolid = Utilisez l'ID de la colonne en argument de unsetMatchColumn
jdbcrowsetimpl.resnotupd = La mise \u00e0 jour de ResultSet est interdite jdbcrowsetimpl.resnotupd = La mise \u00e0 jour de ResultSet est interdite
jdbcrowsetimpl.opnotysupp = Op\u00e9ration encore non prise en charge jdbcrowsetimpl.opnotysupp = Op\u00e9ration non encore prise en charge
jdbcrowsetimpl.featnotsupp = Fonction non prise en charge jdbcrowsetimpl.featnotsupp = Fonction non prise en charge
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = Impossible de connecter (JNDI) crsreader.connect = Impossible de connecter (JNDI)
crsreader.paramtype = Impossible de d\u00e9duire le type de param\u00e8tre crsreader.paramtype = Impossible de d\u00e9duire le type de param\u00e8tre
crsreader.connecterr = Erreur interne dans RowSetReader\u00a0: aucune connexion ou commande crsreader.connecterr = Erreur interne dans RowSetReader\u00a0: pas de connexion ni de commande
crsreader.datedetected = Date d\u00e9tect\u00e9e crsreader.datedetected = Une date a \u00e9t\u00e9 d\u00e9tect\u00e9e
crsreader.caldetected = Calendrier d\u00e9tect\u00e9 crsreader.caldetected = Un calendrier a \u00e9t\u00e9 d\u00e9tect\u00e9
#CachedRowSetWriter exceptions #CachedRowSetWriter exceptions
crswriter.connect = Impossible d'obtenir la connexion crswriter.connect = Impossible d'obtenir la connexion
crswriter.tname = writeData ne peut pas d\u00e9terminer le nom du tableau crswriter.tname = writeData ne peut pas d\u00e9terminer le nom du tableau
crswriter.params1 = Valeur de params1 : {0} crswriter.params1 = Valeur de params1 : {0}
crswriter.params2 = Valeur de params2 : {0} crswriter.params2 = Valeur de params2 : {0}
crswriter.conflictsno = Conflits au cours de la synchronisation crswriter.conflictsno = conflits lors de la synchronisation
#InsertRow exceptions #InsertRow exceptions
insertrow.novalue = Aucune valeur n'a \u00e9t\u00e9 ins\u00e9r\u00e9e insertrow.novalue = Aucune valeur n'a \u00e9t\u00e9 ins\u00e9r\u00e9e
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = La valeur \u00e0 r\u00e9soudre peut \u00eatre soit dans la ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = La valeur \u00e0 r\u00e9soudre peut \u00eatre soit dans la
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = Fin de RowSet atteinte. Position de curseur non valide wrsxmlreader.invalidcp = Fin de RowSet atteinte. Position de curseur non valide
wrsxmlreader.readxml = readXML : {0} wrsxmlreader.readxml = readXML : {0}
wrsxmlreader.parseerr = ** Erreur d'analyse wrsxmlreader.parseerr = ** Erreur d''analyse : {0} , ligne : {1} , URI : {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException : {0} wrsxmlwriter.ioex = IOException : {0}
...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = N'est pas un type correct ...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = N'est pas un type correct
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = Erreur lors de la d\u00e9finition de Map : {0} xmlrch.errmap = Erreur lors de la d\u00e9finition de Map : {0}
xmlrch.errmetadata = Erreur lors de la d\u00e9finition des m\u00e9tadonn\u00e9es : {0} xmlrch.errmetadata = Erreur lors de la d\u00e9finition des m\u00e9tadonn\u00e9es : {0}
xmlrch.errinsert = Erreur lors de l''insertion des valeurs : {0} xmlrch.errinsertval = Erreur lors de l''insertion des valeurs\u00a0: {0}
xmlrch.errconstr = Erreur lors de la construction de la ligne : {0} xmlrch.errconstr = Erreur lors de la construction de la ligne : {0}
xmlrch.errdel = Erreur lors de la suppression de la ligne : {0} xmlrch.errdel = Erreur lors de la suppression de la ligne : {0}
xmlrch.errinsert = Erreur lors de la construction de la ligne \u00e0 ins\u00e9rer : {0}
xmlrch.errinsdel = Erreur lors de la construction de la ligne insdel : {0} xmlrch.errinsdel = Erreur lors de la construction de la ligne insdel : {0}
xmlrch.errupdate = Erreur lors de la construction de la ligne \u00e0 mettre \u00e0 jour : {0} xmlrch.errupdate = Erreur lors de la construction de la ligne \u00e0 mettre \u00e0 jour : {0}
xmlrch.errupdrow = Erreur lors de la mise \u00e0 jour de la ligne\u00a0: {0} xmlrch.errupdrow = Erreur lors de la mise \u00e0 jour de la ligne\u00a0: {0}
xmlrch.chars = caract\u00e8res : xmlrch.chars = caract\u00e8res :
xmlrch.badvalue = Valeur incorrecte ; null impossible pour cette propri\u00e9t\u00e9 xmlrch.badvalue = Valeur incorrecte ; null impossible pour cette propri\u00e9t\u00e9
xmlrch.badvalue1 = Valeur incorrecte ; null impossible pour ces m\u00e9tadonn\u00e9es xmlrch.badvalue1 = Valeur incorrecte ; null impossible pour ces m\u00e9tadonn\u00e9es
xmlrch.warning = ** Avertissement xmlrch.warning = ** Avertissement : {0} , ligne : {1} , URI : {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = Le verrouillage de la classification n'est pas pris en charge riop.locking = Le verrouillage de la classification n'est pas pris en charge
......
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: nessun metadato ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: nessun metadato
cachedrowsetimpl.movetoins2 = moveToInsertRow: numero di colonne non valido cachedrowsetimpl.movetoins2 = moveToInsertRow: numero di colonne non valido
cachedrowsetimpl.tablename = Il nome di tabella non pu\u00f2 essere nullo cachedrowsetimpl.tablename = Il nome di tabella non pu\u00f2 essere nullo
cachedrowsetimpl.keycols = Colonne chiave non valide cachedrowsetimpl.keycols = Colonne chiave non valide
cachedrowsetimpl.invalidcol = Indice di colonna non valido
cachedrowsetimpl.opnotsupp = Operazione non supportata dal database cachedrowsetimpl.opnotsupp = Operazione non supportata dal database
cachedrowsetimpl.matchcols = Le colonne di corrispondenza non coincidono con le colonne impostate cachedrowsetimpl.matchcols = Le colonne di corrispondenza non coincidono con le colonne impostate
cachedrowsetimpl.setmatchcols = Impostare le colonne di corrispondenza prima di recuperarle cachedrowsetimpl.setmatchcols = Impostare le colonne di corrispondenza prima di recuperarle
...@@ -76,7 +75,7 @@ cachedrowsetimpl.pagesize = La dimensione della pagina non pu\u00f2 essere infer ...@@ -76,7 +75,7 @@ cachedrowsetimpl.pagesize = La dimensione della pagina non pu\u00f2 essere infer
cachedrowsetimpl.pagesize1 = La dimensione della pagina non pu\u00f2 essere superiore a maxRows cachedrowsetimpl.pagesize1 = La dimensione della pagina non pu\u00f2 essere superiore a maxRows
cachedrowsetimpl.fwdonly = ResultSet \u00e8 a solo inoltro cachedrowsetimpl.fwdonly = ResultSet \u00e8 a solo inoltro
cachedrowsetimpl.type = Il tipo \u00e8: {0} cachedrowsetimpl.type = Il tipo \u00e8: {0}
cachedrowsetimpl.opnotysupp = Operazione non ancora supportata cachedrowsetimpl.opnotysupp = Operazione attualmente non supportata
cachedrowsetimpl.featnotsupp = Funzionalit\u00e0 non supportata cachedrowsetimpl.featnotsupp = Funzionalit\u00e0 non supportata
# WebRowSetImpl exceptions # WebRowSetImpl exceptions
...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = Non \u00e8 un tipo di unione definito ...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = Non \u00e8 un tipo di unione definito
joinrowsetimpl.notsupported = Questo tipo di unione non \u00e8 supportato joinrowsetimpl.notsupported = Questo tipo di unione non \u00e8 supportato
joinrowsetimpl.initerror = Errore di inizializzazione di JoinRowSet joinrowsetimpl.initerror = Errore di inizializzazione di JoinRowSet
joinrowsetimpl.genericerr = Errore iniziale di joinrowset generico joinrowsetimpl.genericerr = Errore iniziale di joinrowset generico
joinrowsetimpl.emptyrowset = Impossibile aggiungere un rowset al JoinRowSet corrente joinrowsetimpl.emptyrowset = Impossibile aggiungere un set di righe vuoto al JoinRowSet corrente
#JdbcRowSetImpl exceptions #JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = Stato non valido jdbcrowsetimpl.invalstate = Stato non valido
...@@ -111,22 +110,22 @@ jdbcrowsetimpl.unsetmatch = Le colonne rimosse non coincidono con le colonne imp ...@@ -111,22 +110,22 @@ jdbcrowsetimpl.unsetmatch = Le colonne rimosse non coincidono con le colonne imp
jdbcrowsetimpl.usecolname = Utilizzare il nome di colonna come argomento per unsetMatchColumn jdbcrowsetimpl.usecolname = Utilizzare il nome di colonna come argomento per unsetMatchColumn
jdbcrowsetimpl.usecolid = Utilizzare l'ID di colonna come argomento per unsetMatchColumn jdbcrowsetimpl.usecolid = Utilizzare l'ID di colonna come argomento per unsetMatchColumn
jdbcrowsetimpl.resnotupd = ResultSet non \u00e8 aggiornabile jdbcrowsetimpl.resnotupd = ResultSet non \u00e8 aggiornabile
jdbcrowsetimpl.opnotysupp = Operazione non ancora supportata jdbcrowsetimpl.opnotysupp = Operazione attualmente non supportata
jdbcrowsetimpl.featnotsupp = Funzionalit\u00e0 non supportata jdbcrowsetimpl.featnotsupp = Funzionalit\u00e0 non supportata
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = (JNDI) Impossibile stabilire una connessione crsreader.connect = (JNDI) Impossibile stabilire una connessione
crsreader.paramtype = Impossibile dedurre il tipo di parametro crsreader.paramtype = Impossibile dedurre il tipo di parametro
crsreader.connecterr = Errore interno in RowSetReader: nessuna connessione o comando disponibile crsreader.connecterr = Errore interno in RowSetReader: nessuna connessione o comando
crsreader.datedetected = Data rilevata crsreader.datedetected = \u00c8 stata rilevata una data
crsreader.caldetected = Calendario rilevato crsreader.caldetected = \u00c8 stato rilevato un calendario
#CachedRowSetWriter exceptions #CachedRowSetWriter exceptions
crswriter.connect = Impossibile stabilire una connessione crswriter.connect = Impossibile stabilire una connessione
crswriter.tname = writeData non riesce a determinare il nome di tabella crswriter.tname = writeData non riesce a determinare il nome di tabella
crswriter.params1 = Valore dei parametri 1: {0} crswriter.params1 = Valore dei parametri 1: {0}
crswriter.params2 = Valore dei parametri 2: {0} crswriter.params2 = Valore dei parametri 2: {0}
crswriter.conflictsno = conflitti durante la sincronizzazione crswriter.conflictsno = Conflitti durante la sincronizzazione
#InsertRow exceptions #InsertRow exceptions
insertrow.novalue = Non \u00e8 stato inserito alcun valore insertrow.novalue = Non \u00e8 stato inserito alcun valore
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = Il valore da risolvere pu\u00f2 essere nel database o in c ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = Il valore da risolvere pu\u00f2 essere nel database o in c
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = Raggiunta la fine di RowSet. Posizione cursore non valida wrsxmlreader.invalidcp = Raggiunta la fine di RowSet. Posizione cursore non valida
wrsxmlreader.readxml = readXML: {0} wrsxmlreader.readxml = readXML: {0}
wrsxmlreader.parseerr = ** Errore di analisi wrsxmlreader.parseerr = **Errore di analisi: {0}, riga: {1}, URI: {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException: {0} wrsxmlwriter.ioex = IOException: {0}
...@@ -150,18 +149,17 @@ wsrxmlwriter.notproper = Non un tipo corretto ...@@ -150,18 +149,17 @@ wsrxmlwriter.notproper = Non un tipo corretto
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = Errore durante l''impostazione della mappa: {0} xmlrch.errmap = Errore durante l''impostazione della mappa: {0}
xmlrch.errmetadata = Errore durante l'impostazione dei metadati: {0} xmlrch.errmetadata = Errore durante l''impostazione dei metadati: {0}
xmlrch.errinsert = Errore durante l''inserimento dei valori: {0} xmlrch.errinsertval = Errore durante l''inserimento dei valori: {0}
xmlrch.errconstr = Errore durante la costruzione della riga: {0} xmlrch.errconstr = Errore durante la costruzione della riga: {0}
xmlrch.errdel = Errore durante l''eliminazione della riga: {0} xmlrch.errdel = Errore durante l''eliminazione della riga: {0}
xmlrch.errinsert = Errore durante la costruzione della riga di inserimento: {0}
xmlrch.errinsdel = Errore durante la costruzione della riga insdel: {0} xmlrch.errinsdel = Errore durante la costruzione della riga insdel: {0}
xmlrch.errupdate = Errore durante la costruzione della riga di aggiornamento: {0} xmlrch.errupdate = Errore durante la costruzione della riga di aggiornamento: {0}
xmlrch.errupdrow = Errore durante l''aggiornamento della riga: {0} xmlrch.errupdrow = Errore durante l''aggiornamento della riga: {0}
xmlrch.chars = caratteri: xmlrch.chars = caratteri:
xmlrch.badvalue = valore non valido; propriet\u00e0 non annullabile xmlrch.badvalue = valore non valido; propriet\u00e0 non annullabile
xmlrch.badvalue1 = valore non valido; metadati non annullabili xmlrch.badvalue1 = valore non valido; metadati non annullabili
xmlrch.warning = ** Avviso xmlrch.warning = **Avviso: {0}, riga: {1}, URI: {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = La classificazione di blocco non \u00e8 supportata riop.locking = La classificazione di blocco non \u00e8 supportata
......
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow : \u30e1\u30bf\u30c7\u30fc\u30bf\u ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow : \u30e1\u30bf\u30c7\u30fc\u30bf\u
cachedrowsetimpl.movetoins2 = moveToInsertRow : \u7121\u52b9\u306a\u5217\u6570 cachedrowsetimpl.movetoins2 = moveToInsertRow : \u7121\u52b9\u306a\u5217\u6570
cachedrowsetimpl.tablename = \u8868\u540d\u306b null \u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002 cachedrowsetimpl.tablename = \u8868\u540d\u306b null \u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002
cachedrowsetimpl.keycols = \u7121\u52b9\u306a\u30ad\u30fc\u5217 cachedrowsetimpl.keycols = \u7121\u52b9\u306a\u30ad\u30fc\u5217
cachedrowsetimpl.invalidcol = \u7121\u52b9\u306a\u5217\u30a4\u30f3\u30c7\u30c3\u30af\u30b9
cachedrowsetimpl.opnotsupp = \u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u64cd\u4f5c cachedrowsetimpl.opnotsupp = \u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u64cd\u4f5c
cachedrowsetimpl.matchcols = \u4e00\u81f4\u5217\u304c\u5217\u306e\u30bb\u30c3\u30c8\u3068\u540c\u3058\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 cachedrowsetimpl.matchcols = \u4e00\u81f4\u5217\u304c\u5217\u306e\u30bb\u30c3\u30c8\u3068\u540c\u3058\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002
cachedrowsetimpl.setmatchcols = \u4e00\u81f4\u5217\u3092\u53d6\u5f97\u3059\u308b\u524d\u306b\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 cachedrowsetimpl.setmatchcols = \u4e00\u81f4\u5217\u3092\u53d6\u5f97\u3059\u308b\u524d\u306b\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002
...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = \u30da\u30fc\u30b8\u30b5\u30a4\u30ba\u306f\u30bc\u30 ...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = \u30da\u30fc\u30b8\u30b5\u30a4\u30ba\u306f\u30bc\u30
cachedrowsetimpl.pagesize1 = \u30da\u30fc\u30b8\u30b5\u30a4\u30ba\u306f maxRows \u3088\u308a\u5927\u304d\u304f\u3066\u306f\u306a\u308a\u307e\u305b\u3093\u3002 cachedrowsetimpl.pagesize1 = \u30da\u30fc\u30b8\u30b5\u30a4\u30ba\u306f maxRows \u3088\u308a\u5927\u304d\u304f\u3066\u306f\u306a\u308a\u307e\u305b\u3093\u3002
cachedrowsetimpl.fwdonly = ResultSet \u306f\u9806\u65b9\u5411\u306e\u307f\u3067\u3059\u3002 cachedrowsetimpl.fwdonly = ResultSet \u306f\u9806\u65b9\u5411\u306e\u307f\u3067\u3059\u3002
cachedrowsetimpl.type = \u578b : {0} cachedrowsetimpl.type = \u578b : {0}
cachedrowsetimpl.opnotysupp = \u3053\u306e\u64cd\u4f5c\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 cachedrowsetimpl.opnotysupp = \u307e\u3060\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u306a\u3044\u64cd\u4f5c
cachedrowsetimpl.featnotsupp = \u3053\u306e\u6a5f\u80fd\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 cachedrowsetimpl.featnotsupp = \u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u306a\u3044\u6a5f\u80fd
# WebRowSetImpl exceptions # WebRowSetImpl exceptions
webrowsetimpl.nullhash = WebRowSetImpl \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5316\u3067\u304d\u307e\u305b\u3093\u3002\u30b3\u30f3\u30b9\u30c8\u30e9\u30af\u30bf\u306b null \u306e Hashtable \u304c\u4f7f\u7528\u3055\u308c\u307e\u3057\u305f\u3002 webrowsetimpl.nullhash = WebRowSetImpl \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5316\u3067\u304d\u307e\u305b\u3093\u3002\u30b3\u30f3\u30b9\u30c8\u30e9\u30af\u30bf\u306b null \u306e Hashtable \u304c\u4f7f\u7528\u3055\u308c\u307e\u3057\u305f\u3002
...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = \u5b9a\u7fa9\u3055\u308c\u305f\u7d50\u5408\u306e\u57 ...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = \u5b9a\u7fa9\u3055\u308c\u305f\u7d50\u5408\u306e\u57
joinrowsetimpl.notsupported = \u3053\u306e\u578b\u306e\u7d50\u5408\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 joinrowsetimpl.notsupported = \u3053\u306e\u578b\u306e\u7d50\u5408\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002
joinrowsetimpl.initerror = JoinRowSet \u521d\u671f\u5316\u30a8\u30e9\u30fc joinrowsetimpl.initerror = JoinRowSet \u521d\u671f\u5316\u30a8\u30e9\u30fc
joinrowsetimpl.genericerr = \u6c4e\u7528 joinrowset \u306e\u521d\u671f\u30a8\u30e9\u30fc joinrowsetimpl.genericerr = \u6c4e\u7528 joinrowset \u306e\u521d\u671f\u30a8\u30e9\u30fc
joinrowsetimpl.emptyrowset = \u3053\u306e JoinRowSet \u306b\u306f\u7a7a\u306e\u884c\u30bb\u30c3\u30c8\u3092\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3002 joinrowsetimpl.emptyrowset = \u3053\u306e JoinRowSet \u306b\u7a7a\u306e\u884c\u30bb\u30c3\u30c8\u3092\u8ffd\u52a0\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093\u3002
#JdbcRowSetImpl exceptions #JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = \u7121\u52b9\u306a\u72b6\u614b jdbcrowsetimpl.invalstate = \u7121\u52b9\u306a\u72b6\u614b
...@@ -111,13 +110,13 @@ jdbcrowsetimpl.unsetmatch = \u8a2d\u5b9a\u89e3\u9664\u3055\u308c\u3066\u3044\u30 ...@@ -111,13 +110,13 @@ jdbcrowsetimpl.unsetmatch = \u8a2d\u5b9a\u89e3\u9664\u3055\u308c\u3066\u3044\u30
jdbcrowsetimpl.usecolname = unsetMatchColumn \u3078\u306e\u5f15\u6570\u3068\u3057\u3066\u5217\u540d\u3092\u4f7f\u7528\u3066\u304f\u3060\u3055\u3044\u3002 jdbcrowsetimpl.usecolname = unsetMatchColumn \u3078\u306e\u5f15\u6570\u3068\u3057\u3066\u5217\u540d\u3092\u4f7f\u7528\u3066\u304f\u3060\u3055\u3044\u3002
jdbcrowsetimpl.usecolid = unsetMatchColumn \u3078\u306e\u5f15\u6570\u3068\u3057\u3066\u5217 ID \u3092\u4f7f\u7528\u3066\u304f\u3060\u3055\u3044\u3002 jdbcrowsetimpl.usecolid = unsetMatchColumn \u3078\u306e\u5f15\u6570\u3068\u3057\u3066\u5217 ID \u3092\u4f7f\u7528\u3066\u304f\u3060\u3055\u3044\u3002
jdbcrowsetimpl.resnotupd = ResultSet \u306f\u66f4\u65b0\u3067\u304d\u307e\u305b\u3093\u3002 jdbcrowsetimpl.resnotupd = ResultSet \u306f\u66f4\u65b0\u3067\u304d\u307e\u305b\u3093\u3002
jdbcrowsetimpl.opnotysupp = \u3053\u306e\u64cd\u4f5c\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 jdbcrowsetimpl.opnotysupp = \u307e\u3060\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u306a\u3044\u64cd\u4f5c
jdbcrowsetimpl.featnotsupp = \u3053\u306e\u6a5f\u80fd\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 jdbcrowsetimpl.featnotsupp = \u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u306a\u3044\u6a5f\u80fd
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = (JNDI) \u63a5\u7d9a\u3067\u304d\u307e\u305b\u3093\u3002 crsreader.connect = (JNDI) \u63a5\u7d9a\u3067\u304d\u307e\u305b\u3093\u3002
crsreader.paramtype = \u30d1\u30e9\u30e1\u30fc\u30bf\u578b\u3092\u63a8\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 crsreader.paramtype = \u30d1\u30e9\u30e1\u30fc\u30bf\u578b\u3092\u63a8\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002
crsreader.connecterr = RowSetReader \u306e\u5185\u90e8\u30a8\u30e9\u30fc: \u5207\u65ad\u3055\u308c\u3066\u3044\u308b\u304b\u307e\u305f\u306f\u30b3\u30de\u30f3\u30c9\u304c\u5b58\u5728\u3057\u307e\u305b\u3093\u3002 crsreader.connecterr = RowSetReader \u306e\u5185\u90e8\u30a8\u30e9\u30fc: \u63a5\u7d9a\u307e\u305f\u306f\u30b3\u30de\u30f3\u30c9\u306a\u3057
crsreader.datedetected = \u65e5\u4ed8\u3092\u691c\u51fa\u3057\u307e\u3057\u305f\u3002 crsreader.datedetected = \u65e5\u4ed8\u3092\u691c\u51fa\u3057\u307e\u3057\u305f\u3002
crsreader.caldetected = \u30ab\u30ec\u30f3\u30c0\u3092\u691c\u51fa\u3057\u307e\u3057\u305f\u3002 crsreader.caldetected = \u30ab\u30ec\u30f3\u30c0\u3092\u691c\u51fa\u3057\u307e\u3057\u305f\u3002
...@@ -126,7 +125,7 @@ crswriter.connect = \u63a5\u7d9a\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093 ...@@ -126,7 +125,7 @@ crswriter.connect = \u63a5\u7d9a\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093
crswriter.tname = writeData \u304c\u8868\u540d\u3092\u5224\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 crswriter.tname = writeData \u304c\u8868\u540d\u3092\u5224\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002
crswriter.params1 = params1 \u306e\u5024 : {0} crswriter.params1 = params1 \u306e\u5024 : {0}
crswriter.params2 = params2 \u306e\u5024 : {0} crswriter.params2 = params2 \u306e\u5024 : {0}
crswriter.conflictsno = \u540c\u671f\u4e2d\u306b\u885d\u7a81\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 crswriter.conflictsno = \u540c\u671f\u4e2d\u306b\u7af6\u5408\u304c\u767a\u751f\u3057\u307e\u3059\u3002
#InsertRow exceptions #InsertRow exceptions
insertrow.novalue = \u5024\u306f\u633f\u5165\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 insertrow.novalue = \u5024\u306f\u633f\u5165\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = \u89e3\u6c7a\u3055\u308c\u308b\u5024\u306f\u30c7\u30fc\u30 ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = \u89e3\u6c7a\u3055\u308c\u308b\u5024\u306f\u30c7\u30fc\u30
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = RowSet \u306e\u6700\u5f8c\u306b\u5230\u9054\u3057\u307e\u3057\u305f\u3002\u7121\u52b9\u306a\u30ab\u30fc\u30bd\u30eb\u4f4d\u7f6e wrsxmlreader.invalidcp = RowSet \u306e\u6700\u5f8c\u306b\u5230\u9054\u3057\u307e\u3057\u305f\u3002\u7121\u52b9\u306a\u30ab\u30fc\u30bd\u30eb\u4f4d\u7f6e
wrsxmlreader.readxml = readXML : {0} wrsxmlreader.readxml = readXML : {0}
wrsxmlreader.parseerr = ** \u69cb\u6587\u89e3\u6790\u30a8\u30e9\u30fc wrsxmlreader.parseerr = ** \u89e3\u6790\u30a8\u30e9\u30fc : {0} , \u884c : {1} , URI : {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException : {0} wrsxmlwriter.ioex = IOException : {0}
...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = \u9069\u5207\u306a\u578b\u3067\u306f\u3042\u308a\u307e\ ...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = \u9069\u5207\u306a\u578b\u3067\u306f\u3042\u308a\u307e\
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = Map \u8a2d\u5b9a\u30a8\u30e9\u30fc : {0} xmlrch.errmap = Map \u8a2d\u5b9a\u30a8\u30e9\u30fc : {0}
xmlrch.errmetadata = \u30e1\u30bf\u30c7\u30fc\u30bf\u8a2d\u5b9a\u30a8\u30e9\u30fc : {0} xmlrch.errmetadata = \u30e1\u30bf\u30c7\u30fc\u30bf\u8a2d\u5b9a\u30a8\u30e9\u30fc : {0}
xmlrch.errinsert = \u5024\u306e\u633f\u5165\u30a8\u30e9\u30fc : {0} xmlrch.errinsertval = \u5024\u306e\u633f\u5165\u30a8\u30e9\u30fc : {0}
xmlrch.errconstr = \u884c\u306e\u751f\u6210\u30a8\u30e9\u30fc : {0} xmlrch.errconstr = \u884c\u306e\u751f\u6210\u30a8\u30e9\u30fc : {0}
xmlrch.errdel = \u884c\u306e\u524a\u9664\u30a8\u30e9\u30fc : {0} xmlrch.errdel = \u884c\u306e\u524a\u9664\u30a8\u30e9\u30fc : {0}
xmlrch.errinsert = \u633f\u5165\u884c\u306e\u751f\u6210\u30a8\u30e9\u30fc : {0}
xmlrch.errinsdel = insdel \u884c\u306e\u751f\u6210\u30a8\u30e9\u30fc : {0} xmlrch.errinsdel = insdel \u884c\u306e\u751f\u6210\u30a8\u30e9\u30fc : {0}
xmlrch.errupdate = \u66f4\u65b0\u884c\u306e\u751f\u6210\u30a8\u30e9\u30fc : {0} xmlrch.errupdate = \u66f4\u65b0\u884c\u306e\u751f\u6210\u30a8\u30e9\u30fc : {0}
xmlrch.errupdrow = \u884c\u306e\u66f4\u65b0\u30a8\u30e9\u30fc: {0} xmlrch.errupdrow = \u884c\u306e\u66f4\u65b0\u30a8\u30e9\u30fc : {0}
xmlrch.chars = \u6587\u5b57 : xmlrch.chars = \u6587\u5b57 :
xmlrch.badvalue = \u4e0d\u6b63\u306a\u5024 ; null \u306b\u3067\u304d\u306a\u3044\u30d7\u30ed\u30d1\u30c6\u30a3\u30fc xmlrch.badvalue = \u4e0d\u6b63\u306a\u5024 ; null \u306b\u3067\u304d\u306a\u3044\u30d7\u30ed\u30d1\u30c6\u30a3
xmlrch.badvalue1 = \u4e0d\u6b63\u306a\u5024 ; null \u306b\u3067\u304d\u306a\u3044\u30e1\u30bf\u30c7\u30fc\u30bf xmlrch.badvalue1 = \u4e0d\u6b63\u306a\u5024 ; null \u306b\u3067\u304d\u306a\u3044\u30e1\u30bf\u30c7\u30fc\u30bf
xmlrch.warning = ** \u8b66\u544a xmlrch.warning = ** \u8b66\u544a : {0} , \u884c : {1} , URI : {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = \u30ed\u30c3\u30af\u306e\u5206\u985e\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 riop.locking = \u30ed\u30c3\u30af\u306e\u5206\u985e\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002
......
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: \uba54\ud0c0 \ub370\uc774\ud130\u ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: \uba54\ud0c0 \ub370\uc774\ud130\u
cachedrowsetimpl.movetoins2 = moveToInsertRow: \uc798\ubabb\ub41c \uc5f4 \uac1c\uc218\uc785\ub2c8\ub2e4. cachedrowsetimpl.movetoins2 = moveToInsertRow: \uc798\ubabb\ub41c \uc5f4 \uac1c\uc218\uc785\ub2c8\ub2e4.
cachedrowsetimpl.tablename = \ud14c\uc774\ube14 \uc774\ub984\uc740 \ub110\uc77c \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. cachedrowsetimpl.tablename = \ud14c\uc774\ube14 \uc774\ub984\uc740 \ub110\uc77c \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
cachedrowsetimpl.keycols = \uc798\ubabb\ub41c \ud0a4 \uc5f4\uc785\ub2c8\ub2e4. cachedrowsetimpl.keycols = \uc798\ubabb\ub41c \ud0a4 \uc5f4\uc785\ub2c8\ub2e4.
cachedrowsetimpl.invalidcol = \uc798\ubabb\ub41c \uc5f4 \uc0c9\uc778\uc785\ub2c8\ub2e4.
cachedrowsetimpl.opnotsupp = \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0\uc11c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \uc791\uc5c5\uc785\ub2c8\ub2e4. cachedrowsetimpl.opnotsupp = \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0\uc11c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \uc791\uc5c5\uc785\ub2c8\ub2e4.
cachedrowsetimpl.matchcols = \uc77c\uce58 \uc5f4\uc774 \uc124\uc815\ub41c \uc5f4\uacfc \uac19\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. cachedrowsetimpl.matchcols = \uc77c\uce58 \uc5f4\uc774 \uc124\uc815\ub41c \uc5f4\uacfc \uac19\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
cachedrowsetimpl.setmatchcols = \uc77c\uce58 \uc5f4\uc744 \uc124\uc815\ud55c \ub2e4\uc74c\uc5d0 \uac00\uc838\uc624\uc2ed\uc2dc\uc624. cachedrowsetimpl.setmatchcols = \uc77c\uce58 \uc5f4\uc744 \uc124\uc815\ud55c \ub2e4\uc74c\uc5d0 \uac00\uc838\uc624\uc2ed\uc2dc\uc624.
...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = \ud398\uc774\uc9c0 \ud06c\uae30\ub294 0\ubcf4\ub2e4 ...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = \ud398\uc774\uc9c0 \ud06c\uae30\ub294 0\ubcf4\ub2e4
cachedrowsetimpl.pagesize1 = \ud398\uc774\uc9c0 \ud06c\uae30\ub294 maxRows\ubcf4\ub2e4 \ud074 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. cachedrowsetimpl.pagesize1 = \ud398\uc774\uc9c0 \ud06c\uae30\ub294 maxRows\ubcf4\ub2e4 \ud074 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
cachedrowsetimpl.fwdonly = ResultSet\ub294 \uc804\ub2ec \uc804\uc6a9\uc785\ub2c8\ub2e4. cachedrowsetimpl.fwdonly = ResultSet\ub294 \uc804\ub2ec \uc804\uc6a9\uc785\ub2c8\ub2e4.
cachedrowsetimpl.type = \uc720\ud615: {0} cachedrowsetimpl.type = \uc720\ud615: {0}
cachedrowsetimpl.opnotysupp = \uc791\uc5c5\uc774 \uc544\uc9c1 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. cachedrowsetimpl.opnotysupp = \uc791\uc5c5\uc774 \uc544\uc9c1 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc74c
cachedrowsetimpl.featnotsupp = \uae30\ub2a5\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. cachedrowsetimpl.featnotsupp = \uae30\ub2a5\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc74c
# WebRowSetImpl exceptions # WebRowSetImpl exceptions
webrowsetimpl.nullhash = WebRowSetImpl \uc778\uc2a4\ud134\uc2a4\ub97c \uc778\uc2a4\ud134\uc2a4\ud654\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uad6c\uc131\uc790\uc5d0 \ub110 Hashtable\uc774 \uc81c\uacf5\ub418\uc5c8\uc2b5\ub2c8\ub2e4. webrowsetimpl.nullhash = WebRowSetImpl \uc778\uc2a4\ud134\uc2a4\ub97c \uc778\uc2a4\ud134\uc2a4\ud654\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uad6c\uc131\uc790\uc5d0 \ub110 Hashtable\uc774 \uc81c\uacf5\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = \uc815\uc758\ub41c \uacb0\ud569 \uc720\ud615\uc774 \ ...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = \uc815\uc758\ub41c \uacb0\ud569 \uc720\ud615\uc774 \
joinrowsetimpl.notsupported = \uc774 \uacb0\ud569 \uc720\ud615\uc740 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. joinrowsetimpl.notsupported = \uc774 \uacb0\ud569 \uc720\ud615\uc740 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
joinrowsetimpl.initerror = JoinRowSet \ucd08\uae30\ud654 \uc624\ub958 joinrowsetimpl.initerror = JoinRowSet \ucd08\uae30\ud654 \uc624\ub958
joinrowsetimpl.genericerr = \uc77c\ubc18 joinrowset \ucd08\uae30 \uc624\ub958 joinrowsetimpl.genericerr = \uc77c\ubc18 joinrowset \ucd08\uae30 \uc624\ub958
joinrowsetimpl.emptyrowset = \uc774 JoinRowSet\uc5d0 \ube48 rowset\uc744 \ucd94\uac00\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. joinrowsetimpl.emptyrowset = \ube48 rowset\uc744 \uc774 JoinRowSet\uc5d0 \ucd94\uac00\ud560 \uc218 \uc5c6\uc74c
#JdbcRowSetImpl exceptions #JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = \uc798\ubabb\ub41c \uc0c1\ud0dc\uc785\ub2c8\ub2e4. jdbcrowsetimpl.invalstate = \uc798\ubabb\ub41c \uc0c1\ud0dc\uc785\ub2c8\ub2e4.
...@@ -111,22 +110,22 @@ jdbcrowsetimpl.unsetmatch = \uc124\uc815 \ud574\uc81c\ud560 \uc5f4\uc774 \uc124\ ...@@ -111,22 +110,22 @@ jdbcrowsetimpl.unsetmatch = \uc124\uc815 \ud574\uc81c\ud560 \uc5f4\uc774 \uc124\
jdbcrowsetimpl.usecolname = \uc5f4 \uc774\ub984\uc744 unsetMatchColumn\uc758 \uc778\uc218\ub85c \uc0ac\uc6a9\ud558\uc2ed\uc2dc\uc624. jdbcrowsetimpl.usecolname = \uc5f4 \uc774\ub984\uc744 unsetMatchColumn\uc758 \uc778\uc218\ub85c \uc0ac\uc6a9\ud558\uc2ed\uc2dc\uc624.
jdbcrowsetimpl.usecolid = \uc5f4 ID\ub97c unsetMatchColumn\uc758 \uc778\uc218\ub85c \uc0ac\uc6a9\ud558\uc2ed\uc2dc\uc624. jdbcrowsetimpl.usecolid = \uc5f4 ID\ub97c unsetMatchColumn\uc758 \uc778\uc218\ub85c \uc0ac\uc6a9\ud558\uc2ed\uc2dc\uc624.
jdbcrowsetimpl.resnotupd = ResultSet\uc740 \uc5c5\ub370\uc774\ud2b8\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. jdbcrowsetimpl.resnotupd = ResultSet\uc740 \uc5c5\ub370\uc774\ud2b8\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
jdbcrowsetimpl.opnotysupp = \uc791\uc5c5\uc774 \uc544\uc9c1 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. jdbcrowsetimpl.opnotysupp = \uc791\uc5c5\uc774 \uc544\uc9c1 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc74c
jdbcrowsetimpl.featnotsupp = \uae30\ub2a5\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. jdbcrowsetimpl.featnotsupp = \uae30\ub2a5\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc74c
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = (JNDI) \uc5f0\uacb0\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. crsreader.connect = (JNDI) \uc5f0\uacb0\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
crsreader.paramtype = \ub9e4\uac1c \ubcc0\uc218 \uc720\ud615\uc744 \ucd94\ub860\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. crsreader.paramtype = \ub9e4\uac1c \ubcc0\uc218 \uc720\ud615\uc744 \ucd94\ub860\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
crsreader.connecterr = RowSetReader \ub0b4\ubd80 \uc624\ub958: \uc5f0\uacb0 \ub610\ub294 \uba85\ub839\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. crsreader.connecterr = RowSetReader\uc758 \ub0b4\ubd80 \uc624\ub958: \uc5f0\uacb0 \ub610\ub294 \uba85\ub839\uc774 \uc5c6\uc74c
crsreader.datedetected = \ub0a0\uc9dc\uac00 \uac10\uc9c0\ub418\uc5c8\uc2b5\ub2c8\ub2e4. crsreader.datedetected = \ub0a0\uc9dc\uac00 \uac10\uc9c0\ub428
crsreader.caldetected = \ub2ec\ub825\uc774 \uac10\uc9c0\ub418\uc5c8\uc2b5\ub2c8\ub2e4. crsreader.caldetected = \ub2ec\ub825\uc774 \uac10\uc9c0\ub428
#CachedRowSetWriter exceptions #CachedRowSetWriter exceptions
crswriter.connect = \uc5f0\uacb0\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. crswriter.connect = \uc5f0\uacb0\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
crswriter.tname = writeData\uc5d0\uc11c \ud14c\uc774\ube14 \uc774\ub984\uc744 \ud655\uc778\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. crswriter.tname = writeData\uc5d0\uc11c \ud14c\uc774\ube14 \uc774\ub984\uc744 \ud655\uc778\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
crswriter.params1 = params1\uc758 \uac12: {0} crswriter.params1 = params1\uc758 \uac12: {0}
crswriter.params2 = params2\uc758 \uac12: {0} crswriter.params2 = params2\uc758 \uac12: {0}
crswriter.conflictsno = \ub3d9\uae30\ud654\ud558\ub294 \ub3d9\uc548 \ucda9\ub3cc\ud569\ub2c8\ub2e4. crswriter.conflictsno = \ub3d9\uae30\ud654\ud558\ub294 \ub3d9\uc548 \ucda9\ub3cc\ud568
#InsertRow exceptions #InsertRow exceptions
insertrow.novalue = \uac12\uc774 \uc0bd\uc785\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4. insertrow.novalue = \uac12\uc774 \uc0bd\uc785\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4.
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = \ud655\uc778\ud560 \uac12\uc774 \ub370\uc774\ud130\ubca0\u ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = \ud655\uc778\ud560 \uac12\uc774 \ub370\uc774\ud130\ubca0\u
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = RowSet\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uc2b5\ub2c8\ub2e4. \uc798\ubabb\ub41c \ucee4\uc11c \uc704\uce58\uc785\ub2c8\ub2e4. wrsxmlreader.invalidcp = RowSet\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uc2b5\ub2c8\ub2e4. \uc798\ubabb\ub41c \ucee4\uc11c \uc704\uce58\uc785\ub2c8\ub2e4.
wrsxmlreader.readxml = readXML: {0} wrsxmlreader.readxml = readXML: {0}
wrsxmlreader.parseerr = ** \uad6c\ubb38 \ubd84\uc11d \uc624\ub958 wrsxmlreader.parseerr = ** \uad6c\ubb38 \ubd84\uc11d \uc624\ub958 : {0} , \ud589 : {1} , uri : {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException: {0} wrsxmlwriter.ioex = IOException: {0}
...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = \uc62c\ubc14\ub978 \uc720\ud615\uc774 \uc544\ub2d9\ub2c ...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = \uc62c\ubc14\ub978 \uc720\ud615\uc774 \uc544\ub2d9\ub2c
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = \ub9e4\ud551\uc744 \uc124\uc815\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0} xmlrch.errmap = \ub9e4\ud551\uc744 \uc124\uc815\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0}
xmlrch.errmetadata = \uba54\ud0c0\ub370\uc774\ud130\ub97c \uc124\uc815\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0} xmlrch.errmetadata = \uba54\ud0c0\ub370\uc774\ud130\ub97c \uc124\uc815\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0}
xmlrch.errinsert = \ub2e4\uc74c \uac12\uc744 \uc0bd\uc785\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd : {0} xmlrch.errinsertval = \ub2e4\uc74c \uac12\uc744 \uc0bd\uc785\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd : {0}
xmlrch.errconstr = \ud589\uc744 \ub9cc\ub4dc\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0} xmlrch.errconstr = \ud589\uc744 \ub9cc\ub4dc\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0}
xmlrch.errdel = \ud589\uc744 \uc81c\uac70\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0} xmlrch.errdel = \ud589\uc744 \uc81c\uac70\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0}
xmlrch.errinsert = insert \ud589\uc744 \ub9cc\ub4dc\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0}
xmlrch.errinsdel = insdel \ud589\uc744 \ub9cc\ub4dc\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0} xmlrch.errinsdel = insdel \ud589\uc744 \ub9cc\ub4dc\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0}
xmlrch.errupdate = update \ud589\uc744 \ub9cc\ub4dc\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0} xmlrch.errupdate = update \ud589\uc744 \ub9cc\ub4dc\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd: {0}
xmlrch.errupdrow = \ud589 \uc5c5\ub370\uc774\ud2b8 \uc624\ub958: {0} xmlrch.errupdrow = \ub2e4\uc74c \ud589\uc744 \uc5c5\ub370\uc774\ud2b8\ud558\ub294 \uc911 \uc624\ub958 \ubc1c\uc0dd : {0}
xmlrch.chars = \ubb38\uc790: xmlrch.chars = \ubb38\uc790:
xmlrch.badvalue = \uc798\ubabb\ub41c \uac12; \ub110\uc77c \uc218 \uc5c6\ub294 \ub4f1\ub85d \uc815\ubcf4 xmlrch.badvalue = \uc798\ubabb\ub41c \uac12; \ub110\uc77c \uc218 \uc5c6\ub294 \ub4f1\ub85d \uc815\ubcf4
xmlrch.badvalue1 = \uc798\ubabb\ub41c \uac12; \ub110\uc77c \uc218 \uc5c6\ub294 \uba54\ud0c0\ub370\uc774\ud130 xmlrch.badvalue1 = \uc798\ubabb\ub41c \uac12; \ub110\uc77c \uc218 \uc5c6\ub294 \uba54\ud0c0\ub370\uc774\ud130
xmlrch.warning = ** \uacbd\uace0 xmlrch.warning = ** \uacbd\uace0 : {0} , \ud589 : {1} , uri : {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = \ub4f1\uae09 \uc7a0\uae08\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. riop.locking = \ub4f1\uae09 \uc7a0\uae08\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
......
#
# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
# CacheRowSetImpl exceptions
cachedrowsetimpl.populate = Objeto ResultSet inv\u00e1lido fornecido para preencher o m\u00e9todo
cachedrowsetimpl.invalidp = Fornecedor de persist\u00eancias inv\u00e1lido gerado
cachedrowsetimpl.nullhash = N\u00e3o \u00e9 poss\u00edvel instanciar a inst\u00e2ncia CachedRowSetImpl. Hashtable nulo fornecido ao construtor
cachedrowsetimpl.invalidop = Opera\u00e7\u00e3o inv\u00e1lida durante a inser\u00e7\u00e3o de linha
cachedrowsetimpl.accfailed = acceptChanges falho
cachedrowsetimpl.invalidcp = Posi\u00e7\u00e3o inv\u00e1lida do cursor
cachedrowsetimpl.illegalop = Opera\u00e7\u00e3o ilegal em linha n\u00e3o inserida
cachedrowsetimpl.clonefail = Clone falho: {0}
cachedrowsetimpl.invalidcol = \u00cdndice de coluna inv\u00e1lido
cachedrowsetimpl.invalcolnm = Nome de coluna inv\u00e1lido
cachedrowsetimpl.boolfail = getBoolen falhou no valor ( {0} ) na coluna {1}
cachedrowsetimpl.bytefail = getByte falhou no valor ( {0} ) na coluna {1}
cachedrowsetimpl.shortfail = getShort falhou no valor ( {0} ) na coluna {1}
cachedrowsetimpl.intfail = getInt falhou no valor ( {0} ) na coluna {1}
cachedrowsetimpl.longfail = getLong falhou no valor ( {0} ) na coluna {1}
cachedrowsetimpl.floatfail = getFloat falhou no valor ( {0} ) na coluna {1}
cachedrowsetimpl.doublefail = getDouble falhou no valor ( {0} ) na coluna {1}
cachedrowsetimpl.dtypemismt = Tipo de dados incompat\u00edvel
cachedrowsetimpl.datefail = getDate falhou no valor ( {0} ) na coluna {1} sem convers\u00e3o dispon\u00edvel
cachedrowsetimpl.timefail = getTime falhou no valor ( {0} ) na coluna {1} sem convers\u00e3o dispon\u00edvel
cachedrowsetimpl.posupdate = Atualiza\u00e7\u00f5es posicionadas n\u00e3o suportadas
cachedrowsetimpl.unableins = N\u00e3o \u00e9 poss\u00edvel instanciar: {0}
cachedrowsetimpl.beforefirst = beforeFirst : posi\u00e7\u00e3o inv\u00e1lida do cursor
cachedrowsetimpl.first = First : opera\u00e7\u00e3o inv\u00e1lida do cursor
cachedrowsetimpl.last = last : TYPE_FORWARD_ONLY
cachedrowsetimpl.absolute = absolute : posi\u00e7\u00e3o inv\u00e1lida do cursor
cachedrowsetimpl.relative = relative : posi\u00e7\u00e3o inv\u00e1lida do cursor
cachedrowsetimpl.asciistream = leitura falha do fluxo ascii
cachedrowsetimpl.binstream = leitura falha em fluxo bin\u00e1rio
cachedrowsetimpl.failedins = Falha ao inserir linha
cachedrowsetimpl.updateins = updateRow chamado durante a inser\u00e7\u00e3o de linha
cachedrowsetimpl.movetoins = moveToInsertRow : CONCUR_READ_ONLY
cachedrowsetimpl.movetoins1 = moveToInsertRow : sem metadados
cachedrowsetimpl.movetoins2 = moveToInsertRow : n\u00famero de colunas inv\u00e1lido
cachedrowsetimpl.tablename = O nome da tabela n\u00e3o pode ser nulo
cachedrowsetimpl.keycols = Colunas de chaves inv\u00e1lidas
cachedrowsetimpl.invalidcol = \u00cdndice de coluna inv\u00e1lido
cachedrowsetimpl.opnotsupp = Opera\u00e7\u00e3o n\u00e3o suportada pelo banco de dados
cachedrowsetimpl.matchcols = As colunas correspondentes n\u00e3o s\u00e3o iguais \u00e0s colunas definidas
cachedrowsetimpl.setmatchcols = Definir colunas correspondentes antes de obt\u00ea-las
cachedrowsetimpl.matchcols1 = As colunas correspondentes devem ser maior do que 0
cachedrowsetimpl.matchcols2 = As colunas correspondentes devem ser sequ\u00eancias vazias ou nulas
cachedrowsetimpl.unsetmatch = As colunas n\u00e3o definidas n\u00e3o s\u00e3o iguais \u00e0s colunas definidas
cachedrowsetimpl.unsetmatch1 = Usar o nome da coluna como argumento para unsetMatchColumn
cachedrowsetimpl.unsetmatch2 = Usar o ID da coluna como argumento para unsetMatchColumn
cachedrowsetimpl.numrows = O n\u00famero de linhas \u00e9 menor do que zero ou menor do que o tamanho obtido
cachedrowsetimpl.startpos = A posi\u00e7\u00e3o de in\u00edcio n\u00e3o pode ser negativa
cachedrowsetimpl.nextpage = Preencher dados antes de chamar
cachedrowsetimpl.pagesize = O tamanho da p\u00e1gina n\u00e3o pode ser menor do que zero
cachedrowsetimpl.pagesize1 = O tamanho da p\u00e1gina n\u00e3o pode ser maior do que maxRows
cachedrowsetimpl.fwdonly = ResultSet \u00e9 somente para frente
cachedrowsetimpl.type = O tipo \u00e9 : {0}
cachedrowsetimpl.opnotysupp = Opera\u00e7\u00e3o ainda n\u00e3o suportada
cachedrowsetimpl.featnotsupp = Recurso n\u00e3o suportado
# WebRowSetImpl exceptions
webrowsetimpl.nullhash = N\u00e3o \u00e9 poss\u00edvel instanciar a inst\u00e2ncia WebRowSetImpl. Hashtable nulo fornecido ao construtor
webrowsetimpl.invalidwr = Gravador inv\u00e1lido
webrowsetimpl.invalidrd = Leitor inv\u00e1lido
#FilteredRowSetImpl exceptions
filteredrowsetimpl.relative = relative : opera\u00e7\u00e3o inv\u00e1lida do cursor
filteredrowsetimpl.absolute = absolute : opera\u00e7\u00e3o inv\u00e1lida do cursor
filteredrowsetimpl.notallowed = Este valor n\u00e3o \u00e9 permitido no filtro
#JoinRowSetImpl exceptions
joinrowsetimpl.notinstance = N\u00e3o \u00e9 uma inst\u00e2ncia do conjunto de linhas
joinrowsetimpl.matchnotset = Coluna correspondente n\u00e3o definida para jun\u00e7\u00e3o
joinrowsetimpl.numnotequal = N\u00famero de elementos no conjunto de linhas diferente da coluna correspondente
joinrowsetimpl.notdefined = N\u00e3o \u00e9 um tipo definido de jun\u00e7\u00e3o
joinrowsetimpl.notsupported = Este tipo de jun\u00e7\u00e3o n\u00e3o \u00e9 suportada
joinrowsetimpl.initerror = Erro de inicializa\u00e7\u00e3o do JoinRowSet
joinrowsetimpl.genericerr = Erro inicial de joinrowset gen\u00e9rico
joinrowsetimpl.emptyrowset = O conjunto de linha vazio n\u00e3o pode ser adicionado a este JoinRowSet
#JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = Estado inv\u00e1lido
jdbcrowsetimpl.connect = N\u00e3o \u00e9 poss\u00edvel conectar JdbcRowSet (connect) a JNDI
jdbcrowsetimpl.paramtype = N\u00e3o \u00e9 poss\u00edvel deduzir o tipo de par\u00e2metro
jdbcrowsetimpl.matchcols = As colunas correspondentes n\u00e3o s\u00e3o iguais \u00e0s colunas definidas
jdbcrowsetimpl.setmatchcols = Definir as colunas correspondentes antes de obt\u00ea-las
jdbcrowsetimpl.matchcols1 = As colunas correspondentes devem ser maior do que 0
jdbcrowsetimpl.matchcols2 = As colunas correspondentes n\u00e3o podem ser sequ\u00eancias vazias ou nulas
jdbcrowsetimpl.unsetmatch = As colunas n\u00e3o definidas n\u00e3o s\u00e3o iguais \u00e0s colunas definidas
jdbcrowsetimpl.usecolname = Usar o nome da coluna como argumento para unsetMatchColumn
jdbcrowsetimpl.usecolid = Usar o ID da coluna como argumento para unsetMatchColumn
jdbcrowsetimpl.resnotupd = ResultSet n\u00e3o \u00e9 atualiz\u00e1vel
jdbcrowsetimpl.opnotysupp = Opera\u00e7\u00e3o ainda n\u00e3o suportada
jdbcrowsetimpl.featnotsupp = Recurso n\u00e3o suportado
#CachedRowSetReader exceptions
crsreader.connect = (JNDI) N\u00e3o \u00e9 poss\u00edvel conectar
crsreader.paramtype = N\u00e3o \u00e9 poss\u00edvel deduzir o tipo de par\u00e2metro
crsreader.connecterr = Erro interno no RowSetReader: sem conex\u00e3o ou comando
crsreader.datedetected = Data detectada
crsreader.caldetected = Calend\u00e1rio detectado
#CachedRowSetWriter exceptions
crswriter.connect = N\u00e3o \u00e9 poss\u00edvel obter a conex\u00e3o
crswriter.tname = writeData n\u00e3o pode determinar o nome da tabela
crswriter.params1 = Valor de params1 : {0}
crswriter.params2 = Valor de params2 : {0}
crswriter.conflictsno = conflitos durante a sincroniza\u00e7\u00e3o
#InsertRow exceptions
insertrow.novalue = Nenhum valor foi inserido
#SyncResolverImpl exceptions
syncrsimpl.indexval = Valor de \u00edndice fora do intervalo
syncrsimpl.noconflict = Est\u00e1 coluna n\u00e3o est\u00e1 em conflito
syncrsimpl.syncnotpos = A sincroniza\u00e7\u00e3o n\u00e3o \u00e9 poss\u00edvel
syncrsimpl.valtores = O valor a ser decidido pode estar no banco de dados ou no conjunto de linhas armazenado em cache
#WebRowSetXmlReader exception
wrsxmlreader.invalidcp = Fim de RowSet atingido. Posi\u00e7\u00e3o inv\u00e1lida do cursor
wrsxmlreader.readxml = readXML : {0}
wrsxmlreader.parseerr = ** Analisando erro : {0} , linha : {1} , uri : {2}
#WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException : {0}
wrsxmlwriter.sqlex = SQLException : {0}
wrsxmlwriter.failedwrite = Falha ao gravar valor
wsrxmlwriter.notproper = N\u00e3o \u00e9 um tipo adequado
#XmlReaderContentHandler exceptions
xmlrch.errmap = Erro ao definir mapa : {0}
xmlrch.errmetadata = Erro ao definir metadados : {0}
xmlrch.errinsertval = Erro ao inserir valores : {0}
xmlrch.errconstr = Erro ao construir linha : {0}
xmlrch.errdel = Erro ao excluir linha : {0}
xmlrch.errinsert = Erro ao construir linha de inser\u00e7\u00e3o : {0}
xmlrch.errinsdel = Erro ao construir linha insdel : {0}
xmlrch.errupdate = Erro ao construir linha de atualiza\u00e7\u00e3o : {0}
xmlrch.errupdrow = Erro ao atualizar linha : {0}
xmlrch.chars = caracteres :
xmlrch.badvalue = Valor incorreto ; propriedade n\u00e3o anul\u00e1vel
xmlrch.badvalue1 = Valor incorreto ; metadado n\u00e3o anul\u00e1vel
xmlrch.warning = ** Aviso : {0} , linha : {1} , uri : {2}
#RIOptimisticProvider Exceptions
riop.locking = O bloqueio de classifica\u00e7\u00e3o n\u00e3o \u00e9 suportado
#RIXMLProvider exceptions
rixml.unsupp = N\u00e3o suportado com RIXMLProvider
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: inga metadata ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: inga metadata
cachedrowsetimpl.movetoins2 = moveToInsertRow: ogiltigt antal kolumner cachedrowsetimpl.movetoins2 = moveToInsertRow: ogiltigt antal kolumner
cachedrowsetimpl.tablename = Tabellnamnet kan inte vara tomt cachedrowsetimpl.tablename = Tabellnamnet kan inte vara tomt
cachedrowsetimpl.keycols = Ogiltiga nyckelkolumner cachedrowsetimpl.keycols = Ogiltiga nyckelkolumner
cachedrowsetimpl.invalidcol = Kolumnindexet \u00e4r ogiltigt
cachedrowsetimpl.opnotsupp = Databasen har inte st\u00f6d f\u00f6r denna \u00e5tg\u00e4rd cachedrowsetimpl.opnotsupp = Databasen har inte st\u00f6d f\u00f6r denna \u00e5tg\u00e4rd
cachedrowsetimpl.matchcols = Matchningskolumnerna \u00e4r inte samma som de som st\u00e4llts in cachedrowsetimpl.matchcols = Matchningskolumnerna \u00e4r inte samma som de som st\u00e4llts in
cachedrowsetimpl.setmatchcols = St\u00e4ll in matchningskolumnerna innan du h\u00e4mtar dem cachedrowsetimpl.setmatchcols = St\u00e4ll in matchningskolumnerna innan du h\u00e4mtar dem
...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = Sidstorleken f\u00e5r inte understiga noll ...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = Sidstorleken f\u00e5r inte understiga noll
cachedrowsetimpl.pagesize1 = Sidstorleken f\u00e5r inte \u00f6verstiga maxRows cachedrowsetimpl.pagesize1 = Sidstorleken f\u00e5r inte \u00f6verstiga maxRows
cachedrowsetimpl.fwdonly = ResultSet kan endast g\u00e5 fram\u00e5t cachedrowsetimpl.fwdonly = ResultSet kan endast g\u00e5 fram\u00e5t
cachedrowsetimpl.type = Typ: {0} cachedrowsetimpl.type = Typ: {0}
cachedrowsetimpl.opnotysupp = Det finns \u00e4nnu inte st\u00f6d f\u00f6r \u00e5tg\u00e4rden cachedrowsetimpl.opnotysupp = Det finns \u00e4nnu inget st\u00f6d f\u00f6r denna \u00e5tg\u00e4rd
cachedrowsetimpl.featnotsupp = Funktionen st\u00f6ds inte cachedrowsetimpl.featnotsupp = Det finns inget st\u00f6d f\u00f6r denna funktion
# WebRowSetImpl exceptions # WebRowSetImpl exceptions
webrowsetimpl.nullhash = Det g\u00e5r inte att skapa instansen WebRowSetImpl. Tom hashtabell skickades till konstrukt\u00f6r. webrowsetimpl.nullhash = Det g\u00e5r inte att skapa instansen WebRowSetImpl. Tom hashtabell skickades till konstrukt\u00f6r.
...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = Detta \u00e4r inte n\u00e5gon definierad kopplingsty ...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = Detta \u00e4r inte n\u00e5gon definierad kopplingsty
joinrowsetimpl.notsupported = Det finns inget st\u00f6d f\u00f6r denna kopplingstyp joinrowsetimpl.notsupported = Det finns inget st\u00f6d f\u00f6r denna kopplingstyp
joinrowsetimpl.initerror = Initieringsfel f\u00f6r JoinRowSet joinrowsetimpl.initerror = Initieringsfel f\u00f6r JoinRowSet
joinrowsetimpl.genericerr = Allm\u00e4nt initieringsfel f\u00f6r JoinRowSet joinrowsetimpl.genericerr = Allm\u00e4nt initieringsfel f\u00f6r JoinRowSet
joinrowsetimpl.emptyrowset = Det g\u00e5r inte att l\u00e4gga till tom rowset i denna JoinRowSet joinrowsetimpl.emptyrowset = Tomma radupps\u00e4ttningar kan inte l\u00e4ggas till i denna JoinRowSet
#JdbcRowSetImpl exceptions #JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = Ogiltig status jdbcrowsetimpl.invalstate = Ogiltig status
...@@ -111,22 +110,22 @@ jdbcrowsetimpl.unsetmatch = Kolumnerna som \u00e5terst\u00e4lls \u00e4r inte sam ...@@ -111,22 +110,22 @@ jdbcrowsetimpl.unsetmatch = Kolumnerna som \u00e5terst\u00e4lls \u00e4r inte sam
jdbcrowsetimpl.usecolname = Anv\u00e4nd kolumnnamn som argument f\u00f6r unsetMatchColumn jdbcrowsetimpl.usecolname = Anv\u00e4nd kolumnnamn som argument f\u00f6r unsetMatchColumn
jdbcrowsetimpl.usecolid = Anv\u00e4nd kolumnn-id som argument f\u00f6r unsetMatchColumn jdbcrowsetimpl.usecolid = Anv\u00e4nd kolumnn-id som argument f\u00f6r unsetMatchColumn
jdbcrowsetimpl.resnotupd = ResultSet \u00e4r inte uppdateringsbart jdbcrowsetimpl.resnotupd = ResultSet \u00e4r inte uppdateringsbart
jdbcrowsetimpl.opnotysupp = Det finns \u00e4nnu inte st\u00f6d f\u00f6r \u00e5tg\u00e4rden jdbcrowsetimpl.opnotysupp = Det finns \u00e4nnu inget st\u00f6d f\u00f6r denna \u00e5tg\u00e4rd
jdbcrowsetimpl.featnotsupp = Funktionen st\u00f6ds inte jdbcrowsetimpl.featnotsupp = Det finns inget st\u00f6d f\u00f6r denna funktion
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = (JNDI) kan inte anslutas crsreader.connect = (JNDI) kan inte anslutas
crsreader.paramtype = Det g\u00e5r inte att fastst\u00e4lla parametertypen crsreader.paramtype = Det g\u00e5r inte att fastst\u00e4lla parametertypen
crsreader.connecterr = Internfel i RowSetReader: ingen anslutning eller inget kommando crsreader.connecterr = Internt fel i RowSetReader: ingen anslutning eller inget kommando
crsreader.datedetected = Ett datum uppt\u00e4cktes crsreader.datedetected = Ett datum har identifierats
crsreader.caldetected = En kalender uppt\u00e4cktes crsreader.caldetected = En kalender har identifierats
#CachedRowSetWriter exceptions #CachedRowSetWriter exceptions
crswriter.connect = Det g\u00e5r inte att uppr\u00e4tta n\u00e5gon anslutning crswriter.connect = Det g\u00e5r inte att uppr\u00e4tta n\u00e5gon anslutning
crswriter.tname = writeData kan inte fastst\u00e4lla tabellnamnet crswriter.tname = writeData kan inte fastst\u00e4lla tabellnamnet
crswriter.params1 = Parameterv\u00e4rde1: {0} crswriter.params1 = Parameterv\u00e4rde1: {0}
crswriter.params2 = Parameterv\u00e4rde2: {0} crswriter.params2 = Parameterv\u00e4rde2: {0}
crswriter.conflictsno = konflikter uppstod vid synkronisering crswriter.conflictsno = konflikter under synkronisering
#InsertRow exceptions #InsertRow exceptions
insertrow.novalue = Inget v\u00e4rde har infogats insertrow.novalue = Inget v\u00e4rde har infogats
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = V\u00e4rdet som ska analyseras kan antingen finnas i datab ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = V\u00e4rdet som ska analyseras kan antingen finnas i datab
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = Slutet p\u00e5 RowSet har n\u00e5tts. Mark\u00f6rpositionen \u00e4r ogiltig. wrsxmlreader.invalidcp = Slutet p\u00e5 RowSet har n\u00e5tts. Mark\u00f6rpositionen \u00e4r ogiltig.
wrsxmlreader.readxml = readXML: {0} wrsxmlreader.readxml = readXML: {0}
wrsxmlreader.parseerr = ** Tolkningsfel wrsxmlreader.parseerr = ** Tolkningsfel: {0}, rad: {1}, URI: {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException: {0} wrsxmlwriter.ioex = IOException: {0}
...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = Ingen riktig typ ...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = Ingen riktig typ
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = Ett fel uppstod vid inst\u00e4llningen av f\u00f6ljande bild: {0} xmlrch.errmap = Ett fel uppstod vid inst\u00e4llningen av f\u00f6ljande bild: {0}
xmlrch.errmetadata = Ett fel uppstod vid inst\u00e4llningen av f\u00f6ljande metadata: {0} xmlrch.errmetadata = Ett fel uppstod vid inst\u00e4llningen av f\u00f6ljande metadata: {0}
xmlrch.errinsert = Ett fel uppstod n\u00e4r f\u00f6ljande v\u00e4rden skulle infogas: {0} xmlrch.errinsertval = Ett fel uppstod n\u00e4r f\u00f6ljande v\u00e4rden skulle infogas: {0}
xmlrch.errconstr = Ett fel uppstod n\u00e4r f\u00f6ljande rad skulle skapas: {0} xmlrch.errconstr = Ett fel uppstod n\u00e4r f\u00f6ljande rad skulle skapas: {0}
xmlrch.errdel = Ett fel uppstod n\u00e4r f\u00f6ljande rad skulle raderas: {0} xmlrch.errdel = Ett fel uppstod n\u00e4r f\u00f6ljande rad skulle raderas: {0}
xmlrch.errinsert = Ett fel uppstod n\u00e4r f\u00f6ljande infogningsrad skulle skapas: {0}
xmlrch.errinsdel = Ett fel uppstod n\u00e4r raden insdel skulle skapas: {0} xmlrch.errinsdel = Ett fel uppstod n\u00e4r raden insdel skulle skapas: {0}
xmlrch.errupdate = Ett fel uppstod n\u00e4r f\u00f6ljande uppdateringsrad skulle skapas: {0} xmlrch.errupdate = Ett fel uppstod n\u00e4r f\u00f6ljande uppdateringsrad skulle skapas: {0}
xmlrch.errupdrow = Det gick inte att uppdatera raden: {0} xmlrch.errupdrow = Ett fel uppstod n\u00e4r f\u00f6ljande rad skulle uppdateras: {0}
xmlrch.chars = tecken: xmlrch.chars = tecken:
xmlrch.badvalue = Felaktigt v\u00e4rde; egenskapen kan inte ha ett tomt v\u00e4rde xmlrch.badvalue = Felaktigt v\u00e4rde; egenskapen kan inte ha ett tomt v\u00e4rde
xmlrch.badvalue1 = Felaktigt v\u00e4rde; metadatan kan inte ha ett tomt v\u00e4rde xmlrch.badvalue1 = Felaktigt v\u00e4rde; metadatan kan inte ha ett tomt v\u00e4rde
xmlrch.warning = ** Varning! xmlrch.warning = ** Varning! {0}, rad: {1}, URI: {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = Det finns inte st\u00f6d f\u00f6r denna l\u00e5sningsklassifikation riop.locking = Det finns inte st\u00f6d f\u00f6r denna l\u00e5sningsklassifikation
......
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: \u65e0\u5143\u6570\u636e ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow: \u65e0\u5143\u6570\u636e
cachedrowsetimpl.movetoins2 = moveToInsertRow: \u5217\u6570\u65e0\u6548 cachedrowsetimpl.movetoins2 = moveToInsertRow: \u5217\u6570\u65e0\u6548
cachedrowsetimpl.tablename = \u8868\u540d\u4e0d\u80fd\u4e3a Null cachedrowsetimpl.tablename = \u8868\u540d\u4e0d\u80fd\u4e3a Null
cachedrowsetimpl.keycols = \u952e\u5217\u65e0\u6548 cachedrowsetimpl.keycols = \u952e\u5217\u65e0\u6548
cachedrowsetimpl.invalidcol = \u5217\u7d22\u5f15\u65e0\u6548
cachedrowsetimpl.opnotsupp = \u64cd\u4f5c\u4e0d\u53d7\u6570\u636e\u5e93\u652f\u6301 cachedrowsetimpl.opnotsupp = \u64cd\u4f5c\u4e0d\u53d7\u6570\u636e\u5e93\u652f\u6301
cachedrowsetimpl.matchcols = \u5339\u914d\u5217\u4e0e\u8bbe\u7f6e\u7684\u90a3\u4e9b\u5339\u914d\u5217\u4e0d\u540c cachedrowsetimpl.matchcols = \u5339\u914d\u5217\u4e0e\u8bbe\u7f6e\u7684\u90a3\u4e9b\u5339\u914d\u5217\u4e0d\u540c
cachedrowsetimpl.setmatchcols = \u5728\u83b7\u53d6\u5339\u914d\u5217\u4e4b\u524d\u5148\u8bbe\u7f6e\u5339\u914d\u5217 cachedrowsetimpl.setmatchcols = \u5728\u83b7\u53d6\u5339\u914d\u5217\u4e4b\u524d\u5148\u8bbe\u7f6e\u5339\u914d\u5217
...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = \u9875\u9762\u5927\u5c0f\u4e0d\u80fd\u5c0f\u4e8e\u96 ...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = \u9875\u9762\u5927\u5c0f\u4e0d\u80fd\u5c0f\u4e8e\u96
cachedrowsetimpl.pagesize1 = \u9875\u9762\u5927\u5c0f\u4e0d\u80fd\u5927\u4e8e maxRows cachedrowsetimpl.pagesize1 = \u9875\u9762\u5927\u5c0f\u4e0d\u80fd\u5927\u4e8e maxRows
cachedrowsetimpl.fwdonly = ResultSet \u7684\u7c7b\u578b\u4e3a\u4ec5\u5411\u524d\u7c7b\u578b cachedrowsetimpl.fwdonly = ResultSet \u7684\u7c7b\u578b\u4e3a\u4ec5\u5411\u524d\u7c7b\u578b
cachedrowsetimpl.type = \u7c7b\u578b\u4e3a: {0} cachedrowsetimpl.type = \u7c7b\u578b\u4e3a: {0}
cachedrowsetimpl.opnotysupp = \u5c1a\u4e0d\u652f\u6301\u64cd\u4f5c cachedrowsetimpl.opnotysupp = \u5c1a\u4e0d\u652f\u6301\u7684\u64cd\u4f5c
cachedrowsetimpl.featnotsupp = \u4e0d\u652f\u6301\u529f\u80fd cachedrowsetimpl.featnotsupp = \u5c1a\u4e0d\u652f\u6301\u7684\u529f\u80fd
# WebRowSetImpl exceptions # WebRowSetImpl exceptions
webrowsetimpl.nullhash = \u65e0\u6cd5\u5b9e\u4f8b\u5316 WebRowSetImpl \u5b9e\u4f8b\u3002\u63d0\u4f9b\u7ed9\u6784\u9020\u51fd\u6570\u7684 Hashtable \u4e3a Null webrowsetimpl.nullhash = \u65e0\u6cd5\u5b9e\u4f8b\u5316 WebRowSetImpl \u5b9e\u4f8b\u3002\u63d0\u4f9b\u7ed9\u6784\u9020\u51fd\u6570\u7684 Hashtable \u4e3a Null
...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = \u8fd9\u4e0d\u662f\u5b9a\u4e49\u7684\u8fde\u63a5\u7c ...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = \u8fd9\u4e0d\u662f\u5b9a\u4e49\u7684\u8fde\u63a5\u7c
joinrowsetimpl.notsupported = \u4e0d\u652f\u6301\u6b64\u8fde\u63a5\u7c7b\u578b joinrowsetimpl.notsupported = \u4e0d\u652f\u6301\u6b64\u8fde\u63a5\u7c7b\u578b
joinrowsetimpl.initerror = JoinRowSet \u521d\u59cb\u5316\u9519\u8bef joinrowsetimpl.initerror = JoinRowSet \u521d\u59cb\u5316\u9519\u8bef
joinrowsetimpl.genericerr = \u4e00\u822c JoinRowSet \u521d\u59cb\u5316\u9519\u8bef joinrowsetimpl.genericerr = \u4e00\u822c JoinRowSet \u521d\u59cb\u5316\u9519\u8bef
joinrowsetimpl.emptyrowset = \u65e0\u6cd5\u5c06\u7a7a\u7684 rowset \u6dfb\u52a0\u5230\u6b64 JoinRowSet joinrowsetimpl.emptyrowset = \u65e0\u6cd5\u5c06\u7a7a RowSet \u6dfb\u52a0\u5230\u6b64 JoinRowSet
#JdbcRowSetImpl exceptions #JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = \u72b6\u6001\u65e0\u6548 jdbcrowsetimpl.invalstate = \u72b6\u6001\u65e0\u6548
...@@ -111,13 +110,13 @@ jdbcrowsetimpl.unsetmatch = \u8981\u590d\u539f\u7684\u5217\u4e0e\u8bbe\u7f6e\u76 ...@@ -111,13 +110,13 @@ jdbcrowsetimpl.unsetmatch = \u8981\u590d\u539f\u7684\u5217\u4e0e\u8bbe\u7f6e\u76
jdbcrowsetimpl.usecolname = \u4f7f\u7528\u5217\u540d\u4f5c\u4e3a unsetMatchColumn \u7684\u53c2\u6570 jdbcrowsetimpl.usecolname = \u4f7f\u7528\u5217\u540d\u4f5c\u4e3a unsetMatchColumn \u7684\u53c2\u6570
jdbcrowsetimpl.usecolid = \u4f7f\u7528\u5217 ID \u4f5c\u4e3a unsetMatchColumn \u7684\u53c2\u6570 jdbcrowsetimpl.usecolid = \u4f7f\u7528\u5217 ID \u4f5c\u4e3a unsetMatchColumn \u7684\u53c2\u6570
jdbcrowsetimpl.resnotupd = ResultSet \u4e0d\u53ef\u66f4\u65b0 jdbcrowsetimpl.resnotupd = ResultSet \u4e0d\u53ef\u66f4\u65b0
jdbcrowsetimpl.opnotysupp = \u5c1a\u4e0d\u652f\u6301\u64cd\u4f5c jdbcrowsetimpl.opnotysupp = \u5c1a\u4e0d\u652f\u6301\u7684\u64cd\u4f5c
jdbcrowsetimpl.featnotsupp = \u4e0d\u652f\u6301\u529f\u80fd jdbcrowsetimpl.featnotsupp = \u5c1a\u4e0d\u652f\u6301\u7684\u529f\u80fd
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = (JNDI) \u65e0\u6cd5\u8fde\u63a5 crsreader.connect = (JNDI) \u65e0\u6cd5\u8fde\u63a5
crsreader.paramtype = \u65e0\u6cd5\u63a8\u65ad\u53c2\u6570\u7c7b\u578b crsreader.paramtype = \u65e0\u6cd5\u63a8\u65ad\u53c2\u6570\u7c7b\u578b
crsreader.connecterr = RowSetReader \u53d1\u751f\u5185\u90e8\u9519\u8bef\uff1a\u6ca1\u6709\u8fde\u63a5\u6216\u547d\u4ee4 crsreader.connecterr = RowSetReader \u4e2d\u51fa\u73b0\u5185\u90e8\u9519\u8bef\uff1a\u65e0\u8fde\u63a5\u6216\u547d\u4ee4
crsreader.datedetected = \u68c0\u6d4b\u5230\u65e5\u671f crsreader.datedetected = \u68c0\u6d4b\u5230\u65e5\u671f
crsreader.caldetected = \u68c0\u6d4b\u5230\u65e5\u5386 crsreader.caldetected = \u68c0\u6d4b\u5230\u65e5\u5386
...@@ -126,7 +125,7 @@ crswriter.connect = \u65e0\u6cd5\u8fdb\u884c\u8fde\u63a5 ...@@ -126,7 +125,7 @@ crswriter.connect = \u65e0\u6cd5\u8fdb\u884c\u8fde\u63a5
crswriter.tname = writeData \u65e0\u6cd5\u786e\u5b9a\u8868\u540d crswriter.tname = writeData \u65e0\u6cd5\u786e\u5b9a\u8868\u540d
crswriter.params1 = params1 \u7684\u503c: {0} crswriter.params1 = params1 \u7684\u503c: {0}
crswriter.params2 = params2 \u7684\u503c: {0} crswriter.params2 = params2 \u7684\u503c: {0}
crswriter.conflictsno = \u540c\u6b65\u65f6\u53d1\u751f\u51b2\u7a81 crswriter.conflictsno = \u540c\u6b65\u5316\u65f6\u53d1\u751f\u51b2\u7a81
#InsertRow exceptions #InsertRow exceptions
insertrow.novalue = \u5c1a\u672a\u63d2\u5165\u4efb\u4f55\u503c insertrow.novalue = \u5c1a\u672a\u63d2\u5165\u4efb\u4f55\u503c
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = \u8981\u89e3\u6790\u7684\u503c\u53ef\u4ee5\u5728\u6570\u63 ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = \u8981\u89e3\u6790\u7684\u503c\u53ef\u4ee5\u5728\u6570\u63
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = \u5df2\u5230\u8fbe RowSet \u7684\u7ed3\u5c3e\u3002\u5149\u6807\u4f4d\u7f6e\u65e0\u6548 wrsxmlreader.invalidcp = \u5df2\u5230\u8fbe RowSet \u7684\u7ed3\u5c3e\u3002\u5149\u6807\u4f4d\u7f6e\u65e0\u6548
wrsxmlreader.readxml = readXML: {0} wrsxmlreader.readxml = readXML: {0}
wrsxmlreader.parseerr = ** \u8bed\u6cd5\u89e3\u6790\u9519\u8bef wrsxmlreader.parseerr = ** \u8bed\u6cd5\u89e3\u6790\u9519\u8bef: {0}\uff0c\u884c: {1}\uff0cURI: {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException: {0} wrsxmlwriter.ioex = IOException: {0}
...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = \u7c7b\u578b\u4e0d\u6b63\u786e ...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = \u7c7b\u578b\u4e0d\u6b63\u786e
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = \u8bbe\u7f6e\u6620\u5c04\u65f6\u51fa\u9519: {0} xmlrch.errmap = \u8bbe\u7f6e\u6620\u5c04\u65f6\u51fa\u9519: {0}
xmlrch.errmetadata = \u8bbe\u7f6e\u5143\u6570\u636e\u65f6\u51fa\u9519: {0} xmlrch.errmetadata = \u8bbe\u7f6e\u5143\u6570\u636e\u65f6\u51fa\u9519: {0}
xmlrch.errinsert = \u63d2\u5165\u503c\u65f6\u51fa\u9519: {0} xmlrch.errinsertval = \u63d2\u5165\u503c\u65f6\u51fa\u9519: {0}
xmlrch.errconstr = \u6784\u9020\u884c\u65f6\u51fa\u9519: {0} xmlrch.errconstr = \u6784\u9020\u884c\u65f6\u51fa\u9519: {0}
xmlrch.errdel = \u5220\u9664\u884c\u65f6\u51fa\u9519: {0} xmlrch.errdel = \u5220\u9664\u884c\u65f6\u51fa\u9519: {0}
xmlrch.errinsert = \u6784\u9020\u63d2\u5165\u884c\u65f6\u51fa\u9519: {0}
xmlrch.errinsdel = \u6784\u9020 insdel \u884c\u65f6\u51fa\u9519: {0} xmlrch.errinsdel = \u6784\u9020 insdel \u884c\u65f6\u51fa\u9519: {0}
xmlrch.errupdate = \u6784\u9020\u66f4\u65b0\u884c\u65f6\u51fa\u9519: {0} xmlrch.errupdate = \u6784\u9020\u66f4\u65b0\u884c\u65f6\u51fa\u9519: {0}
xmlrch.errupdrow = \u66f4\u65b0\u884c\u65f6\u51fa\u9519\uff1a{0} xmlrch.errupdrow = \u66f4\u65b0\u884c\u65f6\u51fa\u9519: {0}
xmlrch.chars = \u5b57\u7b26: xmlrch.chars = \u5b57\u7b26:
xmlrch.badvalue = \u503c\u9519\u8bef\uff1b\u5c5e\u6027\u4e0d\u53ef\u4e3a Null xmlrch.badvalue = \u503c\u9519\u8bef\uff1b\u5c5e\u6027\u4e0d\u53ef\u4e3a Null
xmlrch.badvalue1 = \u503c\u9519\u8bef\uff1b\u5143\u6570\u636e\u4e0d\u53ef\u4e3a Null xmlrch.badvalue1 = \u503c\u9519\u8bef\uff1b\u5143\u6570\u636e\u4e0d\u53ef\u4e3a Null
xmlrch.warning = ** \u8b66\u544a xmlrch.warning = ** \u8b66\u544a: {0}\uff0c\u884c: {1}\uff0cURI: {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = \u4e0d\u652f\u6301\u9501\u5b9a\u5206\u7c7b riop.locking = \u4e0d\u652f\u6301\u9501\u5b9a\u5206\u7c7b
......
# #
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow\uff1a\u6c92\u6709\u5143\u8cc7\u659 ...@@ -60,7 +60,6 @@ cachedrowsetimpl.movetoins1 = moveToInsertRow\uff1a\u6c92\u6709\u5143\u8cc7\u659
cachedrowsetimpl.movetoins2 = moveToInsertRow\uff1a\u6b04\u6578\u7121\u6548 cachedrowsetimpl.movetoins2 = moveToInsertRow\uff1a\u6b04\u6578\u7121\u6548
cachedrowsetimpl.tablename = \u8868\u540d\u7a31\u4e0d\u80fd\u70ba\u7a7a cachedrowsetimpl.tablename = \u8868\u540d\u7a31\u4e0d\u80fd\u70ba\u7a7a
cachedrowsetimpl.keycols = \u95dc\u9375\u6b04\u7121\u6548 cachedrowsetimpl.keycols = \u95dc\u9375\u6b04\u7121\u6548
cachedrowsetimpl.invalidcol = \u6b04\u7d22\u5f15\u7121\u6548
cachedrowsetimpl.opnotsupp = \u8cc7\u6599\u5eab\u4e0d\u652f\u63f4\u4f5c\u696d cachedrowsetimpl.opnotsupp = \u8cc7\u6599\u5eab\u4e0d\u652f\u63f4\u4f5c\u696d
cachedrowsetimpl.matchcols = \u5339\u914d\u6b04\u548c\u8a2d\u5b9a\u7684\u6b04\u4e0d\u540c cachedrowsetimpl.matchcols = \u5339\u914d\u6b04\u548c\u8a2d\u5b9a\u7684\u6b04\u4e0d\u540c
cachedrowsetimpl.setmatchcols = \u5728\u53d6\u5f97\u5339\u914d\u6b04\u4e4b\u524d\u8a2d\u5b9a\u5b83\u5011 cachedrowsetimpl.setmatchcols = \u5728\u53d6\u5f97\u5339\u914d\u6b04\u4e4b\u524d\u8a2d\u5b9a\u5b83\u5011
...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = \u9801\u9762\u5927\u5c0f\u4e0d\u80fd\u5c0f\u65bc\u96 ...@@ -76,8 +75,8 @@ cachedrowsetimpl.pagesize = \u9801\u9762\u5927\u5c0f\u4e0d\u80fd\u5c0f\u65bc\u96
cachedrowsetimpl.pagesize1 = \u9801\u9762\u5927\u5c0f\u4e0d\u80fd\u5927\u65bc maxRows cachedrowsetimpl.pagesize1 = \u9801\u9762\u5927\u5c0f\u4e0d\u80fd\u5927\u65bc maxRows
cachedrowsetimpl.fwdonly = ResultSet \u53ea\u80fd\u5411\u524d\u9032\u884c cachedrowsetimpl.fwdonly = ResultSet \u53ea\u80fd\u5411\u524d\u9032\u884c
cachedrowsetimpl.type = \u985e\u578b\u662f\uff1a{0} cachedrowsetimpl.type = \u985e\u578b\u662f\uff1a{0}
cachedrowsetimpl.opnotysupp = \u5c1a\u672a\u652f\u63f4\u6b64\u4f5c\u696d cachedrowsetimpl.opnotysupp = \u5c1a\u4e0d\u652f\u63f4\u8a72\u4f5c\u696d
cachedrowsetimpl.featnotsupp = \u4e0d\u652f\u63f4\u6b64\u529f\u80fd cachedrowsetimpl.featnotsupp = \u4e0d\u652f\u63f4\u8a72\u529f\u80fd
# WebRowSetImpl exceptions # WebRowSetImpl exceptions
webrowsetimpl.nullhash = \u7121\u6cd5\u5275\u8a2d WebRowSetImpl \u5be6\u4f8b\u3002\u70ba\u5efa\u69cb\u5b50\u63d0\u4f9b\u7684 Hashtable \u70ba\u7a7a webrowsetimpl.nullhash = \u7121\u6cd5\u5275\u8a2d WebRowSetImpl \u5be6\u4f8b\u3002\u70ba\u5efa\u69cb\u5b50\u63d0\u4f9b\u7684 Hashtable \u70ba\u7a7a
...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = \u9019\u4e0d\u662f\u9023\u7d50\u7684\u5df2\u5b9a\u7f ...@@ -97,7 +96,7 @@ joinrowsetimpl.notdefined = \u9019\u4e0d\u662f\u9023\u7d50\u7684\u5df2\u5b9a\u7f
joinrowsetimpl.notsupported = \u4e0d\u652f\u63f4\u6b64\u985e\u9023\u7d50 joinrowsetimpl.notsupported = \u4e0d\u652f\u63f4\u6b64\u985e\u9023\u7d50
joinrowsetimpl.initerror = JoinRowSet \u521d\u59cb\u5316\u932f\u8aa4 joinrowsetimpl.initerror = JoinRowSet \u521d\u59cb\u5316\u932f\u8aa4
joinrowsetimpl.genericerr = \u5e38\u898f\u7684 joinrowset \u521d\u59cb\u5316\u932f\u8aa4 joinrowsetimpl.genericerr = \u5e38\u898f\u7684 joinrowset \u521d\u59cb\u5316\u932f\u8aa4
joinrowsetimpl.emptyrowset = \u4e0d\u53ef\u5c07\u7a7a\u767d\u7684 rowset \u589e\u52a0\u81f3\u6b64 JoinRowSet joinrowsetimpl.emptyrowset = \u7121\u6cd5\u5c07\u7a7a rowset \u65b0\u589e\u81f3\u6b64 JoinRowSet
#JdbcRowSetImpl exceptions #JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = \u72c0\u614b\u7121\u6548 jdbcrowsetimpl.invalstate = \u72c0\u614b\u7121\u6548
...@@ -111,13 +110,13 @@ jdbcrowsetimpl.unsetmatch = \u672a\u8a2d\u5b9a\u7684\u6b04\u548c\u8a2d\u5b9a\u76 ...@@ -111,13 +110,13 @@ jdbcrowsetimpl.unsetmatch = \u672a\u8a2d\u5b9a\u7684\u6b04\u548c\u8a2d\u5b9a\u76
jdbcrowsetimpl.usecolname = \u4f7f\u7528\u6b04\u540d\u505a\u70ba unsetMatchColumn \u7684\u5f15\u6578 jdbcrowsetimpl.usecolname = \u4f7f\u7528\u6b04\u540d\u505a\u70ba unsetMatchColumn \u7684\u5f15\u6578
jdbcrowsetimpl.usecolid = \u4f7f\u7528\u6b04 ID \u505a\u70ba unsetMatchColumn \u7684\u5f15\u6578 jdbcrowsetimpl.usecolid = \u4f7f\u7528\u6b04 ID \u505a\u70ba unsetMatchColumn \u7684\u5f15\u6578
jdbcrowsetimpl.resnotupd = ResultSet \u4e0d\u53ef\u66f4\u65b0 jdbcrowsetimpl.resnotupd = ResultSet \u4e0d\u53ef\u66f4\u65b0
jdbcrowsetimpl.opnotysupp = \u5c1a\u672a\u652f\u63f4\u6b64\u4f5c\u696d jdbcrowsetimpl.opnotysupp = \u5c1a\u4e0d\u652f\u63f4\u8a72\u4f5c\u696d
jdbcrowsetimpl.featnotsupp = \u4e0d\u652f\u63f4\u6b64\u529f\u80fd jdbcrowsetimpl.featnotsupp = \u4e0d\u652f\u63f4\u8a72\u529f\u80fd
#CachedRowSetReader exceptions #CachedRowSetReader exceptions
crsreader.connect = (JNDI) \u7121\u6cd5\u9023\u7dda crsreader.connect = (JNDI) \u7121\u6cd5\u9023\u7dda
crsreader.paramtype = \u7121\u6cd5\u63a8\u65b7\u53c3\u6578\u985e\u578b crsreader.paramtype = \u7121\u6cd5\u63a8\u65b7\u53c3\u6578\u985e\u578b
crsreader.connecterr = RowSetReader \u767c\u751f\u5167\u90e8\u932f\u8aa4\uff1a\u6c92\u6709\u9023\u7dda\u6216\u6307\u4ee4 crsreader.connecterr = RowSetReader \u4e2d\u51fa\u73fe\u5167\u90e8\u932f\u8aa4\ufe30\u7121\u9023\u7dda\u6216\u6307\u4ee4
crsreader.datedetected = \u5075\u6e2c\u5230\u65e5\u671f crsreader.datedetected = \u5075\u6e2c\u5230\u65e5\u671f
crsreader.caldetected = \u5075\u6e2c\u5230\u884c\u4e8b\u66c6 crsreader.caldetected = \u5075\u6e2c\u5230\u884c\u4e8b\u66c6
...@@ -140,7 +139,7 @@ syncrsimpl.valtores = \u8981\u89e3\u6790\u7684\u503c\u53ef\u4f4d\u65bc\u8cc7\u65 ...@@ -140,7 +139,7 @@ syncrsimpl.valtores = \u8981\u89e3\u6790\u7684\u503c\u53ef\u4f4d\u65bc\u8cc7\u65
#WebRowSetXmlReader exception #WebRowSetXmlReader exception
wrsxmlreader.invalidcp = \u5df2\u5230\u9054 RowSet \u672b\u5c3e\u3002\u6e38\u6a19\u4f4d\u7f6e\u7121\u6548 wrsxmlreader.invalidcp = \u5df2\u5230\u9054 RowSet \u672b\u5c3e\u3002\u6e38\u6a19\u4f4d\u7f6e\u7121\u6548
wrsxmlreader.readxml = readXML\uff1a{0} wrsxmlreader.readxml = readXML\uff1a{0}
wrsxmlreader.parseerr = ** \u5256\u6790\u932f\u8aa4 wrsxmlreader.parseerr = ** \u5256\u6790\u932f\u8aa4: {0}\uff0c\u884c: {1}\uff0curi: {2}
#WebRowSetXmlWriter exceptions #WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException\uff1a{0} wrsxmlwriter.ioex = IOException\uff1a{0}
...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = \u4e0d\u662f\u6b63\u78ba\u985e\u578b ...@@ -151,17 +150,16 @@ wsrxmlwriter.notproper = \u4e0d\u662f\u6b63\u78ba\u985e\u578b
#XmlReaderContentHandler exceptions #XmlReaderContentHandler exceptions
xmlrch.errmap = \u8a2d\u5b9a\u5c0d\u6620\u6642\u767c\u751f\u932f\u8aa4\uff1a{0} xmlrch.errmap = \u8a2d\u5b9a\u5c0d\u6620\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
xmlrch.errmetadata = \u8a2d\u5b9a\u5143\u8cc7\u6599\u6642\u767c\u751f\u932f\u8aa4\uff1a{0} xmlrch.errmetadata = \u8a2d\u5b9a\u5143\u8cc7\u6599\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
xmlrch.errinsert = \u63d2\u5165\u503c\u6642\u767c\u751f\u932f\u8aa4: {0} xmlrch.errinsertval = \u63d2\u5165\u503c\u6642\u767c\u751f\u932f\u8aa4: {0}
xmlrch.errconstr = \u5efa\u69cb\u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0} xmlrch.errconstr = \u5efa\u69cb\u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
xmlrch.errdel = \u522a\u9664\u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0} xmlrch.errdel = \u522a\u9664\u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
xmlrch.errinsert = \u5efa\u69cb\u63d2\u5165\u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
xmlrch.errinsdel = \u5efa\u69cb insdel \u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0} xmlrch.errinsdel = \u5efa\u69cb insdel \u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
xmlrch.errupdate = \u5efa\u69cb\u66f4\u65b0\u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0} xmlrch.errupdate = \u5efa\u69cb\u66f4\u65b0\u5217\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
xmlrch.errupdrow = \u66f4\u65b0\u5217\u6642\u767c\u751f\u932f\u8aa4: {0} xmlrch.errupdrow = \u66f4\u65b0\u5217\u6642\u767c\u751f\u932f\u8aa4: {0}
xmlrch.chars = \u5b57\u5143\uff1a xmlrch.chars = \u5b57\u5143\uff1a
xmlrch.badvalue = \u932f\u8aa4\u7684\u503c\uff1b\u7279\u6027\u4e0d\u80fd\u70ba\u7a7a xmlrch.badvalue = \u932f\u8aa4\u7684\u503c\uff1b\u7279\u6027\u4e0d\u80fd\u70ba\u7a7a
xmlrch.badvalue1 = \u932f\u8aa4\u7684\u503c\uff1b\u5143\u8cc7\u6599\u4e0d\u80fd\u70ba\u7a7a xmlrch.badvalue1 = \u932f\u8aa4\u7684\u503c\uff1b\u5143\u8cc7\u6599\u4e0d\u80fd\u70ba\u7a7a
xmlrch.warning = ** \u8b66\u544a xmlrch.warning = ** \u8b66\u544a: {0}\uff0c\u884c: {1}\uff0curi: {2}
#RIOptimisticProvider Exceptions #RIOptimisticProvider Exceptions
riop.locking = \u4e0d\u652f\u63f4\u9396\u5b9a\u5206\u985e riop.locking = \u4e0d\u652f\u63f4\u9396\u5b9a\u5206\u985e
......
/* /*
* Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -25,8 +25,6 @@ ...@@ -25,8 +25,6 @@
package com.sun.security.auth.module; package com.sun.security.auth.module;
import javax.security.auth.login.LoginException;
/** /**
* <p> This class implementation retrieves and makes available NT * <p> This class implementation retrieves and makes available NT
* security information for the current user. * security information for the current user.
...@@ -124,7 +122,7 @@ public class NTSystem { ...@@ -124,7 +122,7 @@ public class NTSystem {
* @return the group SIDs for the current NT user. * @return the group SIDs for the current NT user.
*/ */
public String[] getGroupIDs() { public String[] getGroupIDs() {
return groupIDs; return groupIDs == null ? null : groupIDs.clone();
} }
/** /**
......
/* /*
* Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -25,9 +25,6 @@ ...@@ -25,9 +25,6 @@
package com.sun.security.auth.module; package com.sun.security.auth.module;
import javax.security.auth.*;
import javax.security.auth.login.*;
/** /**
* <p> This class implementation retrieves and makes available Solaris * <p> This class implementation retrieves and makes available Solaris
* UID/GID/groups information for the current user. * UID/GID/groups information for the current user.
...@@ -92,6 +89,6 @@ public class SolarisSystem { ...@@ -92,6 +89,6 @@ public class SolarisSystem {
* @return the supplementary groups for the current Solaris user. * @return the supplementary groups for the current Solaris user.
*/ */
public long[] getGroups() { public long[] getGroups() {
return groups; return groups == null ? null : groups.clone();
} }
} }
/* /*
* Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -25,9 +25,6 @@ ...@@ -25,9 +25,6 @@
package com.sun.security.auth.module; package com.sun.security.auth.module;
import javax.security.auth.*;
import javax.security.auth.login.*;
/** /**
* <p> This class implementation retrieves and makes available Unix * <p> This class implementation retrieves and makes available Unix
* UID/GID/groups information for the current user. * UID/GID/groups information for the current user.
...@@ -92,6 +89,6 @@ public class UnixSystem { ...@@ -92,6 +89,6 @@ public class UnixSystem {
* @return the supplementary groups for the current Unix user. * @return the supplementary groups for the current Unix user.
*/ */
public long[] getGroups() { public long[] getGroups() {
return groups; return groups == null ? null : groups.clone();
} }
} }
...@@ -67,7 +67,7 @@ FileChooser.updateButtonText=\u66f4\u65b0(U) ...@@ -67,7 +67,7 @@ FileChooser.updateButtonText=\u66f4\u65b0(U)
FileChooser.updateButtonMnemonic=85 FileChooser.updateButtonMnemonic=85
FileChooser.helpButtonText=\u30d8\u30eb\u30d7(H) FileChooser.helpButtonText=\u30d8\u30eb\u30d7(H)
FileChooser.helpButtonMnemonic=72 FileChooser.helpButtonMnemonic=72
FileChooser.directoryOpenButtonText=\u958b\u304f(O) FileChooser.directoryOpenButtonText=\u958b\u304f
FileChooser.directoryOpenButtonMnemonic=79 FileChooser.directoryOpenButtonMnemonic=79
# File Size Units # File Size Units
......
...@@ -67,7 +67,7 @@ FileChooser.updateButtonText=\uc5c5\ub370\uc774\ud2b8(U) ...@@ -67,7 +67,7 @@ FileChooser.updateButtonText=\uc5c5\ub370\uc774\ud2b8(U)
FileChooser.updateButtonMnemonic=85 FileChooser.updateButtonMnemonic=85
FileChooser.helpButtonText=\ub3c4\uc6c0\ub9d0(H) FileChooser.helpButtonText=\ub3c4\uc6c0\ub9d0(H)
FileChooser.helpButtonMnemonic=72 FileChooser.helpButtonMnemonic=72
FileChooser.directoryOpenButtonText=\uc5f4\uae30(O) FileChooser.directoryOpenButtonText=\uc5f4\uae30
FileChooser.directoryOpenButtonMnemonic=79 FileChooser.directoryOpenButtonMnemonic=79
# File Size Units # File Size Units
......
# This properties file is used to create a PropertyResourceBundle
# It contains Locale specific strings used in Swing
# Currently, the following components need this for support:
#
# ColorChooser
# FileChooser
# OptionPane
#
# When this file is read in, the strings are put into the
# defaults table. This is an implementation detail of the current
# workings of Swing. DO NOT DEPEND ON THIS.
# This may change in future versions of Swing as we improve localization
# support.
#
# MNEMONIC NOTE:
# Many of strings in this file are used by widgets that have a
# mnemonic, for example:
# ColorChooser.rgbNameText=RGB
# ColorChooser.rgbMnemonic=71
# ColorChooser.rgbDisplayedMnemonicIndex=1
# Indicates that the tab in the ColorChooser for RGB colors will have
# the text 'RGB', further the mnemonic character will be 'g' and that
# a decoration will be provided under the 'G'. This will typically
# look like: RGB
# -
# 71 corresponds to the decimal value of the VK constant defined
# in java/awt/KeyEvent.java. VK_G is defined as:
#
# public static final int VK_G = 0x47;
#
# 0x47 is a hex number and needs to be converted to decimal.
# A simple way to calculate this for a-z is to add 64 to the index of
# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
# for 'a' is 65, 'b' is 66...
#
# The xxDisplayedMnemonicIndex is used to indicate the index of the
# character that should be underlined in the String, with 0
# corresponding to the first character in the String.
#
# One important thing to remember is that the mnemonic MUST exist in
# the String, if it does not exist you should add text that makes it
# exist. This will typically take the form 'XXXX (M)' where M is the
# character for the mnemonic.
#
# @author Steve Wilson
############ FILE CHOOSER STRINGS #############
FileChooser.fileDescriptionText=Arquivo gen\u00e9rico
FileChooser.directoryDescriptionText=Diret\u00f3rio
FileChooser.newFolderErrorText=Erro ao criar nova pasta
FileChooser.newFolderErrorSeparator= :
FileChooser.acceptAllFileFilterText=Todos os arquivos
FileChooser.cancelButtonText=Cancelar
FileChooser.cancelButtonMnemonic=67
FileChooser.saveButtonText=Salvar
FileChooser.saveButtonMnemonic=83
FileChooser.openButtonText=Abrir
FileChooser.openButtonMnemonic=79
FileChooser.saveDialogTitleText=Salvar
FileChooser.openDialogTitleText=Abrir
FileChooser.updateButtonText=Atualizar
FileChooser.updateButtonMnemonic=85
FileChooser.helpButtonText=Ajuda
FileChooser.helpButtonMnemonic=72
FileChooser.directoryOpenButtonText=Abrir
FileChooser.directoryOpenButtonMnemonic=79
# File Size Units
FileChooser.fileSizeKiloBytes={0} KB
FileChooser.fileSizeMegaBytes={0} MB
FileChooser.fileSizeGigaBytes={0} GB
# These strings are platform dependent not look and feel dependent.
FileChooser.win32.newFolder=Nova pasta
FileChooser.win32.newFolder.subsequent=Nova pasta ({0})
FileChooser.other.newFolder=NewFolder
FileChooser.other.newFolder.subsequent=NewFolder.{0}
## file chooser tooltips ###
FileChooser.cancelButtonToolTipText=Anular caixa de di\u00e1logo do seletor de arquivos
FileChooser.saveButtonToolTipText=Salvar arquivo selecionado
FileChooser.openButtonToolTipText=Abrir arquivo selecionado
FileChooser.updateButtonToolTipText=Atualizar lista de diret\u00f3rios
FileChooser.helpButtonToolTipText=Ajuda do FileChooser
FileChooser.directoryOpenButtonToolTipText=Abrir diret\u00f3rio selecionado
############ COLOR CHOOSER STRINGS #############
ColorChooser.previewText=Visualizar
ColorChooser.okText=OK
ColorChooser.cancelText=Cancelar
ColorChooser.resetText=Redefinir
# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
ColorChooser.resetMnemonic=82
ColorChooser.sampleText=Texto de amostra Texto de amostra
ColorChooser.swatchesNameText=Amostras
ColorChooser.swatchesMnemonic=83
ColorChooser.swatchesDisplayedMnemonicIndex=0
ColorChooser.swatchesRecentText=Recente:
ColorChooser.hsbNameText=HSB
# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
# constant, and an index into the text to render the mnemonic as. The
# mnemonic is xxxMnemonic and the index of the character to underline is
# xxxDisplayedMnemonicIndex.
ColorChooser.hsbMnemonic=72
ColorChooser.hsbDisplayedMnemonicIndex=0
ColorChooser.hsbHueText=H
ColorChooser.hsbSaturationText=S
ColorChooser.hsbBrightnessText=B
ColorChooser.hsbRedText=R
ColorChooser.hsbGreenText=G
ColorChooser.hsbBlueText=B
ColorChooser.rgbNameText=RGB
ColorChooser.rgbMnemonic=71
ColorChooser.rgbDisplayedMnemonicIndex=1
ColorChooser.rgbRedText=Vermelho
ColorChooser.rgbRedMnemonic=68
ColorChooser.rgbGreenText=Verde
ColorChooser.rgbGreenMnemonic=78
ColorChooser.rgbBlueText=Azul
ColorChooser.rgbBlueMnemonic=66
############ OPTION PANE STRINGS #############
# Mnemonic keys correspond to KeyEvent.VK_XXX constant
# We only define mnemonics for YES/NO, but for completeness you can
# define mnemonics for any of the buttons.
OptionPane.yesButtonText=Sim
OptionPane.yesButtonMnemonic=89
OptionPane.noButtonText=N\u00e3o
OptionPane.noButtonMnemonic=78
OptionPane.okButtonText=OK
OptionPane.okButtonMnemonic=0
OptionPane.cancelButtonText=Cancelar
OptionPane.cancelButtonMnemonic=0
OptionPane.titleText=Selecionar uma op\u00e7\u00e3o
# Title for the dialog for the showInputDialog methods. Only used if
# the developer uses one of the variants that doesn't take a title.
OptionPane.inputDialogTitle=Entrada
# Title for the dialog for the showMessageDialog methods. Only used if
# the developer uses one of the variants that doesn't take a title.
OptionPane.messageDialogTitle=Mensagem
############ Printing Dialog Strings ############
PrintingDialog.titleProgressText=Impress\u00e3o
PrintingDialog.titleAbortingText=Impress\u00e3o (Anulando)
PrintingDialog.contentInitialText=Impress\u00e3o em andamento...
# The following string will be formatted by a MessageFormat
# and {0} will be replaced by page number being printed
PrintingDialog.contentProgressText=P\u00e1gina imprimida {0}...
PrintingDialog.contentAbortingText=Anulando impress\u00e3o...
PrintingDialog.abortButtonText=Anular
PrintingDialog.abortButtonMnemonic=65
PrintingDialog.abortButtonDisplayedMnemonicIndex=0
PrintingDialog.abortButtonToolTipText=Anular impress\u00e3o
############ Internal Frame Strings ############
InternalFrame.iconButtonToolTip=Minimizar
InternalFrame.maxButtonToolTip=Maximizar
InternalFrame.restoreButtonToolTip=Restaurar
InternalFrame.closeButtonToolTip=Fechar
############ Internal Frame Title Pane Strings ############
InternalFrameTitlePane.restoreButtonText=Restaurar
InternalFrameTitlePane.moveButtonText=Mover
InternalFrameTitlePane.sizeButtonText=Tamanho
InternalFrameTitlePane.minimizeButtonText=Minimizar
InternalFrameTitlePane.maximizeButtonText=Maximizar
InternalFrameTitlePane.closeButtonText=Fechar
############ Text strings #############
# Used for html forms
FormView.submitButtonText=Enviar consulta
FormView.resetButtonText=Redefinir
FormView.browseFileButtonText=Explorar...
############ Abstract Document Strings ############
AbstractDocument.styleChangeText=altera\u00e7\u00e3o de estilo
AbstractDocument.additionText=adi\u00e7\u00e3o
AbstractDocument.deletionText=exclus\u00e3o
AbstractDocument.undoText=Desfazer
AbstractDocument.redoText=Refazer
############ Abstract Button Strings ############
AbstractButton.clickText=clicar
############ Abstract Undoable Edit Strings ############
AbstractUndoableEdit.undoText=Desfazer
AbstractUndoableEdit.redoText=Refazer
############ Combo Box Strings ############
ComboBox.togglePopupText=togglePopup
############ Progress Monitor Strings ############
ProgressMonitor.progressText=Progresso...
############ Split Pane Strings ############
SplitPane.leftButtonText=bot\u00e3o esquerdo
SplitPane.rightButtonText=bot\u00e3o direito
# Used for Isindex
IsindexView.prompt=Trata-se de um \u00edndice pesquis\u00e1vel. Insira as palavras-chave de pesquisa:
############ InternalFrameTitlePane Strings ############
InternalFrameTitlePane.iconifyButtonAccessibleName=Iconificar
InternalFrameTitlePane.maximizeButtonAccessibleName=Maximizar
InternalFrameTitlePane.closeButtonAccessibleName=Fechar
...@@ -67,7 +67,7 @@ FileChooser.updateButtonText=\u66f4\u65b0(U) ...@@ -67,7 +67,7 @@ FileChooser.updateButtonText=\u66f4\u65b0(U)
FileChooser.updateButtonMnemonic=85 FileChooser.updateButtonMnemonic=85
FileChooser.helpButtonText=\u5e2e\u52a9(H) FileChooser.helpButtonText=\u5e2e\u52a9(H)
FileChooser.helpButtonMnemonic=72 FileChooser.helpButtonMnemonic=72
FileChooser.directoryOpenButtonText=\u6253\u5f00(O) FileChooser.directoryOpenButtonText=\u6253\u5f00
FileChooser.directoryOpenButtonMnemonic=79 FileChooser.directoryOpenButtonMnemonic=79
# File Size Units # File Size Units
......
...@@ -67,7 +67,7 @@ FileChooser.updateButtonText=\u66f4\u65b0(U) ...@@ -67,7 +67,7 @@ FileChooser.updateButtonText=\u66f4\u65b0(U)
FileChooser.updateButtonMnemonic=85 FileChooser.updateButtonMnemonic=85
FileChooser.helpButtonText=\u8aaa\u660e(H) FileChooser.helpButtonText=\u8aaa\u660e(H)
FileChooser.helpButtonMnemonic=72 FileChooser.helpButtonMnemonic=72
FileChooser.directoryOpenButtonText=\u958b\u555f(O) FileChooser.directoryOpenButtonText=\u958b\u555f
FileChooser.directoryOpenButtonMnemonic=79 FileChooser.directoryOpenButtonMnemonic=79
# File Size Units # File Size Units
......
...@@ -33,9 +33,9 @@ FileChooser.newFolderActionLabelText=Neuer Ordner ...@@ -33,9 +33,9 @@ FileChooser.newFolderActionLabelText=Neuer Ordner
FileChooser.listViewButtonToolTipText=Liste FileChooser.listViewButtonToolTipText=Liste
FileChooser.listViewButtonAccessibleName=Liste FileChooser.listViewButtonAccessibleName=Liste
FileChooser.listViewActionLabelText=Liste FileChooser.listViewActionLabelText=Liste
FileChooser.detailsViewButtonToolTipText=Einzelheiten FileChooser.detailsViewButtonToolTipText=Details
FileChooser.detailsViewButtonAccessibleName=Einzelheiten FileChooser.detailsViewButtonAccessibleName=Details
FileChooser.detailsViewActionLabelText=Einzelheiten FileChooser.detailsViewActionLabelText=Details
FileChooser.refreshActionLabelText=Aktualisieren FileChooser.refreshActionLabelText=Aktualisieren
FileChooser.viewMenuLabelText=Ansicht FileChooser.viewMenuLabelText=Ansicht
FileChooser.fileNameHeaderText=Dateiname FileChooser.fileNameHeaderText=Dateiname
......
# This properties file is used to create a PropertyResourceBundle
# It contains Locale specific strings used be the Metal Look and Feel.
# Currently, the following components need this for support:
#
# FileChooser
#
# When this file is read in, the strings are put into the
# defaults table. This is an implementation detail of the current
# workings of Swing. DO NOT DEPEND ON THIS.
# This may change in future versions of Swing as we improve localization
# support.
#
# Refer to the note in basic.properties for a description as to what
# the mnemonics correspond to and how to calculate them.
#
# @author Steve Wilson
############ FILE CHOOSER STRINGS #############
FileChooser.lookInLabelText=Consultar em:
FileChooser.saveInLabelText=Salvar em:
FileChooser.fileNameLabelText=Nome de arquivo:
FileChooser.filesOfTypeLabelText=Arquivos de tipo:
FileChooser.upFolderToolTipText=Um n\u00edvel acima
FileChooser.upFolderAccessibleName=Acima
FileChooser.homeFolderToolTipText=In\u00edcio
FileChooser.homeFolderAccessibleName=In\u00edcio
FileChooser.newFolderToolTipText=Criar nova pasta
FileChooser.newFolderAccessibleName=Nova pasta
FileChooser.newFolderActionLabelText=Nova pasta
FileChooser.listViewButtonToolTipText=Lista
FileChooser.listViewButtonAccessibleName=Lista
FileChooser.listViewActionLabelText=Lista
FileChooser.detailsViewButtonToolTipText=Detalhes
FileChooser.detailsViewButtonAccessibleName=Detalhes
FileChooser.detailsViewActionLabelText=Detalhes
FileChooser.refreshActionLabelText=Atualizar
FileChooser.viewMenuLabelText=Exibir
FileChooser.fileNameHeaderText=Nome
FileChooser.fileSizeHeaderText=Tamanho
FileChooser.fileTypeHeaderText=Tipo
FileChooser.fileDateHeaderText=Modificado
FileChooser.fileAttrHeaderText=Atributos
############ Used by MetalTitlePane if rendering window decorations############
# All mnemonics are KeyEvent.VK_XXX as integers
MetalTitlePane.restoreTitle=Restaurar
MetalTitlePane.restoreMnemonic=82
MetalTitlePane.iconifyTitle=Minimizar
MetalTitlePane.iconifyMnemonic=69
MetalTitlePane.maximizeTitle=Maximizar
MetalTitlePane.maximizeMnemonic=88
MetalTitlePane.closeTitle=Fechar
MetalTitlePane.closeMnemonic=67
...@@ -28,8 +28,8 @@ FileChooser.newFolderToolTipText=Neuen Ordner erstellen ...@@ -28,8 +28,8 @@ FileChooser.newFolderToolTipText=Neuen Ordner erstellen
FileChooser.newFolderAccessibleName=Neuer Ordner FileChooser.newFolderAccessibleName=Neuer Ordner
FileChooser.listViewButtonToolTipText=Liste FileChooser.listViewButtonToolTipText=Liste
FileChooser.listViewButtonAccessibleName=Liste FileChooser.listViewButtonAccessibleName=Liste
FileChooser.detailsViewButtonToolTipText=Einzelheiten FileChooser.detailsViewButtonToolTipText=Details
FileChooser.detailsViewButtonAccessibleName=Einzelheiten FileChooser.detailsViewButtonAccessibleName=Details
FileChooser.fileNameHeaderText=Dateiname FileChooser.fileNameHeaderText=Dateiname
FileChooser.fileSizeHeaderText=Gr\u00f6\u00dfe FileChooser.fileSizeHeaderText=Gr\u00f6\u00dfe
FileChooser.fileTypeHeaderText=Typ FileChooser.fileTypeHeaderText=Typ
......
# This properties file is used to create a PropertyResourceBundle
# It contains Locale specific strings used be the Synth Look and Feel.
# Currently, the following components need this for support:
#
# FileChooser
#
# When this file is read in, the strings are put into the
# defaults table. This is an implementation detail of the current
# workings of Swing. DO NOT DEPEND ON THIS.
# This may change in future versions of Swing as we improve localization
# support.
#
# @author Steve Wilson
############ FILE CHOOSER STRINGS #############
FileChooser.lookInLabelText=Consultar em:
FileChooser.saveInLabelText=Salvar em:
FileChooser.fileNameLabelText=Nome de arquivo:
FileChooser.filesOfTypeLabelText=Arquivos de tipo:
FileChooser.upFolderToolTipText=Um n\u00edvel acima
FileChooser.upFolderAccessibleName=Acima
FileChooser.homeFolderToolTipText=In\u00edcio
FileChooser.homeFolderAccessibleName=In\u00edcio
FileChooser.newFolderToolTipText=Criar nova pasta
FileChooser.newFolderAccessibleName=Nova pasta
FileChooser.newFolderActionLabelText=Nova pasta
FileChooser.listViewButtonToolTipText=Lista
FileChooser.listViewButtonAccessibleName=Lista
FileChooser.listViewActionLabelText=Lista
FileChooser.detailsViewButtonToolTipText=Detalhes
FileChooser.detailsViewButtonAccessibleName=Detalhes
FileChooser.detailsViewActionLabelText=Detalhes
FileChooser.refreshActionLabelText=Atualizar
FileChooser.viewMenuLabelText=Exibir
FileChooser.fileNameHeaderText=Nome
FileChooser.fileSizeHeaderText=Tamanho
FileChooser.fileTypeHeaderText=Tipo
FileChooser.fileDateHeaderText=Modificado
FileChooser.fileAttrHeaderText=Atributos
...@@ -35,18 +35,18 @@ socket_attaching.host = VM \u306b\u63a5\u7d9a\u3059\u308b\u30de\u30b7\u30f3\u540 ...@@ -35,18 +35,18 @@ socket_attaching.host = VM \u306b\u63a5\u7d9a\u3059\u308b\u30de\u30b7\u30f3\u540
socket_attaching.host.label = \u30db\u30b9\u30c8 socket_attaching.host.label = \u30db\u30b9\u30c8
socket_attaching.port = VM \u306b\u63a5\u7d9a\u3059\u308b\u30dd\u30fc\u30c8\u756a\u53f7 socket_attaching.port = VM \u306b\u63a5\u7d9a\u3059\u308b\u30dd\u30fc\u30c8\u756a\u53f7
socket_attaching.port.label = \u30dd\u30fc\u30c8 socket_attaching.port.label = \u30dd\u30fc\u30c8
socket_attaching.description = \u30bd\u30b1\u30c3\u30c8\u3067\u305d\u306e\u4ed6\u306e VM \u306b\u63a5\u7d9a\u3057\u307e\u3059\u3002 socket_attaching.description = \u30bd\u30b1\u30c3\u30c8\u3067\u305d\u306e\u4ed6\u306e VM \u306b\u63a5\u7d9a\u3057\u307e\u3059
socket_listening.localaddr = \u30ea\u30b9\u30ca\u30fc\u306e\u30d0\u30a4\u30f3\u30c9\u5148\u30ed\u30fc\u30ab\u30eb\u30a2\u30c9\u30ec\u30b9 socket_listening.localaddr = \u30ea\u30b9\u30ca\u30fc\u306e\u30d0\u30a4\u30f3\u30c9\u5148\u30ed\u30fc\u30ab\u30eb\u30a2\u30c9\u30ec\u30b9
socket_listening.localaddr.label = \u30ed\u30fc\u30ab\u30eb\u30a2\u30c9\u30ec\u30b9 socket_listening.localaddr.label = \u30ed\u30fc\u30ab\u30eb\u30a2\u30c9\u30ec\u30b9
socket_listening.port = VM \u3078\u306e\u63a5\u7d9a\u3092\u5f85\u6a5f\u3059\u308b\u30dd\u30fc\u30c8\u756a\u53f7 socket_listening.port = VM \u3078\u306e\u63a5\u7d9a\u3092\u5f85\u6a5f\u3059\u308b\u30dd\u30fc\u30c8\u756a\u53f7
socket_listening.port.label = \u30dd\u30fc\u30c8 socket_listening.port.label = \u30dd\u30fc\u30c8
socket_listening.description = \u305d\u306e\u4ed6\u306e VM \u306b\u3088\u308a\u958b\u59cb\u3055\u308c\u308b\u30bd\u30b1\u30c3\u30c8\u63a5\u7d9a\u3092\u53d7\u3051\u5165\u308c\u307e\u3059\u3002 socket_listening.description = \u305d\u306e\u4ed6\u306e VM \u306b\u3088\u308a\u958b\u59cb\u3055\u308c\u308b\u30bd\u30b1\u30c3\u30c8\u63a5\u7d9a\u3092\u53d7\u3051\u5165\u308c\u307e\u3059
memory_attaching.name = VM \u3078\u306e\u63a5\u7d9a\u306b\u4f7f\u7528\u3055\u308c\u308b\u5171\u6709\u30e1\u30e2\u30ea\u9818\u57df\u540d memory_attaching.name = VM \u3078\u306e\u63a5\u7d9a\u306b\u4f7f\u7528\u3055\u308c\u308b\u5171\u6709\u30e1\u30e2\u30ea\u9818\u57df\u540d
memory_attaching.name.label = \u540d\u524d memory_attaching.name.label = \u540d\u524d
memory_attaching.description = \u5171\u6709\u30e1\u30e2\u30ea\u3067\u305d\u306e\u4ed6\u306e VM \u306b\u63a5\u7d9a\u3057\u307e\u3059\u3002 memory_attaching.description = \u5171\u6709\u30e1\u30e2\u30ea\u3067\u305d\u306e\u4ed6\u306e VM \u306b\u63a5\u7d9a\u3057\u307e\u3059
memory_listening.name = VM \u3078\u306e\u63a5\u7d9a\u3092\u5f85\u6a5f\u3059\u308b\u305f\u3081\u306e\u5171\u6709\u30e1\u30e2\u30ea\u9818\u57df\u540d memory_listening.name = VM \u3078\u306e\u63a5\u7d9a\u3092\u5f85\u6a5f\u3059\u308b\u305f\u3081\u306e\u5171\u6709\u30e1\u30e2\u30ea\u9818\u57df\u540d
memory_listening.name.label = \u540d\u524d memory_listening.name.label = \u540d\u524d
memory_listening.description = \u305d\u306e\u4ed6\u306e VM \u306b\u3088\u308a\u958b\u59cb\u3055\u308c\u308b\u5171\u6709\u30e1\u30e2\u30ea\u63a5\u7d9a\u3092\u53d7\u3051\u5165\u308c\u307e\u3059\u3002 memory_listening.description = \u305d\u306e\u4ed6\u306e VM \u306b\u3088\u308a\u958b\u59cb\u3055\u308c\u308b\u5171\u6709\u30e1\u30e2\u30ea\u63a5\u7d9a\u3092\u53d7\u3051\u5165\u308c\u307e\u3059
process_attaching.description = \u30c7\u30d0\u30c3\u30b0\u3059\u308b\u30d7\u30ed\u30bb\u30b9\u306b\u30d7\u30ed\u30bb\u30b9 ID (pid) \u3092\u4f7f\u3063\u3066\u63a5\u7d9a\u3057\u307e\u3059 process_attaching.description = \u30c7\u30d0\u30c3\u30b0\u3059\u308b\u30d7\u30ed\u30bb\u30b9\u306b\u30d7\u30ed\u30bb\u30b9 ID (pid) \u3092\u4f7f\u3063\u3066\u63a5\u7d9a\u3057\u307e\u3059
process_attaching.pid = pid process_attaching.pid = pid
process_attaching.pid.label = \u30c7\u30d0\u30c3\u30b0\u3059\u308b\u30d7\u30ed\u30bb\u30b9 ID (pid) process_attaching.pid.label = \u30c7\u30d0\u30c3\u30b0\u3059\u308b\u30d7\u30ed\u30bb\u30b9 ID (pid)
...@@ -565,7 +565,7 @@ public class Dialog extends Window { ...@@ -565,7 +565,7 @@ public class Dialog extends Window {
* @since 1.6 * @since 1.6
*/ */
public Dialog(Window owner) { public Dialog(Window owner) {
this(owner, null, ModalityType.MODELESS); this(owner, "", ModalityType.MODELESS);
} }
/** /**
...@@ -624,7 +624,7 @@ public class Dialog extends Window { ...@@ -624,7 +624,7 @@ public class Dialog extends Window {
* @since 1.6 * @since 1.6
*/ */
public Dialog(Window owner, ModalityType modalityType) { public Dialog(Window owner, ModalityType modalityType) {
this(owner, null, modalityType); this(owner, "", modalityType);
} }
/** /**
......
...@@ -30,15 +30,15 @@ package java.awt; ...@@ -30,15 +30,15 @@ package java.awt;
* <p> * <p>
* Objects that implement this interface are created with the * Objects that implement this interface are created with the
* {@link EventQueue#createSecondaryLoop} method. The interface * {@link EventQueue#createSecondaryLoop} method. The interface
* provides two methods, {@link enter} and {@link exit}, * provides two methods, {@link #enter} and {@link #exit},
* which can be used to start and stop the event loop. * which can be used to start and stop the event loop.
* <p> * <p>
* When the {@link enter} method is called, the current * When the {@link #enter} method is called, the current
* thread is blocked until the loop is terminated by the * thread is blocked until the loop is terminated by the
* {@link exit} method. Also, a new event loop is started * {@link #exit} method. Also, a new event loop is started
* on the event dispatch thread, which may or may not be * on the event dispatch thread, which may or may not be
* the current thread. The loop can be terminated on any * the current thread. The loop can be terminated on any
* thread by calling its {@link exit} method. After the * thread by calling its {@link #exit} method. After the
* loop is terminated, the {@code SecondaryLoop} object can * loop is terminated, the {@code SecondaryLoop} object can
* be reused to run a new nested event loop. * be reused to run a new nested event loop.
* <p> * <p>
...@@ -102,7 +102,7 @@ public interface SecondaryLoop { ...@@ -102,7 +102,7 @@ public interface SecondaryLoop {
* <p> * <p>
* This method can be called by any thread including the event * This method can be called by any thread including the event
* dispatch thread. This thread will be blocked until the {@link * dispatch thread. This thread will be blocked until the {@link
* exit} method is called or the loop is terminated. A new * #exit} method is called or the loop is terminated. A new
* secondary loop will be created on the event dispatch thread * secondary loop will be created on the event dispatch thread
* for dispatching events in either case. * for dispatching events in either case.
* <p> * <p>
...@@ -123,23 +123,23 @@ public interface SecondaryLoop { ...@@ -123,23 +123,23 @@ public interface SecondaryLoop {
/** /**
* Unblocks the execution of the thread blocked by the {@link * Unblocks the execution of the thread blocked by the {@link
* enter} method and exits the secondary loop. * #enter} method and exits the secondary loop.
* <p> * <p>
* This method resumes the thread that called the {@link enter} * This method resumes the thread that called the {@link #enter}
* method and exits the secondary loop that was created when * method and exits the secondary loop that was created when
* the {@link enter} method was invoked. * the {@link #enter} method was invoked.
* <p> * <p>
* Note that if any other secondary loop is started while this * Note that if any other secondary loop is started while this
* loop is running, the blocked thread will not resume execution * loop is running, the blocked thread will not resume execution
* until the nested loop is terminated. * until the nested loop is terminated.
* <p> * <p>
* If this secondary loop has not been started with the {@link * If this secondary loop has not been started with the {@link
* enter} method, or this secondary loop has already finished * #enter} method, or this secondary loop has already finished
* with the {@link exit} method, this method returns {@code * with the {@link #exit} method, this method returns {@code
* false}, otherwise {@code true} is returned. * false}, otherwise {@code true} is returned.
* *
* @return {@code true} if this loop was previously started and * @return {@code true} if this loop was previously started and
* has not yet been finished with the {@link exit} method, * has not yet been finished with the {@link #exit} method,
* {@code false} otherwise * {@code false} otherwise
*/ */
public boolean exit(); public boolean exit();
......
...@@ -56,7 +56,15 @@ class FileOutputStream extends OutputStream ...@@ -56,7 +56,15 @@ class FileOutputStream extends OutputStream
*/ */
private final FileDescriptor fd; private final FileDescriptor fd;
private FileChannel channel= null; /**
* True if the file is opened for append.
*/
private final boolean append;
/**
* The associated channel, initalized lazily.
*/
private FileChannel channel;
private final Object closeLock = new Object(); private final Object closeLock = new Object();
private volatile boolean closed = false; private volatile boolean closed = false;
...@@ -196,7 +204,9 @@ class FileOutputStream extends OutputStream ...@@ -196,7 +204,9 @@ class FileOutputStream extends OutputStream
if (name == null) { if (name == null) {
throw new NullPointerException(); throw new NullPointerException();
} }
fd = new FileDescriptor(); this.fd = new FileDescriptor();
this.append = append;
fd.incrementAndGetUseCount(); fd.incrementAndGetUseCount();
open(name, append); open(name, append);
} }
...@@ -232,7 +242,8 @@ class FileOutputStream extends OutputStream ...@@ -232,7 +242,8 @@ class FileOutputStream extends OutputStream
if (security != null) { if (security != null) {
security.checkWrite(fdObj); security.checkWrite(fdObj);
} }
fd = fdObj; this.fd = fdObj;
this.append = false;
/* /*
* FileDescriptor is being shared by streams. * FileDescriptor is being shared by streams.
...@@ -250,6 +261,15 @@ class FileOutputStream extends OutputStream ...@@ -250,6 +261,15 @@ class FileOutputStream extends OutputStream
private native void open(String name, boolean append) private native void open(String name, boolean append)
throws FileNotFoundException; throws FileNotFoundException;
/**
* Writes the specified byte to this file output stream.
*
* @param b the byte to be written.
* @param append {@code true} if the write operation first
* advances the position to the end of file
*/
private native void write(int b, boolean append) throws IOException;
/** /**
* Writes the specified byte to this file output stream. Implements * Writes the specified byte to this file output stream. Implements
* the <code>write</code> method of <code>OutputStream</code>. * the <code>write</code> method of <code>OutputStream</code>.
...@@ -257,16 +277,21 @@ class FileOutputStream extends OutputStream ...@@ -257,16 +277,21 @@ class FileOutputStream extends OutputStream
* @param b the byte to be written. * @param b the byte to be written.
* @exception IOException if an I/O error occurs. * @exception IOException if an I/O error occurs.
*/ */
public native void write(int b) throws IOException; public void write(int b) throws IOException {
write(b, append);
}
/** /**
* Writes a sub array as a sequence of bytes. * Writes a sub array as a sequence of bytes.
* @param b the data to be written * @param b the data to be written
* @param off the start offset in the data * @param off the start offset in the data
* @param len the number of bytes that are written * @param len the number of bytes that are written
* @param append {@code true} to first advance the position to the
* end of file
* @exception IOException If an I/O error has occurred. * @exception IOException If an I/O error has occurred.
*/ */
private native void writeBytes(byte b[], int off, int len) throws IOException; private native void writeBytes(byte b[], int off, int len, boolean append)
throws IOException;
/** /**
* Writes <code>b.length</code> bytes from the specified byte array * Writes <code>b.length</code> bytes from the specified byte array
...@@ -276,7 +301,7 @@ class FileOutputStream extends OutputStream ...@@ -276,7 +301,7 @@ class FileOutputStream extends OutputStream
* @exception IOException if an I/O error occurs. * @exception IOException if an I/O error occurs.
*/ */
public void write(byte b[]) throws IOException { public void write(byte b[]) throws IOException {
writeBytes(b, 0, b.length); writeBytes(b, 0, b.length, append);
} }
/** /**
...@@ -289,7 +314,7 @@ class FileOutputStream extends OutputStream ...@@ -289,7 +314,7 @@ class FileOutputStream extends OutputStream
* @exception IOException if an I/O error occurs. * @exception IOException if an I/O error occurs.
*/ */
public void write(byte b[], int off, int len) throws IOException { public void write(byte b[], int off, int len) throws IOException {
writeBytes(b, off, len); writeBytes(b, off, len, append);
} }
/** /**
...@@ -372,7 +397,7 @@ class FileOutputStream extends OutputStream ...@@ -372,7 +397,7 @@ class FileOutputStream extends OutputStream
public FileChannel getChannel() { public FileChannel getChannel() {
synchronized (this) { synchronized (this) {
if (channel == null) { if (channel == null) {
channel = FileChannelImpl.open(fd, false, true, this); channel = FileChannelImpl.open(fd, false, true, append, this);
/* /*
* Increment fd's use count. Invoking the channel's close() * Increment fd's use count. Invoking the channel's close()
......
...@@ -3498,8 +3498,8 @@ public class ObjectInputStream ...@@ -3498,8 +3498,8 @@ public class ObjectInputStream
return ((int[]) array).clone(); return ((int[]) array).clone();
} else if (array instanceof long[]) { } else if (array instanceof long[]) {
return ((long[]) array).clone(); return ((long[]) array).clone();
} else if (array instanceof double[]) { } else if (array instanceof short[]) {
return ((double[]) array).clone(); return ((short[]) array).clone();
} else { } else {
throw new AssertionError(); throw new AssertionError();
} }
......
...@@ -6371,15 +6371,15 @@ class Character implements java.io.Serializable, Comparable<Character> { ...@@ -6371,15 +6371,15 @@ class Character implements java.io.Serializable, Comparable<Character> {
* This method returns <code>true</code> for the following five * This method returns <code>true</code> for the following five
* characters only: * characters only:
* <table> * <table>
* <tr><td><code>'\t'</code></td> <td><code>'&#92;u0009'</code></td> * <tr><td><code>'\t'</code></td> <td><code>U+0009</code></td>
* <td><code>HORIZONTAL TABULATION</code></td></tr> * <td><code>HORIZONTAL TABULATION</code></td></tr>
* <tr><td><code>'\n'</code></td> <td><code>'&#92;u000A'</code></td> * <tr><td><code>'\n'</code></td> <td><code>U+000A</code></td>
* <td><code>NEW LINE</code></td></tr> * <td><code>NEW LINE</code></td></tr>
* <tr><td><code>'\f'</code></td> <td><code>'&#92;u000C'</code></td> * <tr><td><code>'\f'</code></td> <td><code>U+000C</code></td>
* <td><code>FORM FEED</code></td></tr> * <td><code>FORM FEED</code></td></tr>
* <tr><td><code>'\r'</code></td> <td><code>'&#92;u000D'</code></td> * <tr><td><code>'\r'</code></td> <td><code>U+000D</code></td>
* <td><code>CARRIAGE RETURN</code></td></tr> * <td><code>CARRIAGE RETURN</code></td></tr>
* <tr><td><code>'&nbsp;'</code></td> <td><code>'&#92;u0020'</code></td> * <tr><td><code>'&nbsp;'</code></td> <td><code>U+0020</code></td>
* <td><code>SPACE</code></td></tr> * <td><code>SPACE</code></td></tr>
* </table> * </table>
* *
...@@ -6463,15 +6463,15 @@ class Character implements java.io.Serializable, Comparable<Character> { ...@@ -6463,15 +6463,15 @@ class Character implements java.io.Serializable, Comparable<Character> {
* <code>LINE_SEPARATOR</code>, or <code>PARAGRAPH_SEPARATOR</code>) * <code>LINE_SEPARATOR</code>, or <code>PARAGRAPH_SEPARATOR</code>)
* but is not also a non-breaking space (<code>'&#92;u00A0'</code>, * but is not also a non-breaking space (<code>'&#92;u00A0'</code>,
* <code>'&#92;u2007'</code>, <code>'&#92;u202F'</code>). * <code>'&#92;u2007'</code>, <code>'&#92;u202F'</code>).
* <li> It is <code>'&#92;u0009'</code>, HORIZONTAL TABULATION. * <li> It is <code>'&#92;t'</code>, U+0009 HORIZONTAL TABULATION.
* <li> It is <code>'&#92;u000A'</code>, LINE FEED. * <li> It is <code>'&#92;n'</code>, U+000A LINE FEED.
* <li> It is <code>'&#92;u000B'</code>, VERTICAL TABULATION. * <li> It is <code>'&#92;u000B'</code>, U+000B VERTICAL TABULATION.
* <li> It is <code>'&#92;u000C'</code>, FORM FEED. * <li> It is <code>'&#92;f'</code>, U+000C FORM FEED.
* <li> It is <code>'&#92;u000D'</code>, CARRIAGE RETURN. * <li> It is <code>'&#92;r'</code>, U+000D CARRIAGE RETURN.
* <li> It is <code>'&#92;u001C'</code>, FILE SEPARATOR. * <li> It is <code>'&#92;u001C'</code>, U+001C FILE SEPARATOR.
* <li> It is <code>'&#92;u001D'</code>, GROUP SEPARATOR. * <li> It is <code>'&#92;u001D'</code>, U+001D GROUP SEPARATOR.
* <li> It is <code>'&#92;u001E'</code>, RECORD SEPARATOR. * <li> It is <code>'&#92;u001E'</code>, U+001E RECORD SEPARATOR.
* <li> It is <code>'&#92;u001F'</code>, UNIT SEPARATOR. * <li> It is <code>'&#92;u001F'</code>, U+001F UNIT SEPARATOR.
* </ul> * </ul>
* *
* <p><b>Note:</b> This method cannot handle <a * <p><b>Note:</b> This method cannot handle <a
...@@ -6499,15 +6499,15 @@ class Character implements java.io.Serializable, Comparable<Character> { ...@@ -6499,15 +6499,15 @@ class Character implements java.io.Serializable, Comparable<Character> {
* {@link #LINE_SEPARATOR}, or {@link #PARAGRAPH_SEPARATOR}) * {@link #LINE_SEPARATOR}, or {@link #PARAGRAPH_SEPARATOR})
* but is not also a non-breaking space (<code>'&#92;u00A0'</code>, * but is not also a non-breaking space (<code>'&#92;u00A0'</code>,
* <code>'&#92;u2007'</code>, <code>'&#92;u202F'</code>). * <code>'&#92;u2007'</code>, <code>'&#92;u202F'</code>).
* <li> It is <code>'&#92;u0009'</code>, HORIZONTAL TABULATION. * <li> It is <code>'&#92;t'</code>, U+0009 HORIZONTAL TABULATION.
* <li> It is <code>'&#92;u000A'</code>, LINE FEED. * <li> It is <code>'&#92;n'</code>, U+000A LINE FEED.
* <li> It is <code>'&#92;u000B'</code>, VERTICAL TABULATION. * <li> It is <code>'&#92;u000B'</code>, U+000B VERTICAL TABULATION.
* <li> It is <code>'&#92;u000C'</code>, FORM FEED. * <li> It is <code>'&#92;f'</code>, U+000C FORM FEED.
* <li> It is <code>'&#92;u000D'</code>, CARRIAGE RETURN. * <li> It is <code>'&#92;r'</code>, U+000D CARRIAGE RETURN.
* <li> It is <code>'&#92;u001C'</code>, FILE SEPARATOR. * <li> It is <code>'&#92;u001C'</code>, U+001C FILE SEPARATOR.
* <li> It is <code>'&#92;u001D'</code>, GROUP SEPARATOR. * <li> It is <code>'&#92;u001D'</code>, U+001D GROUP SEPARATOR.
* <li> It is <code>'&#92;u001E'</code>, RECORD SEPARATOR. * <li> It is <code>'&#92;u001E'</code>, U+001E RECORD SEPARATOR.
* <li> It is <code>'&#92;u001F'</code>, UNIT SEPARATOR. * <li> It is <code>'&#92;u001F'</code>, U+001F UNIT SEPARATOR.
* </ul> * </ul>
* <p> * <p>
* *
......
/* /*
* Copyright (c) 1994, 2009, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -973,7 +973,8 @@ public final class Double extends Number implements Comparable<Double> { ...@@ -973,7 +973,8 @@ public final class Double extends Number implements Comparable<Double> {
if (d1 > d2) if (d1 > d2)
return 1; // Neither val is NaN, thisVal is larger return 1; // Neither val is NaN, thisVal is larger
long thisBits = Double.doubleToLongBits(d1); // Cannot use doubleToRawLongBits because of possibility of NaNs.
long thisBits = Double.doubleToLongBits(d1);
long anotherBits = Double.doubleToLongBits(d2); long anotherBits = Double.doubleToLongBits(d2);
return (thisBits == anotherBits ? 0 : // Values are equal return (thisBits == anotherBits ? 0 : // Values are equal
......
/* /*
* Copyright (c) 1994, 2009, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -872,12 +872,13 @@ public final class Float extends Number implements Comparable<Float> { ...@@ -872,12 +872,13 @@ public final class Float extends Number implements Comparable<Float> {
* @since 1.4 * @since 1.4
*/ */
public static int compare(float f1, float f2) { public static int compare(float f1, float f2) {
if (f1 < f2) if (f1 < f2)
return -1; // Neither val is NaN, thisVal is smaller return -1; // Neither val is NaN, thisVal is smaller
if (f1 > f2) if (f1 > f2)
return 1; // Neither val is NaN, thisVal is larger return 1; // Neither val is NaN, thisVal is larger
int thisBits = Float.floatToIntBits(f1); // Cannot use floatToRawIntBits because of possibility of NaNs.
int thisBits = Float.floatToIntBits(f1);
int anotherBits = Float.floatToIntBits(f2); int anotherBits = Float.floatToIntBits(f2);
return (thisBits == anotherBits ? 0 : // Values are equal return (thisBits == anotherBits ? 0 : // Values are equal
......
...@@ -537,7 +537,11 @@ public final class ProcessBuilder ...@@ -537,7 +537,11 @@ public final class ProcessBuilder
*/ */
public File file() { return null; } public File file() { return null; }
FileOutputStream toFileOutputStream() throws IOException { /**
* When redirected to a destination file, indicates if the output
* is to be written to the end of the file.
*/
boolean append() {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
} }
...@@ -588,9 +592,7 @@ public final class ProcessBuilder ...@@ -588,9 +592,7 @@ public final class ProcessBuilder
public String toString() { public String toString() {
return "redirect to write to file \"" + file + "\""; return "redirect to write to file \"" + file + "\"";
} }
FileOutputStream toFileOutputStream() throws IOException { boolean append() { return false; }
return new FileOutputStream(file, false);
}
}; };
} }
...@@ -620,9 +622,7 @@ public final class ProcessBuilder ...@@ -620,9 +622,7 @@ public final class ProcessBuilder
public String toString() { public String toString() {
return "redirect to append to file \"" + file + "\""; return "redirect to append to file \"" + file + "\"";
} }
FileOutputStream toFileOutputStream() throws IOException { boolean append() { return true; }
return new FileOutputStream(file, true);
}
}; };
} }
......
/*
* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
package java.lang;
import java.lang.annotation.*;
/**
* A programmer assertion that the body of the annotated method or
* constructor does not perform potentially unsafe operations on its
* varargs parameter. Applying this annotation to a method or
* constructor suppresses unchecked warnings about a
* <i>non-reifiable</i> variable-arity (vararg) type and suppresses
* unchecked warnings about parameterized array creation at call
* sites.
*
* <p> In addition to the usage restrictions imposed by its {@link
* Target @Target} meta-annotation, compilers are required to implement
* additional usage restrictions on this annotation type; it is a
* compile-time error if a method or constructor declaration is
* annotated with a {@code @SafeVarargs} annotation, and either:
* <ul>
* <li> the declaration is a fixed-arity method or constructor
*
* <li> the declaration is a variable-arity method that is neither
* {@code static} nor {@code final}.
*
* </ul>
*
* <p> Compilers are encouraged to issue warnings when this annotation
* type is applied to a method or constructor declaration where:
*
* <ul>
*
* <li> The variable-arity parameter has a reifiable element type,
* which includes primitive types, {@code Object}, and {@code String}.
* (The unchecked warnings this annotation type suppresses already do
* not occur for a reifiable element type.)
*
* <li> The body of the method or constructor declaration performs
* potentially unsafe operations, such as an assignment to an element
* of the variable-arity parameter's array that generates an unchecked
* warning.
*
* <p>Future versions of the platform may mandate compiler errors for
* such unsafe operations.
*
* </ul>
*
* @jls3 4.7 Reifiable Types
* @jls3 8.4.1 Formal Parameters
*/
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.CONSTRUCTOR, ElementType.METHOD})
public @interface SafeVarargs {}
/* /*
* Copyright (c) 1999, 2006, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -801,8 +801,9 @@ public final class StrictMath { ...@@ -801,8 +801,9 @@ public final class StrictMath {
return (a >= b) ? a : b; return (a >= b) ? a : b;
} }
private static long negativeZeroFloatBits = Float.floatToIntBits(-0.0f); // Use raw bit-wise conversions on guaranteed non-NaN arguments.
private static long negativeZeroDoubleBits = Double.doubleToLongBits(-0.0d); private static long negativeZeroFloatBits = Float.floatToRawIntBits(-0.0f);
private static long negativeZeroDoubleBits = Double.doubleToRawLongBits(-0.0d);
/** /**
* Returns the greater of two {@code float} values. That is, * Returns the greater of two {@code float} values. That is,
...@@ -819,9 +820,12 @@ public final class StrictMath { ...@@ -819,9 +820,12 @@ public final class StrictMath {
* @return the larger of {@code a} and {@code b}. * @return the larger of {@code a} and {@code b}.
*/ */
public static float max(float a, float b) { public static float max(float a, float b) {
if (a != a) return a; // a is NaN if (a != a)
if ((a == 0.0f) && (b == 0.0f) return a; // a is NaN
&& (Float.floatToIntBits(a) == negativeZeroFloatBits)) { if ((a == 0.0f) &&
(b == 0.0f) &&
(Float.floatToRawIntBits(a) == negativeZeroFloatBits)) {
// Raw conversion ok since NaN can't map to -0.0.
return b; return b;
} }
return (a >= b) ? a : b; return (a >= b) ? a : b;
...@@ -842,9 +846,12 @@ public final class StrictMath { ...@@ -842,9 +846,12 @@ public final class StrictMath {
* @return the larger of {@code a} and {@code b}. * @return the larger of {@code a} and {@code b}.
*/ */
public static double max(double a, double b) { public static double max(double a, double b) {
if (a != a) return a; // a is NaN if (a != a)
if ((a == 0.0d) && (b == 0.0d) return a; // a is NaN
&& (Double.doubleToLongBits(a) == negativeZeroDoubleBits)) { if ((a == 0.0d) &&
(b == 0.0d) &&
(Double.doubleToRawLongBits(a) == negativeZeroDoubleBits)) {
// Raw conversion ok since NaN can't map to -0.0.
return b; return b;
} }
return (a >= b) ? a : b; return (a >= b) ? a : b;
...@@ -893,9 +900,12 @@ public final class StrictMath { ...@@ -893,9 +900,12 @@ public final class StrictMath {
* @return the smaller of {@code a} and {@code b.} * @return the smaller of {@code a} and {@code b.}
*/ */
public static float min(float a, float b) { public static float min(float a, float b) {
if (a != a) return a; // a is NaN if (a != a)
if ((a == 0.0f) && (b == 0.0f) return a; // a is NaN
&& (Float.floatToIntBits(b) == negativeZeroFloatBits)) { if ((a == 0.0f) &&
(b == 0.0f) &&
(Float.floatToRawIntBits(b) == negativeZeroFloatBits)) {
// Raw conversion ok since NaN can't map to -0.0.
return b; return b;
} }
return (a <= b) ? a : b; return (a <= b) ? a : b;
...@@ -916,9 +926,12 @@ public final class StrictMath { ...@@ -916,9 +926,12 @@ public final class StrictMath {
* @return the smaller of {@code a} and {@code b}. * @return the smaller of {@code a} and {@code b}.
*/ */
public static double min(double a, double b) { public static double min(double a, double b) {
if (a != a) return a; // a is NaN if (a != a)
if ((a == 0.0d) && (b == 0.0d) return a; // a is NaN
&& (Double.doubleToLongBits(b) == negativeZeroDoubleBits)) { if ((a == 0.0d) &&
(b == 0.0d) &&
(Double.doubleToRawLongBits(b) == negativeZeroDoubleBits)) {
// Raw conversion ok since NaN can't map to -0.0.
return b; return b;
} }
return (a <= b) ? a : b; return (a <= b) ? a : b;
......
...@@ -209,7 +209,7 @@ class Thread implements Runnable { ...@@ -209,7 +209,7 @@ class Thread implements Runnable {
* initialized to indicate thread 'not yet started' * initialized to indicate thread 'not yet started'
*/ */
private int threadStatus = 0; private volatile int threadStatus = 0;
private static synchronized long nextThreadID() { private static synchronized long nextThreadID() {
......
...@@ -275,18 +275,17 @@ public abstract class Charset ...@@ -275,18 +275,17 @@ public abstract class Charset
/* -- Static methods -- */ /* -- Static methods -- */
private static String bugLevel = null; private static volatile String bugLevel = null;
static boolean atBugLevel(String bl) { // package-private static boolean atBugLevel(String bl) { // package-private
if (bugLevel == null) { String level = bugLevel;
if (level == null) {
if (!sun.misc.VM.isBooted()) if (!sun.misc.VM.isBooted())
return false; return false;
bugLevel = AccessController.doPrivileged( bugLevel = level = AccessController.doPrivileged(
new GetPropertyAction("sun.nio.cs.bugLevel")); new GetPropertyAction("sun.nio.cs.bugLevel", ""));
if (bugLevel == null)
bugLevel = "";
} }
return (bugLevel != null) && bugLevel.equals(bl); return level.equals(bl);
} }
/** /**
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
package java.security; package java.security;
import java.io.Serializable; import java.io.*;
import java.security.cert.CRL; import java.security.cert.CRL;
import java.security.cert.CertPath; import java.security.cert.CertPath;
import sun.misc.JavaSecurityCodeSignerAccess; import sun.misc.JavaSecurityCodeSignerAccess;
...@@ -205,4 +205,10 @@ public final class CodeSigner implements Serializable { ...@@ -205,4 +205,10 @@ public final class CodeSigner implements Serializable {
}); });
} }
// Explicitly reset hash code value to -1
private void readObject(ObjectInputStream ois)
throws IOException, ClassNotFoundException {
ois.defaultReadObject();
myhash = -1;
}
} }
/* /*
* Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -25,10 +25,12 @@ ...@@ -25,10 +25,12 @@
package java.security; package java.security;
import java.io.Serializable; import java.io.*;
import java.security.cert.Certificate;
import java.security.cert.CertPath; import java.security.cert.CertPath;
import java.security.cert.X509Extension; import java.security.cert.X509Extension;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* This class encapsulates information about a signed timestamp. * This class encapsulates information about a signed timestamp.
...@@ -142,8 +144,20 @@ public final class Timestamp implements Serializable { ...@@ -142,8 +144,20 @@ public final class Timestamp implements Serializable {
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
sb.append("("); sb.append("(");
sb.append("timestamp: " + timestamp); sb.append("timestamp: " + timestamp);
sb.append("TSA: " + signerCertPath.getCertificates().get(0)); List<? extends Certificate> certs = signerCertPath.getCertificates();
if (!certs.isEmpty()) {
sb.append("TSA: " + certs.get(0));
} else {
sb.append("TSA: <empty>");
}
sb.append(")"); sb.append(")");
return sb.toString(); return sb.toString();
} }
// Explicitly reset hash code value to -1
private void readObject(ObjectInputStream ois)
throws IOException, ClassNotFoundException {
ois.defaultReadObject();
myhash = -1;
}
} }
/* /*
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -32,7 +32,7 @@ import java.util.Map; ...@@ -32,7 +32,7 @@ import java.util.Map;
import java.util.Set; import java.util.Set;
/** /**
* An AttributedCharacterIterator allows iteration through both text and * An {@code AttributedCharacterIterator} allows iteration through both text and
* related attribute information. * related attribute information.
* *
* <p> * <p>
...@@ -46,22 +46,28 @@ import java.util.Set; ...@@ -46,22 +46,28 @@ import java.util.Set;
* <p>A <em>run with respect to an attribute</em> is a maximum text range for * <p>A <em>run with respect to an attribute</em> is a maximum text range for
* which: * which:
* <ul> * <ul>
* <li>the attribute is undefined or null for the entire range, or * <li>the attribute is undefined or {@code null} for the entire range, or
* <li>the attribute value is defined and has the same non-null value for the * <li>the attribute value is defined and has the same non-{@code null} value for the
* entire range. * entire range.
* </ul> * </ul>
* *
* <p>A <em>run with respect to a set of attributes</em> is a maximum text range for * <p>A <em>run with respect to a set of attributes</em> is a maximum text range for
* which this condition is met for each member attribute. * which this condition is met for each member attribute.
* *
* <p>When getting a run with no explicit attributes specified (i.e.,
* calling {@link #getRunStart()} and {@link #getRunLimit()}), any
* contiguous text segments having the same attributes (the same set
* of attribute/value pairs) are treated as separate runs if the
* attributes have been given to those text segments separately.
*
* <p>The returned indexes are limited to the range of the iterator. * <p>The returned indexes are limited to the range of the iterator.
* *
* <p>The returned attribute information is limited to runs that contain * <p>The returned attribute information is limited to runs that contain
* the current character. * the current character.
* *
* <p> * <p>
* Attribute keys are instances of AttributedCharacterIterator.Attribute and its * Attribute keys are instances of {@link AttributedCharacterIterator.Attribute} and its
* subclasses, such as java.awt.font.TextAttribute. * subclasses, such as {@link java.awt.font.TextAttribute}.
* *
* @see AttributedCharacterIterator.Attribute * @see AttributedCharacterIterator.Attribute
* @see java.awt.font.TextAttribute * @see java.awt.font.TextAttribute
...@@ -74,7 +80,7 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -74,7 +80,7 @@ public interface AttributedCharacterIterator extends CharacterIterator {
/** /**
* Defines attribute keys that are used to identify text attributes. These * Defines attribute keys that are used to identify text attributes. These
* keys are used in AttributedCharacterIterator and AttributedString. * keys are used in {@code AttributedCharacterIterator} and {@code AttributedString}.
* @see AttributedCharacterIterator * @see AttributedCharacterIterator
* @see AttributedString * @see AttributedString
* @since 1.2 * @since 1.2
...@@ -83,7 +89,7 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -83,7 +89,7 @@ public interface AttributedCharacterIterator extends CharacterIterator {
public static class Attribute implements Serializable { public static class Attribute implements Serializable {
/** /**
* The name of this Attribute. The name is used primarily by readResolve * The name of this {@code Attribute}. The name is used primarily by {@code readResolve}
* to look up the corresponding predefined instance when deserializing * to look up the corresponding predefined instance when deserializing
* an instance. * an instance.
* @serial * @serial
...@@ -94,7 +100,7 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -94,7 +100,7 @@ public interface AttributedCharacterIterator extends CharacterIterator {
private static final Map instanceMap = new HashMap(7); private static final Map instanceMap = new HashMap(7);
/** /**
* Constructs an Attribute with the given name. * Constructs an {@code Attribute} with the given name.
*/ */
protected Attribute(String name) { protected Attribute(String name) {
this.name = name; this.name = name;
...@@ -114,7 +120,7 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -114,7 +120,7 @@ public interface AttributedCharacterIterator extends CharacterIterator {
/** /**
* Returns a hash code value for the object. This version is identical to * Returns a hash code value for the object. This version is identical to
* the one in Object, but is also final. * the one in {@code Object}, but is also final.
*/ */
public final int hashCode() { public final int hashCode() {
return super.hashCode(); return super.hashCode();
...@@ -122,7 +128,8 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -122,7 +128,8 @@ public interface AttributedCharacterIterator extends CharacterIterator {
/** /**
* Returns a string representation of the object. This version returns the * Returns a string representation of the object. This version returns the
* concatenation of class name, "(", a name identifying the attribute and ")". * concatenation of class name, {@code "("}, a name identifying the attribute
* and {@code ")"}.
*/ */
public String toString() { public String toString() {
return getClass().getName() + "(" + name + ")"; return getClass().getName() + "(" + name + ")";
...@@ -153,7 +160,7 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -153,7 +160,7 @@ public interface AttributedCharacterIterator extends CharacterIterator {
/** /**
* Attribute key for the language of some text. * Attribute key for the language of some text.
* <p> Values are instances of Locale. * <p> Values are instances of {@link java.util.Locale Locale}.
* @see java.util.Locale * @see java.util.Locale
*/ */
public static final Attribute LANGUAGE = new Attribute("language"); public static final Attribute LANGUAGE = new Attribute("language");
...@@ -163,7 +170,7 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -163,7 +170,7 @@ public interface AttributedCharacterIterator extends CharacterIterator {
* and the pronunciation of a word are only loosely related (such as Japanese), * and the pronunciation of a word are only loosely related (such as Japanese),
* it is often necessary to store the reading (pronunciation) along with the * it is often necessary to store the reading (pronunciation) along with the
* written form. * written form.
* <p>Values are instances of Annotation holding instances of String. * <p>Values are instances of {@link Annotation} holding instances of {@link String}.
* @see Annotation * @see Annotation
* @see java.lang.String * @see java.lang.String
*/ */
...@@ -172,7 +179,7 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -172,7 +179,7 @@ public interface AttributedCharacterIterator extends CharacterIterator {
/** /**
* Attribute key for input method segments. Input methods often break * Attribute key for input method segments. Input methods often break
* up text into segments, which usually correspond to words. * up text into segments, which usually correspond to words.
* <p>Values are instances of Annotation holding a null reference. * <p>Values are instances of {@link Annotation} holding a {@code null} reference.
* @see Annotation * @see Annotation
*/ */
public static final Attribute INPUT_METHOD_SEGMENT = new Attribute("input_method_segment"); public static final Attribute INPUT_METHOD_SEGMENT = new Attribute("input_method_segment");
...@@ -185,36 +192,44 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -185,36 +192,44 @@ public interface AttributedCharacterIterator extends CharacterIterator {
/** /**
* Returns the index of the first character of the run * Returns the index of the first character of the run
* with respect to all attributes containing the current character. * with respect to all attributes containing the current character.
*
* <p>Any contiguous text segments having the same attributes (the
* same set of attribute/value pairs) are treated as separate runs
* if the attributes have been given to those text segments separately.
*/ */
public int getRunStart(); public int getRunStart();
/** /**
* Returns the index of the first character of the run * Returns the index of the first character of the run
* with respect to the given attribute containing the current character. * with respect to the given {@code attribute} containing the current character.
*/ */
public int getRunStart(Attribute attribute); public int getRunStart(Attribute attribute);
/** /**
* Returns the index of the first character of the run * Returns the index of the first character of the run
* with respect to the given attributes containing the current character. * with respect to the given {@code attributes} containing the current character.
*/ */
public int getRunStart(Set<? extends Attribute> attributes); public int getRunStart(Set<? extends Attribute> attributes);
/** /**
* Returns the index of the first character following the run * Returns the index of the first character following the run
* with respect to all attributes containing the current character. * with respect to all attributes containing the current character.
*
* <p>Any contiguous text segments having the same attributes (the
* same set of attribute/value pairs) are treated as separate runs
* if the attributes have been given to those text segments separately.
*/ */
public int getRunLimit(); public int getRunLimit();
/** /**
* Returns the index of the first character following the run * Returns the index of the first character following the run
* with respect to the given attribute containing the current character. * with respect to the given {@code attribute} containing the current character.
*/ */
public int getRunLimit(Attribute attribute); public int getRunLimit(Attribute attribute);
/** /**
* Returns the index of the first character following the run * Returns the index of the first character following the run
* with respect to the given attributes containing the current character. * with respect to the given {@code attributes} containing the current character.
*/ */
public int getRunLimit(Set<? extends Attribute> attributes); public int getRunLimit(Set<? extends Attribute> attributes);
...@@ -225,9 +240,8 @@ public interface AttributedCharacterIterator extends CharacterIterator { ...@@ -225,9 +240,8 @@ public interface AttributedCharacterIterator extends CharacterIterator {
public Map<Attribute,Object> getAttributes(); public Map<Attribute,Object> getAttributes();
/** /**
* Returns the value of the named attribute for the current character. * Returns the value of the named {@code attribute} for the current character.
* Returns null if the attribute is not defined. * Returns {@code null} if the {@code attribute} is not defined.
* @param attribute the key of the attribute whose value is requested.
*/ */
public Object getAttribute(Attribute attribute); public Object getAttribute(Attribute attribute);
......
...@@ -79,9 +79,13 @@ import sun.text.normalizer.NormalizerBase; ...@@ -79,9 +79,13 @@ import sun.text.normalizer.NormalizerBase;
* <pre> * <pre>
* *
* String testString = "This is a test"; * String testString = "This is a test";
* RuleBasedCollator ruleBasedCollator = (RuleBasedCollator)Collator.getInstance(); * Collator col = Collator.getInstance();
* CollationElementIterator collationElementIterator = ruleBasedCollator.getCollationElementIterator(testString); * if (col instanceof RuleBasedCollator) {
* int primaryOrder = CollationElementIterator.primaryOrder(collationElementIterator.next()); * RuleBasedCollator ruleBasedCollator = (RuleBasedCollator)col;
* CollationElementIterator collationElementIterator = ruleBasedCollator.getCollationElementIterator(testString);
* int primaryOrder = CollationElementIterator.primaryOrder(collationElementIterator.next());
* :
* }
* </pre> * </pre>
* </blockquote> * </blockquote>
* *
...@@ -93,6 +97,10 @@ import sun.text.normalizer.NormalizerBase; ...@@ -93,6 +97,10 @@ import sun.text.normalizer.NormalizerBase;
* is its primary order; the next 8 bits is the secondary order and the * is its primary order; the next 8 bits is the secondary order and the
* last 8 bits is the tertiary order. * last 8 bits is the tertiary order.
* *
* <p><b>Note:</b> <code>CollationElementIterator</code> is a part of
* <code>RuleBasedCollator</code> implementation. It is only usable
* with <code>RuleBasedCollator</code> instances.
*
* @see Collator * @see Collator
* @see RuleBasedCollator * @see RuleBasedCollator
* @author Helena Shih, Laura Werner, Richard Gillam * @author Helena Shih, Laura Werner, Richard Gillam
......
/* /*
* Copyright (c) 1997, 2006, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -180,11 +180,15 @@ import java.util.Locale; ...@@ -180,11 +180,15 @@ import java.util.Locale;
* *
* <p><strong>Examples</strong> * <p><strong>Examples</strong>
* <p>Simple: "&lt; a &lt; b &lt; c &lt; d" * <p>Simple: "&lt; a &lt; b &lt; c &lt; d"
* <p>Norwegian: "&lt; a,A&lt; b,B&lt; c,C&lt; d,D&lt; e,E&lt; f,F&lt; g,G&lt; h,H&lt; i,I&lt; j,J * <p>Norwegian: "&lt; a, A &lt; b, B &lt; c, C &lt; d, D &lt; e, E &lt; f, F
* &lt; k,K&lt; l,L&lt; m,M&lt; n,N&lt; o,O&lt; p,P&lt; q,Q&lt; r,R&lt; s,S&lt; t,T * &lt; g, G &lt; h, H &lt; i, I &lt; j, J &lt; k, K &lt; l, L
* &lt; u,U&lt; v,V&lt; w,W&lt; x,X&lt; y,Y&lt; z,Z * &lt; m, M &lt; n, N &lt; o, O &lt; p, P &lt; q, Q &lt; r, R
* &lt; &#92;u00E5=a&#92;u030A,&#92;u00C5=A&#92;u030A * &lt; s, S &lt; t, T &lt; u, U &lt; v, V &lt; w, W &lt; x, X
* ;aa,AA&lt; &#92;u00E6,&#92;u00C6&lt; &#92;u00F8,&#92;u00D8" * &lt; y, Y &lt; z, Z
* &lt; &#92;u00E6, &#92;u00C6
* &lt; &#92;u00F8, &#92;u00D8
* &lt; &#92;u00E5 = a&#92;u030A, &#92;u00C5 = A&#92;u030A;
* aa, AA"
* *
* <p> * <p>
* To create a <code>RuleBasedCollator</code> object with specialized * To create a <code>RuleBasedCollator</code> object with specialized
...@@ -199,11 +203,14 @@ import java.util.Locale; ...@@ -199,11 +203,14 @@ import java.util.Locale;
* Or: * Or:
* <blockquote> * <blockquote>
* <pre> * <pre>
* String Norwegian = "&lt; a,A&lt; b,B&lt; c,C&lt; d,D&lt; e,E&lt; f,F&lt; g,G&lt; h,H&lt; i,I&lt; j,J" + * String Norwegian = "&lt; a, A &lt; b, B &lt; c, C &lt; d, D &lt; e, E &lt; f, F &lt; g, G &lt; h, H &lt; i, I" +
* "&lt; k,K&lt; l,L&lt; m,M&lt; n,N&lt; o,O&lt; p,P&lt; q,Q&lt; r,R&lt; s,S&lt; t,T" + * "&lt; j, J &lt; k, K &lt; l, L &lt; m, M &lt; n, N &lt; o, O &lt; p, P &lt; q, Q &lt; r, R" +
* "&lt; u,U&lt; v,V&lt; w,W&lt; x,X&lt; y,Y&lt; z,Z" + * "&lt; s, S &lt; t, T &lt; u, U &lt; v, V &lt; w, W &lt; x, X &lt; y, Y &lt; z, Z" +
* "&lt; &#92;u00E5=a&#92;u030A,&#92;u00C5=A&#92;u030A" + * "&lt; &#92;u00E6, &#92;u00C6" + // Latin letter ae & AE
* ";aa,AA&lt; &#92;u00E6,&#92;u00C6&lt; &#92;u00F8,&#92;u00D8"; * "&lt; &#92;u00F8, &#92;u00D8" + // Latin letter o & O with stroke
* "&lt; &#92;u00E5 = a&#92;u030A," + // Latin letter a with ring above
* " &#92;u00C5 = A&#92;u030A;" + // Latin letter A with ring above
* " aa, AA";
* RuleBasedCollator myNorwegian = new RuleBasedCollator(Norwegian); * RuleBasedCollator myNorwegian = new RuleBasedCollator(Norwegian);
* </pre> * </pre>
* </blockquote> * </blockquote>
......
...@@ -1839,8 +1839,15 @@ public class SimpleDateFormat extends DateFormat { ...@@ -1839,8 +1839,15 @@ public class SimpleDateFormat extends DateFormat {
break parsing; break parsing;
case PATTERN_HOUR_OF_DAY1: // 'k' 1-based. eg, 23:59 + 1 hour =>> 24:59 case PATTERN_HOUR_OF_DAY1: // 'k' 1-based. eg, 23:59 + 1 hour =>> 24:59
if (!isLenient()) {
// Validate the hour value in non-lenient
if (value < 1 || value > 24) {
break parsing;
}
}
// [We computed 'value' above.] // [We computed 'value' above.]
if (value == calendar.getMaximum(Calendar.HOUR_OF_DAY)+1) value = 0; if (value == calendar.getMaximum(Calendar.HOUR_OF_DAY)+1)
value = 0;
calb.set(Calendar.HOUR_OF_DAY, value); calb.set(Calendar.HOUR_OF_DAY, value);
return pos.index; return pos.index;
...@@ -1886,8 +1893,15 @@ public class SimpleDateFormat extends DateFormat { ...@@ -1886,8 +1893,15 @@ public class SimpleDateFormat extends DateFormat {
break parsing; break parsing;
case PATTERN_HOUR1: // 'h' 1-based. eg, 11PM + 1 hour =>> 12 AM case PATTERN_HOUR1: // 'h' 1-based. eg, 11PM + 1 hour =>> 12 AM
if (!isLenient()) {
// Validate the hour value in non-lenient
if (value < 1 || value > 12) {
break parsing;
}
}
// [We computed 'value' above.] // [We computed 'value' above.]
if (value == calendar.getLeastMaximum(Calendar.HOUR)+1) value = 0; if (value == calendar.getLeastMaximum(Calendar.HOUR)+1)
value = 0;
calb.set(Calendar.HOUR, value); calb.set(Calendar.HOUR, value);
return pos.index; return pos.index;
......
...@@ -96,14 +96,14 @@ public abstract class AbstractCollection<E> implements Collection<E> { ...@@ -96,14 +96,14 @@ public abstract class AbstractCollection<E> implements Collection<E> {
* @throws NullPointerException {@inheritDoc} * @throws NullPointerException {@inheritDoc}
*/ */
public boolean contains(Object o) { public boolean contains(Object o) {
Iterator<E> e = iterator(); Iterator<E> it = iterator();
if (o==null) { if (o==null) {
while (e.hasNext()) while (it.hasNext())
if (e.next()==null) if (it.next()==null)
return true; return true;
} else { } else {
while (e.hasNext()) while (it.hasNext())
if (o.equals(e.next())) if (o.equals(it.next()))
return true; return true;
} }
return false; return false;
...@@ -269,18 +269,18 @@ public abstract class AbstractCollection<E> implements Collection<E> { ...@@ -269,18 +269,18 @@ public abstract class AbstractCollection<E> implements Collection<E> {
* @throws NullPointerException {@inheritDoc} * @throws NullPointerException {@inheritDoc}
*/ */
public boolean remove(Object o) { public boolean remove(Object o) {
Iterator<E> e = iterator(); Iterator<E> it = iterator();
if (o==null) { if (o==null) {
while (e.hasNext()) { while (it.hasNext()) {
if (e.next()==null) { if (it.next()==null) {
e.remove(); it.remove();
return true; return true;
} }
} }
} else { } else {
while (e.hasNext()) { while (it.hasNext()) {
if (o.equals(e.next())) { if (o.equals(it.next())) {
e.remove(); it.remove();
return true; return true;
} }
} }
...@@ -304,9 +304,8 @@ public abstract class AbstractCollection<E> implements Collection<E> { ...@@ -304,9 +304,8 @@ public abstract class AbstractCollection<E> implements Collection<E> {
* @see #contains(Object) * @see #contains(Object)
*/ */
public boolean containsAll(Collection<?> c) { public boolean containsAll(Collection<?> c) {
Iterator<?> e = c.iterator(); for (Object e : c)
while (e.hasNext()) if (!contains(e))
if (!contains(e.next()))
return false; return false;
return true; return true;
} }
...@@ -331,11 +330,9 @@ public abstract class AbstractCollection<E> implements Collection<E> { ...@@ -331,11 +330,9 @@ public abstract class AbstractCollection<E> implements Collection<E> {
*/ */
public boolean addAll(Collection<? extends E> c) { public boolean addAll(Collection<? extends E> c) {
boolean modified = false; boolean modified = false;
Iterator<? extends E> e = c.iterator(); for (E e : c)
while (e.hasNext()) { if (add(e))
if (add(e.next()))
modified = true; modified = true;
}
return modified; return modified;
} }
...@@ -362,10 +359,10 @@ public abstract class AbstractCollection<E> implements Collection<E> { ...@@ -362,10 +359,10 @@ public abstract class AbstractCollection<E> implements Collection<E> {
*/ */
public boolean removeAll(Collection<?> c) { public boolean removeAll(Collection<?> c) {
boolean modified = false; boolean modified = false;
Iterator<?> e = iterator(); Iterator<?> it = iterator();
while (e.hasNext()) { while (it.hasNext()) {
if (c.contains(e.next())) { if (c.contains(it.next())) {
e.remove(); it.remove();
modified = true; modified = true;
} }
} }
...@@ -395,10 +392,10 @@ public abstract class AbstractCollection<E> implements Collection<E> { ...@@ -395,10 +392,10 @@ public abstract class AbstractCollection<E> implements Collection<E> {
*/ */
public boolean retainAll(Collection<?> c) { public boolean retainAll(Collection<?> c) {
boolean modified = false; boolean modified = false;
Iterator<E> e = iterator(); Iterator<E> it = iterator();
while (e.hasNext()) { while (it.hasNext()) {
if (!c.contains(e.next())) { if (!c.contains(it.next())) {
e.remove(); it.remove();
modified = true; modified = true;
} }
} }
...@@ -421,10 +418,10 @@ public abstract class AbstractCollection<E> implements Collection<E> { ...@@ -421,10 +418,10 @@ public abstract class AbstractCollection<E> implements Collection<E> {
* @throws UnsupportedOperationException {@inheritDoc} * @throws UnsupportedOperationException {@inheritDoc}
*/ */
public void clear() { public void clear() {
Iterator<E> e = iterator(); Iterator<E> it = iterator();
while (e.hasNext()) { while (it.hasNext()) {
e.next(); it.next();
e.remove(); it.remove();
} }
} }
...@@ -442,18 +439,18 @@ public abstract class AbstractCollection<E> implements Collection<E> { ...@@ -442,18 +439,18 @@ public abstract class AbstractCollection<E> implements Collection<E> {
* @return a string representation of this collection * @return a string representation of this collection
*/ */
public String toString() { public String toString() {
Iterator<E> i = iterator(); Iterator<E> it = iterator();
if (! i.hasNext()) if (! it.hasNext())
return "[]"; return "[]";
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
sb.append('['); sb.append('[');
for (;;) { for (;;) {
E e = i.next(); E e = it.next();
sb.append(e == this ? "(this Collection)" : e); sb.append(e == this ? "(this Collection)" : e);
if (! i.hasNext()) if (! it.hasNext())
return sb.append(']').toString(); return sb.append(']').toString();
sb.append(", "); sb.append(',').append(' ');
} }
} }
......
...@@ -175,15 +175,15 @@ public abstract class AbstractList<E> extends AbstractCollection<E> implements L ...@@ -175,15 +175,15 @@ public abstract class AbstractList<E> extends AbstractCollection<E> implements L
* @throws NullPointerException {@inheritDoc} * @throws NullPointerException {@inheritDoc}
*/ */
public int indexOf(Object o) { public int indexOf(Object o) {
ListIterator<E> e = listIterator(); ListIterator<E> it = listIterator();
if (o==null) { if (o==null) {
while (e.hasNext()) while (it.hasNext())
if (e.next()==null) if (it.next()==null)
return e.previousIndex(); return it.previousIndex();
} else { } else {
while (e.hasNext()) while (it.hasNext())
if (o.equals(e.next())) if (o.equals(it.next()))
return e.previousIndex(); return it.previousIndex();
} }
return -1; return -1;
} }
...@@ -200,15 +200,15 @@ public abstract class AbstractList<E> extends AbstractCollection<E> implements L ...@@ -200,15 +200,15 @@ public abstract class AbstractList<E> extends AbstractCollection<E> implements L
* @throws NullPointerException {@inheritDoc} * @throws NullPointerException {@inheritDoc}
*/ */
public int lastIndexOf(Object o) { public int lastIndexOf(Object o) {
ListIterator<E> e = listIterator(size()); ListIterator<E> it = listIterator(size());
if (o==null) { if (o==null) {
while (e.hasPrevious()) while (it.hasPrevious())
if (e.previous()==null) if (it.previous()==null)
return e.nextIndex(); return it.nextIndex();
} else { } else {
while (e.hasPrevious()) while (it.hasPrevious())
if (o.equals(e.previous())) if (o.equals(it.previous()))
return e.nextIndex(); return it.nextIndex();
} }
return -1; return -1;
} }
...@@ -517,7 +517,7 @@ public abstract class AbstractList<E> extends AbstractCollection<E> implements L ...@@ -517,7 +517,7 @@ public abstract class AbstractList<E> extends AbstractCollection<E> implements L
ListIterator<E> e1 = listIterator(); ListIterator<E> e1 = listIterator();
ListIterator e2 = ((List) o).listIterator(); ListIterator e2 = ((List) o).listIterator();
while(e1.hasNext() && e2.hasNext()) { while (e1.hasNext() && e2.hasNext()) {
E o1 = e1.next(); E o1 = e1.next();
Object o2 = e2.next(); Object o2 = e2.next();
if (!(o1==null ? o2==null : o1.equals(o2))) if (!(o1==null ? o2==null : o1.equals(o2)))
......
...@@ -523,7 +523,7 @@ public abstract class AbstractMap<K,V> implements Map<K,V> { ...@@ -523,7 +523,7 @@ public abstract class AbstractMap<K,V> implements Map<K,V> {
sb.append(value == this ? "(this Map)" : value); sb.append(value == this ? "(this Map)" : value);
if (! i.hasNext()) if (! i.hasNext())
return sb.append('}').toString(); return sb.append('}').toString();
sb.append(", "); sb.append(',').append(' ');
} }
} }
......
...@@ -120,9 +120,9 @@ public class ArrayList<E> extends AbstractList<E> ...@@ -120,9 +120,9 @@ public class ArrayList<E> extends AbstractList<E>
/** /**
* Constructs an empty list with the specified initial capacity. * Constructs an empty list with the specified initial capacity.
* *
* @param initialCapacity the initial capacity of the list * @param initialCapacity the initial capacity of the list
* @exception IllegalArgumentException if the specified initial capacity * @throws IllegalArgumentException if the specified initial capacity
* is negative * is negative
*/ */
public ArrayList(int initialCapacity) { public ArrayList(int initialCapacity) {
super(); super();
...@@ -173,7 +173,7 @@ public class ArrayList<E> extends AbstractList<E> ...@@ -173,7 +173,7 @@ public class ArrayList<E> extends AbstractList<E>
* necessary, to ensure that it can hold at least the number of elements * necessary, to ensure that it can hold at least the number of elements
* specified by the minimum capacity argument. * specified by the minimum capacity argument.
* *
* @param minCapacity the desired minimum capacity * @param minCapacity the desired minimum capacity
*/ */
public void ensureCapacity(int minCapacity) { public void ensureCapacity(int minCapacity) {
if (minCapacity > 0) if (minCapacity > 0)
......
...@@ -124,7 +124,7 @@ public class Collections { ...@@ -124,7 +124,7 @@ public class Collections {
* *
* <p>The implementation takes equal advantage of ascending and * <p>The implementation takes equal advantage of ascending and
* descending order in its input array, and can take advantage of * descending order in its input array, and can take advantage of
* ascending and descending order in different parts of the the same * ascending and descending order in different parts of the same
* input array. It is well-suited to merging two or more sorted arrays: * input array. It is well-suited to merging two or more sorted arrays:
* simply concatenate the arrays and sort the resulting array. * simply concatenate the arrays and sort the resulting array.
* *
...@@ -184,7 +184,7 @@ public class Collections { ...@@ -184,7 +184,7 @@ public class Collections {
* *
* <p>The implementation takes equal advantage of ascending and * <p>The implementation takes equal advantage of ascending and
* descending order in its input array, and can take advantage of * descending order in its input array, and can take advantage of
* ascending and descending order in different parts of the the same * ascending and descending order in different parts of the same
* input array. It is well-suited to merging two or more sorted arrays: * input array. It is well-suited to merging two or more sorted arrays:
* simply concatenate the arrays and sort the resulting array. * simply concatenate the arrays and sort the resulting array.
* *
...@@ -823,7 +823,7 @@ public class Collections { ...@@ -823,7 +823,7 @@ public class Collections {
i -= size; i -= size;
displaced = list.set(i, displaced); displaced = list.set(i, displaced);
nMoved ++; nMoved ++;
} while(i != cycleStart); } while (i != cycleStart);
} }
} }
...@@ -1452,9 +1452,9 @@ public class Collections { ...@@ -1452,9 +1452,9 @@ public class Collections {
* when o is a Map.Entry, and calls o.setValue. * when o is a Map.Entry, and calls o.setValue.
*/ */
public boolean containsAll(Collection<?> coll) { public boolean containsAll(Collection<?> coll) {
Iterator<?> e = coll.iterator(); Iterator<?> it = coll.iterator();
while (e.hasNext()) while (it.hasNext())
if (!contains(e.next())) // Invokes safe contains() above if (!contains(it.next())) // Invokes safe contains() above
return false; return false;
return true; return true;
} }
...@@ -1482,12 +1482,12 @@ public class Collections { ...@@ -1482,12 +1482,12 @@ public class Collections {
UnmodifiableEntry(Map.Entry<? extends K, ? extends V> e) {this.e = e;} UnmodifiableEntry(Map.Entry<? extends K, ? extends V> e) {this.e = e;}
public K getKey() {return e.getKey();} public K getKey() {return e.getKey();}
public V getValue() {return e.getValue();} public V getValue() {return e.getValue();}
public V setValue(V value) { public V setValue(V value) {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
} }
public int hashCode() {return e.hashCode();} public int hashCode() {return e.hashCode();}
public boolean equals(Object o) { public boolean equals(Object o) {
if (!(o instanceof Map.Entry)) if (!(o instanceof Map.Entry))
return false; return false;
...@@ -1495,7 +1495,7 @@ public class Collections { ...@@ -1495,7 +1495,7 @@ public class Collections {
return eq(e.getKey(), t.getKey()) && return eq(e.getKey(), t.getKey()) &&
eq(e.getValue(), t.getValue()); eq(e.getValue(), t.getValue());
} }
public String toString() {return e.toString();} public String toString() {return e.toString();}
} }
} }
} }
...@@ -1562,7 +1562,7 @@ public class Collections { ...@@ -1562,7 +1562,7 @@ public class Collections {
* <pre> * <pre>
* Collection c = Collections.synchronizedCollection(myCollection); * Collection c = Collections.synchronizedCollection(myCollection);
* ... * ...
* synchronized(c) { * synchronized (c) {
* Iterator i = c.iterator(); // Must be in the synchronized block * Iterator i = c.iterator(); // Must be in the synchronized block
* while (i.hasNext()) * while (i.hasNext())
* foo(i.next()); * foo(i.next());
...@@ -1611,19 +1611,19 @@ public class Collections { ...@@ -1611,19 +1611,19 @@ public class Collections {
} }
public int size() { public int size() {
synchronized(mutex) {return c.size();} synchronized (mutex) {return c.size();}
} }
public boolean isEmpty() { public boolean isEmpty() {
synchronized(mutex) {return c.isEmpty();} synchronized (mutex) {return c.isEmpty();}
} }
public boolean contains(Object o) { public boolean contains(Object o) {
synchronized(mutex) {return c.contains(o);} synchronized (mutex) {return c.contains(o);}
} }
public Object[] toArray() { public Object[] toArray() {
synchronized(mutex) {return c.toArray();} synchronized (mutex) {return c.toArray();}
} }
public <T> T[] toArray(T[] a) { public <T> T[] toArray(T[] a) {
synchronized(mutex) {return c.toArray(a);} synchronized (mutex) {return c.toArray(a);}
} }
public Iterator<E> iterator() { public Iterator<E> iterator() {
...@@ -1631,32 +1631,32 @@ public class Collections { ...@@ -1631,32 +1631,32 @@ public class Collections {
} }
public boolean add(E e) { public boolean add(E e) {
synchronized(mutex) {return c.add(e);} synchronized (mutex) {return c.add(e);}
} }
public boolean remove(Object o) { public boolean remove(Object o) {
synchronized(mutex) {return c.remove(o);} synchronized (mutex) {return c.remove(o);}
} }
public boolean containsAll(Collection<?> coll) { public boolean containsAll(Collection<?> coll) {
synchronized(mutex) {return c.containsAll(coll);} synchronized (mutex) {return c.containsAll(coll);}
} }
public boolean addAll(Collection<? extends E> coll) { public boolean addAll(Collection<? extends E> coll) {
synchronized(mutex) {return c.addAll(coll);} synchronized (mutex) {return c.addAll(coll);}
} }
public boolean removeAll(Collection<?> coll) { public boolean removeAll(Collection<?> coll) {
synchronized(mutex) {return c.removeAll(coll);} synchronized (mutex) {return c.removeAll(coll);}
} }
public boolean retainAll(Collection<?> coll) { public boolean retainAll(Collection<?> coll) {
synchronized(mutex) {return c.retainAll(coll);} synchronized (mutex) {return c.retainAll(coll);}
} }
public void clear() { public void clear() {
synchronized(mutex) {c.clear();} synchronized (mutex) {c.clear();}
} }
public String toString() { public String toString() {
synchronized(mutex) {return c.toString();} synchronized (mutex) {return c.toString();}
} }
private void writeObject(ObjectOutputStream s) throws IOException { private void writeObject(ObjectOutputStream s) throws IOException {
synchronized(mutex) {s.defaultWriteObject();} synchronized (mutex) {s.defaultWriteObject();}
} }
} }
...@@ -1671,7 +1671,7 @@ public class Collections { ...@@ -1671,7 +1671,7 @@ public class Collections {
* <pre> * <pre>
* Set s = Collections.synchronizedSet(new HashSet()); * Set s = Collections.synchronizedSet(new HashSet());
* ... * ...
* synchronized(s) { * synchronized (s) {
* Iterator i = s.iterator(); // Must be in the synchronized block * Iterator i = s.iterator(); // Must be in the synchronized block
* while (i.hasNext()) * while (i.hasNext())
* foo(i.next()); * foo(i.next());
...@@ -1709,10 +1709,10 @@ public class Collections { ...@@ -1709,10 +1709,10 @@ public class Collections {
} }
public boolean equals(Object o) { public boolean equals(Object o) {
synchronized(mutex) {return c.equals(o);} synchronized (mutex) {return c.equals(o);}
} }
public int hashCode() { public int hashCode() {
synchronized(mutex) {return c.hashCode();} synchronized (mutex) {return c.hashCode();}
} }
} }
...@@ -1728,7 +1728,7 @@ public class Collections { ...@@ -1728,7 +1728,7 @@ public class Collections {
* <pre> * <pre>
* SortedSet s = Collections.synchronizedSortedSet(new TreeSet()); * SortedSet s = Collections.synchronizedSortedSet(new TreeSet());
* ... * ...
* synchronized(s) { * synchronized (s) {
* Iterator i = s.iterator(); // Must be in the synchronized block * Iterator i = s.iterator(); // Must be in the synchronized block
* while (i.hasNext()) * while (i.hasNext())
* foo(i.next()); * foo(i.next());
...@@ -1739,7 +1739,7 @@ public class Collections { ...@@ -1739,7 +1739,7 @@ public class Collections {
* SortedSet s = Collections.synchronizedSortedSet(new TreeSet()); * SortedSet s = Collections.synchronizedSortedSet(new TreeSet());
* SortedSet s2 = s.headSet(foo); * SortedSet s2 = s.headSet(foo);
* ... * ...
* synchronized(s) { // Note: s, not s2!!! * synchronized (s) { // Note: s, not s2!!!
* Iterator i = s2.iterator(); // Must be in the synchronized block * Iterator i = s2.iterator(); // Must be in the synchronized block
* while (i.hasNext()) * while (i.hasNext())
* foo(i.next()); * foo(i.next());
...@@ -1766,7 +1766,7 @@ public class Collections { ...@@ -1766,7 +1766,7 @@ public class Collections {
{ {
private static final long serialVersionUID = 8695801310862127406L; private static final long serialVersionUID = 8695801310862127406L;
final private SortedSet<E> ss; private final SortedSet<E> ss;
SynchronizedSortedSet(SortedSet<E> s) { SynchronizedSortedSet(SortedSet<E> s) {
super(s); super(s);
...@@ -1778,31 +1778,31 @@ public class Collections { ...@@ -1778,31 +1778,31 @@ public class Collections {
} }
public Comparator<? super E> comparator() { public Comparator<? super E> comparator() {
synchronized(mutex) {return ss.comparator();} synchronized (mutex) {return ss.comparator();}
} }
public SortedSet<E> subSet(E fromElement, E toElement) { public SortedSet<E> subSet(E fromElement, E toElement) {
synchronized(mutex) { synchronized (mutex) {
return new SynchronizedSortedSet<E>( return new SynchronizedSortedSet<E>(
ss.subSet(fromElement, toElement), mutex); ss.subSet(fromElement, toElement), mutex);
} }
} }
public SortedSet<E> headSet(E toElement) { public SortedSet<E> headSet(E toElement) {
synchronized(mutex) { synchronized (mutex) {
return new SynchronizedSortedSet<E>(ss.headSet(toElement), mutex); return new SynchronizedSortedSet<E>(ss.headSet(toElement), mutex);
} }
} }
public SortedSet<E> tailSet(E fromElement) { public SortedSet<E> tailSet(E fromElement) {
synchronized(mutex) { synchronized (mutex) {
return new SynchronizedSortedSet<E>(ss.tailSet(fromElement),mutex); return new SynchronizedSortedSet<E>(ss.tailSet(fromElement),mutex);
} }
} }
public E first() { public E first() {
synchronized(mutex) {return ss.first();} synchronized (mutex) {return ss.first();}
} }
public E last() { public E last() {
synchronized(mutex) {return ss.last();} synchronized (mutex) {return ss.last();}
} }
} }
...@@ -1817,7 +1817,7 @@ public class Collections { ...@@ -1817,7 +1817,7 @@ public class Collections {
* <pre> * <pre>
* List list = Collections.synchronizedList(new ArrayList()); * List list = Collections.synchronizedList(new ArrayList());
* ... * ...
* synchronized(list) { * synchronized (list) {
* Iterator i = list.iterator(); // Must be in synchronized block * Iterator i = list.iterator(); // Must be in synchronized block
* while (i.hasNext()) * while (i.hasNext())
* foo(i.next()); * foo(i.next());
...@@ -1863,34 +1863,34 @@ public class Collections { ...@@ -1863,34 +1863,34 @@ public class Collections {
} }
public boolean equals(Object o) { public boolean equals(Object o) {
synchronized(mutex) {return list.equals(o);} synchronized (mutex) {return list.equals(o);}
} }
public int hashCode() { public int hashCode() {
synchronized(mutex) {return list.hashCode();} synchronized (mutex) {return list.hashCode();}
} }
public E get(int index) { public E get(int index) {
synchronized(mutex) {return list.get(index);} synchronized (mutex) {return list.get(index);}
} }
public E set(int index, E element) { public E set(int index, E element) {
synchronized(mutex) {return list.set(index, element);} synchronized (mutex) {return list.set(index, element);}
} }
public void add(int index, E element) { public void add(int index, E element) {
synchronized(mutex) {list.add(index, element);} synchronized (mutex) {list.add(index, element);}
} }
public E remove(int index) { public E remove(int index) {
synchronized(mutex) {return list.remove(index);} synchronized (mutex) {return list.remove(index);}
} }
public int indexOf(Object o) { public int indexOf(Object o) {
synchronized(mutex) {return list.indexOf(o);} synchronized (mutex) {return list.indexOf(o);}
} }
public int lastIndexOf(Object o) { public int lastIndexOf(Object o) {
synchronized(mutex) {return list.lastIndexOf(o);} synchronized (mutex) {return list.lastIndexOf(o);}
} }
public boolean addAll(int index, Collection<? extends E> c) { public boolean addAll(int index, Collection<? extends E> c) {
synchronized(mutex) {return list.addAll(index, c);} synchronized (mutex) {return list.addAll(index, c);}
} }
public ListIterator<E> listIterator() { public ListIterator<E> listIterator() {
...@@ -1902,7 +1902,7 @@ public class Collections { ...@@ -1902,7 +1902,7 @@ public class Collections {
} }
public List<E> subList(int fromIndex, int toIndex) { public List<E> subList(int fromIndex, int toIndex) {
synchronized(mutex) { synchronized (mutex) {
return new SynchronizedList<E>(list.subList(fromIndex, toIndex), return new SynchronizedList<E>(list.subList(fromIndex, toIndex),
mutex); mutex);
} }
...@@ -1943,7 +1943,7 @@ public class Collections { ...@@ -1943,7 +1943,7 @@ public class Collections {
} }
public List<E> subList(int fromIndex, int toIndex) { public List<E> subList(int fromIndex, int toIndex) {
synchronized(mutex) { synchronized (mutex) {
return new SynchronizedRandomAccessList<E>( return new SynchronizedRandomAccessList<E>(
list.subList(fromIndex, toIndex), mutex); list.subList(fromIndex, toIndex), mutex);
} }
...@@ -1975,7 +1975,7 @@ public class Collections { ...@@ -1975,7 +1975,7 @@ public class Collections {
* ... * ...
* Set s = m.keySet(); // Needn't be in synchronized block * Set s = m.keySet(); // Needn't be in synchronized block
* ... * ...
* synchronized(m) { // Synchronizing on m, not s! * synchronized (m) { // Synchronizing on m, not s!
* Iterator i = s.iterator(); // Must be in synchronized block * Iterator i = s.iterator(); // Must be in synchronized block
* while (i.hasNext()) * while (i.hasNext())
* foo(i.next()); * foo(i.next());
...@@ -2016,32 +2016,32 @@ public class Collections { ...@@ -2016,32 +2016,32 @@ public class Collections {
} }
public int size() { public int size() {
synchronized(mutex) {return m.size();} synchronized (mutex) {return m.size();}
} }
public boolean isEmpty() { public boolean isEmpty() {
synchronized(mutex) {return m.isEmpty();} synchronized (mutex) {return m.isEmpty();}
} }
public boolean containsKey(Object key) { public boolean containsKey(Object key) {
synchronized(mutex) {return m.containsKey(key);} synchronized (mutex) {return m.containsKey(key);}
} }
public boolean containsValue(Object value) { public boolean containsValue(Object value) {
synchronized(mutex) {return m.containsValue(value);} synchronized (mutex) {return m.containsValue(value);}
} }
public V get(Object key) { public V get(Object key) {
synchronized(mutex) {return m.get(key);} synchronized (mutex) {return m.get(key);}
} }
public V put(K key, V value) { public V put(K key, V value) {
synchronized(mutex) {return m.put(key, value);} synchronized (mutex) {return m.put(key, value);}
} }
public V remove(Object key) { public V remove(Object key) {
synchronized(mutex) {return m.remove(key);} synchronized (mutex) {return m.remove(key);}
} }
public void putAll(Map<? extends K, ? extends V> map) { public void putAll(Map<? extends K, ? extends V> map) {
synchronized(mutex) {m.putAll(map);} synchronized (mutex) {m.putAll(map);}
} }
public void clear() { public void clear() {
synchronized(mutex) {m.clear();} synchronized (mutex) {m.clear();}
} }
private transient Set<K> keySet = null; private transient Set<K> keySet = null;
...@@ -2049,7 +2049,7 @@ public class Collections { ...@@ -2049,7 +2049,7 @@ public class Collections {
private transient Collection<V> values = null; private transient Collection<V> values = null;
public Set<K> keySet() { public Set<K> keySet() {
synchronized(mutex) { synchronized (mutex) {
if (keySet==null) if (keySet==null)
keySet = new SynchronizedSet<K>(m.keySet(), mutex); keySet = new SynchronizedSet<K>(m.keySet(), mutex);
return keySet; return keySet;
...@@ -2057,7 +2057,7 @@ public class Collections { ...@@ -2057,7 +2057,7 @@ public class Collections {
} }
public Set<Map.Entry<K,V>> entrySet() { public Set<Map.Entry<K,V>> entrySet() {
synchronized(mutex) { synchronized (mutex) {
if (entrySet==null) if (entrySet==null)
entrySet = new SynchronizedSet<Map.Entry<K,V>>(m.entrySet(), mutex); entrySet = new SynchronizedSet<Map.Entry<K,V>>(m.entrySet(), mutex);
return entrySet; return entrySet;
...@@ -2065,7 +2065,7 @@ public class Collections { ...@@ -2065,7 +2065,7 @@ public class Collections {
} }
public Collection<V> values() { public Collection<V> values() {
synchronized(mutex) { synchronized (mutex) {
if (values==null) if (values==null)
values = new SynchronizedCollection<V>(m.values(), mutex); values = new SynchronizedCollection<V>(m.values(), mutex);
return values; return values;
...@@ -2073,16 +2073,16 @@ public class Collections { ...@@ -2073,16 +2073,16 @@ public class Collections {
} }
public boolean equals(Object o) { public boolean equals(Object o) {
synchronized(mutex) {return m.equals(o);} synchronized (mutex) {return m.equals(o);}
} }
public int hashCode() { public int hashCode() {
synchronized(mutex) {return m.hashCode();} synchronized (mutex) {return m.hashCode();}
} }
public String toString() { public String toString() {
synchronized(mutex) {return m.toString();} synchronized (mutex) {return m.toString();}
} }
private void writeObject(ObjectOutputStream s) throws IOException { private void writeObject(ObjectOutputStream s) throws IOException {
synchronized(mutex) {s.defaultWriteObject();} synchronized (mutex) {s.defaultWriteObject();}
} }
} }
...@@ -2101,7 +2101,7 @@ public class Collections { ...@@ -2101,7 +2101,7 @@ public class Collections {
* ... * ...
* Set s = m.keySet(); // Needn't be in synchronized block * Set s = m.keySet(); // Needn't be in synchronized block
* ... * ...
* synchronized(m) { // Synchronizing on m, not s! * synchronized (m) { // Synchronizing on m, not s!
* Iterator i = s.iterator(); // Must be in synchronized block * Iterator i = s.iterator(); // Must be in synchronized block
* while (i.hasNext()) * while (i.hasNext())
* foo(i.next()); * foo(i.next());
...@@ -2114,7 +2114,7 @@ public class Collections { ...@@ -2114,7 +2114,7 @@ public class Collections {
* ... * ...
* Set s2 = m2.keySet(); // Needn't be in synchronized block * Set s2 = m2.keySet(); // Needn't be in synchronized block
* ... * ...
* synchronized(m) { // Synchronizing on m, not m2 or s2! * synchronized (m) { // Synchronizing on m, not m2 or s2!
* Iterator i = s.iterator(); // Must be in synchronized block * Iterator i = s.iterator(); // Must be in synchronized block
* while (i.hasNext()) * while (i.hasNext())
* foo(i.next()); * foo(i.next());
...@@ -2154,31 +2154,31 @@ public class Collections { ...@@ -2154,31 +2154,31 @@ public class Collections {
} }
public Comparator<? super K> comparator() { public Comparator<? super K> comparator() {
synchronized(mutex) {return sm.comparator();} synchronized (mutex) {return sm.comparator();}
} }
public SortedMap<K,V> subMap(K fromKey, K toKey) { public SortedMap<K,V> subMap(K fromKey, K toKey) {
synchronized(mutex) { synchronized (mutex) {
return new SynchronizedSortedMap<K,V>( return new SynchronizedSortedMap<K,V>(
sm.subMap(fromKey, toKey), mutex); sm.subMap(fromKey, toKey), mutex);
} }
} }
public SortedMap<K,V> headMap(K toKey) { public SortedMap<K,V> headMap(K toKey) {
synchronized(mutex) { synchronized (mutex) {
return new SynchronizedSortedMap<K,V>(sm.headMap(toKey), mutex); return new SynchronizedSortedMap<K,V>(sm.headMap(toKey), mutex);
} }
} }
public SortedMap<K,V> tailMap(K fromKey) { public SortedMap<K,V> tailMap(K fromKey) {
synchronized(mutex) { synchronized (mutex) {
return new SynchronizedSortedMap<K,V>(sm.tailMap(fromKey),mutex); return new SynchronizedSortedMap<K,V>(sm.tailMap(fromKey),mutex);
} }
} }
public K firstKey() { public K firstKey() {
synchronized(mutex) {return sm.firstKey();} synchronized (mutex) {return sm.firstKey();}
} }
public K lastKey() { public K lastKey() {
synchronized(mutex) {return sm.lastKey();} synchronized (mutex) {return sm.lastKey();}
} }
} }
...@@ -3317,7 +3317,7 @@ public class Collections { ...@@ -3317,7 +3317,7 @@ public class Collections {
{ {
private static final long serialVersionUID = 3193687207550431679L; private static final long serialVersionUID = 3193687207550431679L;
final private E element; private final E element;
SingletonSet(E e) {element = e;} SingletonSet(E e) {element = e;}
...@@ -3448,7 +3448,7 @@ public class Collections { ...@@ -3448,7 +3448,7 @@ public class Collections {
* @param o the element to appear repeatedly in the returned list. * @param o the element to appear repeatedly in the returned list.
* @return an immutable list consisting of <tt>n</tt> copies of the * @return an immutable list consisting of <tt>n</tt> copies of the
* specified object. * specified object.
* @throws IllegalArgumentException if n &lt; 0. * @throws IllegalArgumentException if {@code n < 0}
* @see List#addAll(Collection) * @see List#addAll(Collection)
* @see List#addAll(int, Collection) * @see List#addAll(int, Collection)
*/ */
......
...@@ -207,7 +207,7 @@ class ComparableTimSort { ...@@ -207,7 +207,7 @@ class ComparableTimSort {
* @param lo the index of the first element in the range to be sorted * @param lo the index of the first element in the range to be sorted
* @param hi the index after the last element in the range to be sorted * @param hi the index after the last element in the range to be sorted
* @param start the index of the first element in the range that is * @param start the index of the first element in the range that is
* not already known to be sorted (@code lo <= start <= hi} * not already known to be sorted ({@code lo <= start <= hi})
*/ */
@SuppressWarnings("fallthrough") @SuppressWarnings("fallthrough")
private static void binarySort(Object[] a, int lo, int hi, int start) { private static void binarySort(Object[] a, int lo, int hi, int start) {
...@@ -245,7 +245,7 @@ class ComparableTimSort { ...@@ -245,7 +245,7 @@ class ComparableTimSort {
*/ */
int n = start - left; // The number of elements to move int n = start - left; // The number of elements to move
// Switch is just an optimization for arraycopy in default case // Switch is just an optimization for arraycopy in default case
switch(n) { switch (n) {
case 2: a[left + 2] = a[left + 1]; case 2: a[left + 2] = a[left + 1];
case 1: a[left + 1] = a[left]; case 1: a[left + 1] = a[left];
break; break;
...@@ -275,7 +275,7 @@ class ComparableTimSort { ...@@ -275,7 +275,7 @@ class ComparableTimSort {
* @param a the array in which a run is to be counted and possibly reversed * @param a the array in which a run is to be counted and possibly reversed
* @param lo index of the first element in the run * @param lo index of the first element in the run
* @param hi index after the last element that may be contained in the run. * @param hi index after the last element that may be contained in the run.
It is required that @code{lo < hi}. It is required that {@code lo < hi}.
* @return the length of the run beginning at the specified position in * @return the length of the run beginning at the specified position in
* the specified array * the specified array
*/ */
...@@ -288,7 +288,7 @@ class ComparableTimSort { ...@@ -288,7 +288,7 @@ class ComparableTimSort {
// Find end of run, and reverse range if descending // Find end of run, and reverse range if descending
if (((Comparable) a[runHi++]).compareTo(a[lo]) < 0) { // Descending if (((Comparable) a[runHi++]).compareTo(a[lo]) < 0) { // Descending
while(runHi < hi && ((Comparable) a[runHi]).compareTo(a[runHi - 1]) < 0) while (runHi < hi && ((Comparable) a[runHi]).compareTo(a[runHi - 1]) < 0)
runHi++; runHi++;
reverseRange(a, lo, runHi); reverseRange(a, lo, runHi);
} else { // Ascending } else { // Ascending
......
...@@ -59,10 +59,10 @@ public class FormattableFlags { ...@@ -59,10 +59,10 @@ public class FormattableFlags {
* <pre> * <pre>
* out.toUpperCase() </pre> * out.toUpperCase() </pre>
* *
* <p> This flag corresponds to <tt>'^'</tt> (<tt>'&#92;u005e'</tt>) in * <p> This flag corresponds to <tt>'S'</tt> (<tt>'&#92;u0053'</tt>) in
* the format specifier. * the format specifier.
*/ */
public static final int UPPERCASE = 1<<1; // '^' public static final int UPPERCASE = 1<<1; // 'S'
/** /**
* Requires the output to use an alternate form. The definition of the * Requires the output to use an alternate form. The definition of the
......
...@@ -72,7 +72,7 @@ import sun.util.ResourceBundleEnumeration; ...@@ -72,7 +72,7 @@ import sun.util.ResourceBundleEnumeration;
* *
* public class MyResources extends ListResourceBundle { * public class MyResources extends ListResourceBundle {
* protected Object[][] getContents() { * protected Object[][] getContents() {
* return new Object[][] = { * return new Object[][] {
* // LOCALIZE THIS * // LOCALIZE THIS
* {"s1", "The disk \"{1}\" contains {0}."}, // MessageFormat pattern * {"s1", "The disk \"{1}\" contains {0}."}, // MessageFormat pattern
* {"s2", "1"}, // location of {0} in pattern * {"s2", "1"}, // location of {0} in pattern
......
...@@ -870,7 +870,7 @@ public final class Locale implements Cloneable, Serializable { ...@@ -870,7 +870,7 @@ public final class Locale implements Cloneable, Serializable {
* @throws SecurityException - if a security manager exists and its * @throws SecurityException - if a security manager exists and its
* checkPermission method doesn't allow the operation. * checkPermission method doesn't allow the operation.
* @throws NullPointerException - if category and/or newLocale is null * @throws NullPointerException - if category and/or newLocale is null
* @see SecurityManager.checkPermission(java.security.Permission) * @see SecurityManager#checkPermission(java.security.Permission)
* @see PropertyPermission * @see PropertyPermission
* @see #getDefault(Locale.Category) * @see #getDefault(Locale.Category)
* @since 1.7 * @since 1.7
...@@ -1232,20 +1232,18 @@ public final class Locale implements Cloneable, Serializable { ...@@ -1232,20 +1232,18 @@ public final class Locale implements Cloneable, Serializable {
* "Solaris_isjustthecoolestthing" is emitted as * "Solaris_isjustthecoolestthing" is emitted as
* "x-lvariant-Solaris", not as "solaris".</li></ul> * "x-lvariant-Solaris", not as "solaris".</li></ul>
* *
* <p><b>Compatibility special cases:</b><ul> * <p><b>Special Conversions:</b> Java supports some old locale
* representations, including deprecated ISO language codes,
* for compatibility. This method performs the following
* conversions:
* <ul>
* *
* <li>The language codes "iw", "ji", and "in" are handled * <li>Deprecated ISO language codes "iw", "ji", and "in" are
* specially. Java uses these deprecated codes for compatibility * converted to "he", "yi", and "id", respectively.
* reasons. The <code>toLanguageTag</code> method converts these
* three codes (and only these three) to "he", "yi", and "id"
* respectively.
* *
* <li>A locale with language "no", country "NO", and variant * <li>A locale with language "no", country "NO", and variant
* "NY", representing Norwegian Nynorsk, will be represented as * "NY", representing Norwegian Nynorsk (Norway), is converted
* having language "nn", country "NO", and empty variant. This is * to a language tag "nn-NO".</li></ul>
* because some JVMs used the deprecated form to represent the
* user's default locale, and for compatibility reasons that Take a has
* not been changed.</ul>
* *
* <p><b>Note:</b> Although the language tag created by this * <p><b>Note:</b> Although the language tag created by this
* method is well-formed (satisfies the syntax requirements * method is well-formed (satisfies the syntax requirements
...@@ -1327,7 +1325,7 @@ public final class Locale implements Cloneable, Serializable { ...@@ -1327,7 +1325,7 @@ public final class Locale implements Cloneable, Serializable {
* *
* <pre> * <pre>
* Locale loc; * Locale loc;
* loc = Locale.forLanguageTag("en-US-x-lvariant-POSIX); * loc = Locale.forLanguageTag("en-US-x-lvariant-POSIX");
* loc.getVariant(); // returns "POSIX" * loc.getVariant(); // returns "POSIX"
* loc.getExtension('x'); // returns null * loc.getExtension('x'); // returns null
* *
...@@ -1355,10 +1353,10 @@ public final class Locale implements Cloneable, Serializable { ...@@ -1355,10 +1353,10 @@ public final class Locale implements Cloneable, Serializable {
* extensions are added as though the constructor had been called: * extensions are added as though the constructor had been called:
* *
* <pre> * <pre>
* Locale.forLanguageTag("ja-JP-x-lvariant-JP).toLanguageTag(); * Locale.forLanguageTag("ja-JP-x-lvariant-JP").toLanguageTag();
* // returns ja-JP-u-ca-japanese-x-lvariant-JP * // returns "ja-JP-u-ca-japanese-x-lvariant-JP"
* Locale.forLanguageTag("th-TH-x-lvariant-TH).toLanguageTag(); * Locale.forLanguageTag("th-TH-x-lvariant-TH").toLanguageTag();
* // returns th-TH-u-nu-thai-x-lvariant-TH * // returns "th-TH-u-nu-thai-x-lvariant-TH"
* <pre></ul> * <pre></ul>
* *
* <p>This implements the 'Language-Tag' production of BCP47, and * <p>This implements the 'Language-Tag' production of BCP47, and
...@@ -1428,7 +1426,12 @@ public final class Locale implements Cloneable, Serializable { ...@@ -1428,7 +1426,12 @@ public final class Locale implements Cloneable, Serializable {
LanguageTag tag = LanguageTag.parse(languageTag, null); LanguageTag tag = LanguageTag.parse(languageTag, null);
InternalLocaleBuilder bldr = new InternalLocaleBuilder(); InternalLocaleBuilder bldr = new InternalLocaleBuilder();
bldr.setLanguageTag(tag); bldr.setLanguageTag(tag);
return getInstance(bldr.getBaseLocale(), bldr.getLocaleExtensions()); BaseLocale base = bldr.getBaseLocale();
LocaleExtensions exts = bldr.getLocaleExtensions();
if (exts.isEmpty() && base.getVariant().length() > 0) {
exts = getCompatibilityExtensions(base.getLanguage(), base.getScript(), base.getRegion(), base.getVariant());
}
return getInstance(base, exts);
} }
/** /**
...@@ -2487,6 +2490,10 @@ public final class Locale implements Cloneable, Serializable { ...@@ -2487,6 +2490,10 @@ public final class Locale implements Cloneable, Serializable {
public Locale build() { public Locale build() {
BaseLocale baseloc = _locbld.getBaseLocale(); BaseLocale baseloc = _locbld.getBaseLocale();
LocaleExtensions extensions = _locbld.getLocaleExtensions(); LocaleExtensions extensions = _locbld.getLocaleExtensions();
if (extensions.isEmpty() && baseloc.getVariant().length() > 0) {
extensions = getCompatibilityExtensions(baseloc.getLanguage(), baseloc.getScript(),
baseloc.getRegion(), baseloc.getVariant());
}
return Locale.getInstance(baseloc, extensions); return Locale.getInstance(baseloc, extensions);
} }
} }
......
...@@ -77,9 +77,9 @@ class Random implements java.io.Serializable { ...@@ -77,9 +77,9 @@ class Random implements java.io.Serializable {
*/ */
private final AtomicLong seed; private final AtomicLong seed;
private final static long multiplier = 0x5DEECE66DL; private static final long multiplier = 0x5DEECE66DL;
private final static long addend = 0xBL; private static final long addend = 0xBL;
private final static long mask = (1L << 48) - 1; private static final long mask = (1L << 48) - 1;
/** /**
* Creates a new random number generator. This constructor sets * Creates a new random number generator. This constructor sets
...@@ -285,7 +285,7 @@ class Random implements java.io.Serializable { ...@@ -285,7 +285,7 @@ class Random implements java.io.Serializable {
* @return the next pseudorandom, uniformly distributed {@code int} * @return the next pseudorandom, uniformly distributed {@code int}
* value between {@code 0} (inclusive) and {@code n} (exclusive) * value between {@code 0} (inclusive) and {@code n} (exclusive)
* from this random number generator's sequence * from this random number generator's sequence
* @exception IllegalArgumentException if n is not positive * @throws IllegalArgumentException if n is not positive
* @since 1.2 * @since 1.2
*/ */
......
...@@ -73,9 +73,9 @@ class Stack<E> extends Vector<E> { ...@@ -73,9 +73,9 @@ class Stack<E> extends Vector<E> {
* Removes the object at the top of this stack and returns that * Removes the object at the top of this stack and returns that
* object as the value of this function. * object as the value of this function.
* *
* @return The object at the top of this stack (the last item * @return The object at the top of this stack (the last item
* of the <tt>Vector</tt> object). * of the <tt>Vector</tt> object).
* @exception EmptyStackException if this stack is empty. * @throws EmptyStackException if this stack is empty.
*/ */
public synchronized E pop() { public synchronized E pop() {
E obj; E obj;
...@@ -91,9 +91,9 @@ class Stack<E> extends Vector<E> { ...@@ -91,9 +91,9 @@ class Stack<E> extends Vector<E> {
* Looks at the object at the top of this stack without removing it * Looks at the object at the top of this stack without removing it
* from the stack. * from the stack.
* *
* @return the object at the top of this stack (the last item * @return the object at the top of this stack (the last item
* of the <tt>Vector</tt> object). * of the <tt>Vector</tt> object).
* @exception EmptyStackException if this stack is empty. * @throws EmptyStackException if this stack is empty.
*/ */
public synchronized E peek() { public synchronized E peek() {
int len = size(); int len = size();
......
...@@ -239,7 +239,7 @@ class TimSort<T> { ...@@ -239,7 +239,7 @@ class TimSort<T> {
* @param lo the index of the first element in the range to be sorted * @param lo the index of the first element in the range to be sorted
* @param hi the index after the last element in the range to be sorted * @param hi the index after the last element in the range to be sorted
* @param start the index of the first element in the range that is * @param start the index of the first element in the range that is
* not already known to be sorted (@code lo <= start <= hi} * not already known to be sorted ({@code lo <= start <= hi})
* @param c comparator to used for the sort * @param c comparator to used for the sort
*/ */
@SuppressWarnings("fallthrough") @SuppressWarnings("fallthrough")
...@@ -278,7 +278,7 @@ class TimSort<T> { ...@@ -278,7 +278,7 @@ class TimSort<T> {
*/ */
int n = start - left; // The number of elements to move int n = start - left; // The number of elements to move
// Switch is just an optimization for arraycopy in default case // Switch is just an optimization for arraycopy in default case
switch(n) { switch (n) {
case 2: a[left + 2] = a[left + 1]; case 2: a[left + 2] = a[left + 1];
case 1: a[left + 1] = a[left]; case 1: a[left + 1] = a[left];
break; break;
...@@ -308,7 +308,7 @@ class TimSort<T> { ...@@ -308,7 +308,7 @@ class TimSort<T> {
* @param a the array in which a run is to be counted and possibly reversed * @param a the array in which a run is to be counted and possibly reversed
* @param lo index of the first element in the run * @param lo index of the first element in the run
* @param hi index after the last element that may be contained in the run. * @param hi index after the last element that may be contained in the run.
It is required that @code{lo < hi}. It is required that {@code lo < hi}.
* @param c the comparator to used for the sort * @param c the comparator to used for the sort
* @return the length of the run beginning at the specified position in * @return the length of the run beginning at the specified position in
* the specified array * the specified array
...@@ -322,7 +322,7 @@ class TimSort<T> { ...@@ -322,7 +322,7 @@ class TimSort<T> {
// Find end of run, and reverse range if descending // Find end of run, and reverse range if descending
if (c.compare(a[runHi++], a[lo]) < 0) { // Descending if (c.compare(a[runHi++], a[lo]) < 0) { // Descending
while(runHi < hi && c.compare(a[runHi], a[runHi - 1]) < 0) while (runHi < hi && c.compare(a[runHi], a[runHi - 1]) < 0)
runHi++; runHi++;
reverseRange(a, lo, runHi); reverseRange(a, lo, runHi);
} else { // Ascending } else { // Ascending
......
...@@ -1056,11 +1056,11 @@ public class TreeMap<K,V> ...@@ -1056,11 +1056,11 @@ public class TreeMap<K,V>
public Comparator<? super E> comparator() { return m.comparator(); } public Comparator<? super E> comparator() { return m.comparator(); }
public E pollFirst() { public E pollFirst() {
Map.Entry<E,Object> e = m.pollFirstEntry(); Map.Entry<E,Object> e = m.pollFirstEntry();
return e == null? null : e.getKey(); return (e == null) ? null : e.getKey();
} }
public E pollLast() { public E pollLast() {
Map.Entry<E,Object> e = m.pollLastEntry(); Map.Entry<E,Object> e = m.pollLastEntry();
return e == null? null : e.getKey(); return (e == null) ? null : e.getKey();
} }
public boolean remove(Object o) { public boolean remove(Object o) {
int oldSize = size(); int oldSize = size();
...@@ -1196,7 +1196,7 @@ public class TreeMap<K,V> ...@@ -1196,7 +1196,7 @@ public class TreeMap<K,V>
* Test two values for equality. Differs from o1.equals(o2) only in * Test two values for equality. Differs from o1.equals(o2) only in
* that it copes with {@code null} o1 properly. * that it copes with {@code null} o1 properly.
*/ */
final static boolean valEquals(Object o1, Object o2) { static final boolean valEquals(Object o1, Object o2) {
return (o1==null ? o2==null : o1.equals(o2)); return (o1==null ? o2==null : o1.equals(o2));
} }
...@@ -1204,7 +1204,7 @@ public class TreeMap<K,V> ...@@ -1204,7 +1204,7 @@ public class TreeMap<K,V>
* Return SimpleImmutableEntry for entry, or null if null * Return SimpleImmutableEntry for entry, or null if null
*/ */
static <K,V> Map.Entry<K,V> exportEntry(TreeMap.Entry<K,V> e) { static <K,V> Map.Entry<K,V> exportEntry(TreeMap.Entry<K,V> e) {
return e == null? null : return (e == null) ? null :
new AbstractMap.SimpleImmutableEntry<K,V>(e); new AbstractMap.SimpleImmutableEntry<K,V>(e);
} }
...@@ -1212,7 +1212,7 @@ public class TreeMap<K,V> ...@@ -1212,7 +1212,7 @@ public class TreeMap<K,V>
* Return key for entry, or null if null * Return key for entry, or null if null
*/ */
static <K,V> K keyOrNull(TreeMap.Entry<K,V> e) { static <K,V> K keyOrNull(TreeMap.Entry<K,V> e) {
return e == null? null : e.key; return (e == null) ? null : e.key;
} }
/** /**
...@@ -1237,7 +1237,7 @@ public class TreeMap<K,V> ...@@ -1237,7 +1237,7 @@ public class TreeMap<K,V>
/** /**
* @serial include * @serial include
*/ */
static abstract class NavigableSubMap<K,V> extends AbstractMap<K,V> abstract static class NavigableSubMap<K,V> extends AbstractMap<K,V>
implements NavigableMap<K,V>, java.io.Serializable { implements NavigableMap<K,V>, java.io.Serializable {
/** /**
* The backing map. * The backing map.
...@@ -1412,11 +1412,11 @@ public class TreeMap<K,V> ...@@ -1412,11 +1412,11 @@ public class TreeMap<K,V>
} }
public final V get(Object key) { public final V get(Object key) {
return !inRange(key)? null : m.get(key); return !inRange(key) ? null : m.get(key);
} }
public final V remove(Object key) { public final V remove(Object key) {
return !inRange(key)? null : m.remove(key); return !inRange(key) ? null : m.remove(key);
} }
public final Map.Entry<K,V> ceilingEntry(K key) { public final Map.Entry<K,V> ceilingEntry(K key) {
...@@ -1559,7 +1559,8 @@ public class TreeMap<K,V> ...@@ -1559,7 +1559,8 @@ public class TreeMap<K,V>
if (!inRange(key)) if (!inRange(key))
return false; return false;
TreeMap.Entry<K,V> node = m.getEntry(key); TreeMap.Entry<K,V> node = m.getEntry(key);
if (node!=null && valEquals(node.getValue(),entry.getValue())){ if (node!=null && valEquals(node.getValue(),
entry.getValue())) {
m.deleteEntry(node); m.deleteEntry(node);
return true; return true;
} }
...@@ -1724,7 +1725,7 @@ public class TreeMap<K,V> ...@@ -1724,7 +1725,7 @@ public class TreeMap<K,V>
false, toKey, inclusive); false, toKey, inclusive);
} }
public NavigableMap<K,V> tailMap(K fromKey, boolean inclusive){ public NavigableMap<K,V> tailMap(K fromKey, boolean inclusive) {
if (!inRange(fromKey, inclusive)) if (!inRange(fromKey, inclusive))
throw new IllegalArgumentException("fromKey out of range"); throw new IllegalArgumentException("fromKey out of range");
return new AscendingSubMap(m, return new AscendingSubMap(m,
...@@ -1805,7 +1806,7 @@ public class TreeMap<K,V> ...@@ -1805,7 +1806,7 @@ public class TreeMap<K,V>
toEnd, hi, hiInclusive); toEnd, hi, hiInclusive);
} }
public NavigableMap<K,V> tailMap(K fromKey, boolean inclusive){ public NavigableMap<K,V> tailMap(K fromKey, boolean inclusive) {
if (!inRange(fromKey, inclusive)) if (!inRange(fromKey, inclusive))
throw new IllegalArgumentException("fromKey out of range"); throw new IllegalArgumentException("fromKey out of range");
return new DescendingSubMap(m, return new DescendingSubMap(m,
...@@ -2143,7 +2144,7 @@ public class TreeMap<K,V> ...@@ -2143,7 +2144,7 @@ public class TreeMap<K,V>
// If strictly internal, copy successor's element to p and then make p // If strictly internal, copy successor's element to p and then make p
// point to successor. // point to successor.
if (p.left != null && p.right != null) { if (p.left != null && p.right != null) {
Entry<K,V> s = successor (p); Entry<K,V> s = successor(p);
p.key = s.key; p.key = s.key;
p.value = s.value; p.value = s.value;
p = s; p = s;
......
...@@ -452,7 +452,7 @@ public class TreeSet<E> extends AbstractSet<E> ...@@ -452,7 +452,7 @@ public class TreeSet<E> extends AbstractSet<E>
*/ */
public E pollFirst() { public E pollFirst() {
Map.Entry<E,?> e = m.pollFirstEntry(); Map.Entry<E,?> e = m.pollFirstEntry();
return (e == null)? null : e.getKey(); return (e == null) ? null : e.getKey();
} }
/** /**
...@@ -460,7 +460,7 @@ public class TreeSet<E> extends AbstractSet<E> ...@@ -460,7 +460,7 @@ public class TreeSet<E> extends AbstractSet<E>
*/ */
public E pollLast() { public E pollLast() {
Map.Entry<E,?> e = m.pollLastEntry(); Map.Entry<E,?> e = m.pollLastEntry();
return (e == null)? null : e.getKey(); return (e == null) ? null : e.getKey();
} }
/** /**
......
...@@ -919,7 +919,7 @@ public class Vector<E> ...@@ -919,7 +919,7 @@ public class Vector<E>
* elements (optional), or if the specified collection is null * elements (optional), or if the specified collection is null
* @since 1.2 * @since 1.2
*/ */
public synchronized boolean retainAll(Collection<?> c) { public synchronized boolean retainAll(Collection<?> c) {
return super.retainAll(c); return super.retainAll(c);
} }
......
...@@ -51,20 +51,20 @@ import java.util.*; ...@@ -51,20 +51,20 @@ import java.util.*;
* <p> <b>Extension example</b>. Here is a sketch of a class * <p> <b>Extension example</b>. Here is a sketch of a class
* that customizes {@link ThreadPoolExecutor} to use * that customizes {@link ThreadPoolExecutor} to use
* a <tt>CustomTask</tt> class instead of the default <tt>FutureTask</tt>: * a <tt>CustomTask</tt> class instead of the default <tt>FutureTask</tt>:
* <pre> * <pre> {@code
* public class CustomThreadPoolExecutor extends ThreadPoolExecutor { * public class CustomThreadPoolExecutor extends ThreadPoolExecutor {
* *
* static class CustomTask&lt;V&gt; implements RunnableFuture&lt;V&gt; {...} * static class CustomTask<V> implements RunnableFuture<V> {...}
* *
* protected &lt;V&gt; RunnableFuture&lt;V&gt; newTaskFor(Callable&lt;V&gt; c) { * protected <V> RunnableFuture<V> newTaskFor(Callable<V> c) {
* return new CustomTask&lt;V&gt;(c); * return new CustomTask<V>(c);
* } * }
* protected &lt;V&gt; RunnableFuture&lt;V&gt; newTaskFor(Runnable r, V v) { * protected <V> RunnableFuture<V> newTaskFor(Runnable r, V v) {
* return new CustomTask&lt;V&gt;(r, v); * return new CustomTask<V>(r, v);
* } * }
* // ... add constructors, etc. * // ... add constructors, etc.
* } * }}</pre>
* </pre> *
* @since 1.5 * @since 1.5
* @author Doug Lea * @author Doug Lea
*/ */
...@@ -106,7 +106,7 @@ public abstract class AbstractExecutorService implements ExecutorService { ...@@ -106,7 +106,7 @@ public abstract class AbstractExecutorService implements ExecutorService {
*/ */
public Future<?> submit(Runnable task) { public Future<?> submit(Runnable task) {
if (task == null) throw new NullPointerException(); if (task == null) throw new NullPointerException();
RunnableFuture<Object> ftask = newTaskFor(task, null); RunnableFuture<Void> ftask = newTaskFor(task, null);
execute(ftask); execute(ftask);
return ftask; return ftask;
} }
...@@ -158,7 +158,7 @@ public abstract class AbstractExecutorService implements ExecutorService { ...@@ -158,7 +158,7 @@ public abstract class AbstractExecutorService implements ExecutorService {
// Record exceptions so that if we fail to obtain any // Record exceptions so that if we fail to obtain any
// result, we can throw the last exception we got. // result, we can throw the last exception we got.
ExecutionException ee = null; ExecutionException ee = null;
long lastTime = (timed)? System.nanoTime() : 0; long lastTime = timed ? System.nanoTime() : 0;
Iterator<? extends Callable<T>> it = tasks.iterator(); Iterator<? extends Callable<T>> it = tasks.iterator();
// Start one task for sure; the rest incrementally // Start one task for sure; the rest incrementally
...@@ -191,8 +191,6 @@ public abstract class AbstractExecutorService implements ExecutorService { ...@@ -191,8 +191,6 @@ public abstract class AbstractExecutorService implements ExecutorService {
--active; --active;
try { try {
return f.get(); return f.get();
} catch (InterruptedException ie) {
throw ie;
} catch (ExecutionException eex) { } catch (ExecutionException eex) {
ee = eex; ee = eex;
} catch (RuntimeException rex) { } catch (RuntimeException rex) {
......
...@@ -1270,7 +1270,7 @@ public class ConcurrentHashMap<K, V> extends AbstractMap<K, V> ...@@ -1270,7 +1270,7 @@ public class ConcurrentHashMap<K, V> extends AbstractMap<K, V>
* for each key-value mapping, followed by a null pair. * for each key-value mapping, followed by a null pair.
* The key-value mappings are emitted in no particular order. * The key-value mappings are emitted in no particular order.
*/ */
private void writeObject(java.io.ObjectOutputStream s) throws IOException { private void writeObject(java.io.ObjectOutputStream s) throws IOException {
s.defaultWriteObject(); s.defaultWriteObject();
for (int k = 0; k < segments.length; ++k) { for (int k = 0; k < segments.length; ++k) {
...@@ -1298,7 +1298,7 @@ public class ConcurrentHashMap<K, V> extends AbstractMap<K, V> ...@@ -1298,7 +1298,7 @@ public class ConcurrentHashMap<K, V> extends AbstractMap<K, V>
* @param s the stream * @param s the stream
*/ */
private void readObject(java.io.ObjectInputStream s) private void readObject(java.io.ObjectInputStream s)
throws IOException, ClassNotFoundException { throws IOException, ClassNotFoundException {
s.defaultReadObject(); s.defaultReadObject();
// Initialize each segment to be minimally sized, and let grow. // Initialize each segment to be minimally sized, and let grow.
......
...@@ -38,7 +38,6 @@ package java.util.concurrent; ...@@ -38,7 +38,6 @@ package java.util.concurrent;
import java.util.AbstractCollection; import java.util.AbstractCollection;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.ConcurrentModificationException;
import java.util.Deque; import java.util.Deque;
import java.util.Iterator; import java.util.Iterator;
import java.util.NoSuchElementException; import java.util.NoSuchElementException;
...@@ -212,7 +211,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -212,7 +211,7 @@ public class ConcurrentLinkedDeque<E>
* The actual representation we use is that p.next == p means to * The actual representation we use is that p.next == p means to
* goto the first node (which in turn is reached by following prev * goto the first node (which in turn is reached by following prev
* pointers from head), and p.next == null && p.prev == p means * pointers from head), and p.next == null && p.prev == p means
* that the iteration is at an end and that p is a (final static) * that the iteration is at an end and that p is a (static final)
* dummy node, NEXT_TERMINATOR, and not the last active node. * dummy node, NEXT_TERMINATOR, and not the last active node.
* Finishing the iteration when encountering such a TERMINATOR is * Finishing the iteration when encountering such a TERMINATOR is
* good enough for read-only traversals, so such traversals can use * good enough for read-only traversals, so such traversals can use
...@@ -271,7 +270,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -271,7 +270,7 @@ public class ConcurrentLinkedDeque<E>
*/ */
private transient volatile Node<E> tail; private transient volatile Node<E> tail;
private final static Node<Object> PREV_TERMINATOR, NEXT_TERMINATOR; private static final Node<Object> PREV_TERMINATOR, NEXT_TERMINATOR;
static { static {
PREV_TERMINATOR = new Node<Object>(null); PREV_TERMINATOR = new Node<Object>(null);
...@@ -401,7 +400,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -401,7 +400,7 @@ public class ConcurrentLinkedDeque<E>
} }
} }
private final static int HOPS = 2; private static final int HOPS = 2;
/** /**
* Unlinks non-null node x. * Unlinks non-null node x.
...@@ -871,7 +870,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -871,7 +870,7 @@ public class ConcurrentLinkedDeque<E>
/** /**
* Inserts the specified element at the front of this deque. * Inserts the specified element at the front of this deque.
* *
* @throws NullPointerException {@inheritDoc} * @throws NullPointerException if the specified element is null
*/ */
public void addFirst(E e) { public void addFirst(E e) {
linkFirst(e); linkFirst(e);
...@@ -882,7 +881,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -882,7 +881,7 @@ public class ConcurrentLinkedDeque<E>
* *
* <p>This method is equivalent to {@link #add}. * <p>This method is equivalent to {@link #add}.
* *
* @throws NullPointerException {@inheritDoc} * @throws NullPointerException if the specified element is null
*/ */
public void addLast(E e) { public void addLast(E e) {
linkLast(e); linkLast(e);
...@@ -892,7 +891,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -892,7 +891,7 @@ public class ConcurrentLinkedDeque<E>
* Inserts the specified element at the front of this deque. * Inserts the specified element at the front of this deque.
* *
* @return {@code true} always * @return {@code true} always
* @throws NullPointerException {@inheritDoc} * @throws NullPointerException if the specified element is null
*/ */
public boolean offerFirst(E e) { public boolean offerFirst(E e) {
linkFirst(e); linkFirst(e);
...@@ -905,7 +904,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -905,7 +904,7 @@ public class ConcurrentLinkedDeque<E>
* <p>This method is equivalent to {@link #add}. * <p>This method is equivalent to {@link #add}.
* *
* @return {@code true} always * @return {@code true} always
* @throws NullPointerException {@inheritDoc} * @throws NullPointerException if the specified element is null
*/ */
public boolean offerLast(E e) { public boolean offerLast(E e) {
linkLast(e); linkLast(e);
...@@ -940,7 +939,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -940,7 +939,7 @@ public class ConcurrentLinkedDeque<E>
/** /**
* @throws NoSuchElementException {@inheritDoc} * @throws NoSuchElementException {@inheritDoc}
*/ */
public E getLast() { public E getLast() {
return screenNullResult(peekLast()); return screenNullResult(peekLast());
} }
...@@ -1016,7 +1015,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -1016,7 +1015,7 @@ public class ConcurrentLinkedDeque<E>
* *
* @param o element to be removed from this deque, if present * @param o element to be removed from this deque, if present
* @return {@code true} if the deque contained the specified element * @return {@code true} if the deque contained the specified element
* @throws NullPointerException if the specified element is {@code null} * @throws NullPointerException if the specified element is null
*/ */
public boolean removeFirstOccurrence(Object o) { public boolean removeFirstOccurrence(Object o) {
checkNotNull(o); checkNotNull(o);
...@@ -1037,7 +1036,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -1037,7 +1036,7 @@ public class ConcurrentLinkedDeque<E>
* *
* @param o element to be removed from this deque, if present * @param o element to be removed from this deque, if present
* @return {@code true} if the deque contained the specified element * @return {@code true} if the deque contained the specified element
* @throws NullPointerException if the specified element is {@code null} * @throws NullPointerException if the specified element is null
*/ */
public boolean removeLastOccurrence(Object o) { public boolean removeLastOccurrence(Object o) {
checkNotNull(o); checkNotNull(o);
...@@ -1110,7 +1109,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -1110,7 +1109,7 @@ public class ConcurrentLinkedDeque<E>
* *
* @param o element to be removed from this deque, if present * @param o element to be removed from this deque, if present
* @return {@code true} if the deque contained the specified element * @return {@code true} if the deque contained the specified element
* @throws NullPointerException if the specified element is {@code null} * @throws NullPointerException if the specified element is null
*/ */
public boolean remove(Object o) { public boolean remove(Object o) {
return removeFirstOccurrence(o); return removeFirstOccurrence(o);
...@@ -1165,7 +1164,7 @@ public class ConcurrentLinkedDeque<E> ...@@ -1165,7 +1164,7 @@ public class ConcurrentLinkedDeque<E>
beginningOfTheEnd.lazySetPrev(p); // CAS piggyback beginningOfTheEnd.lazySetPrev(p); // CAS piggyback
if (p.casNext(null, beginningOfTheEnd)) { if (p.casNext(null, beginningOfTheEnd)) {
// Successful CAS is the linearization point // Successful CAS is the linearization point
// for all elements to be added to this queue. // for all elements to be added to this deque.
if (!casTail(t, last)) { if (!casTail(t, last)) {
// Try a little harder to update tail, // Try a little harder to update tail,
// since we may be adding many elements. // since we may be adding many elements.
...@@ -1251,12 +1250,12 @@ public class ConcurrentLinkedDeque<E> ...@@ -1251,12 +1250,12 @@ public class ConcurrentLinkedDeque<E>
* Returns an iterator over the elements in this deque in proper sequence. * Returns an iterator over the elements in this deque in proper sequence.
* The elements will be returned in order from first (head) to last (tail). * The elements will be returned in order from first (head) to last (tail).
* *
* <p>The returned {@code Iterator} is a "weakly consistent" iterator that * <p>The returned iterator is a "weakly consistent" iterator that
* will never throw {@link java.util.ConcurrentModificationException * will never throw {@link java.util.ConcurrentModificationException
* ConcurrentModificationException}, * ConcurrentModificationException}, and guarantees to traverse
* and guarantees to traverse elements as they existed upon * elements as they existed upon construction of the iterator, and
* construction of the iterator, and may (but is not guaranteed to) * may (but is not guaranteed to) reflect any modifications
* reflect any modifications subsequent to construction. * subsequent to construction.
* *
* @return an iterator over the elements in this deque in proper sequence * @return an iterator over the elements in this deque in proper sequence
*/ */
...@@ -1269,12 +1268,12 @@ public class ConcurrentLinkedDeque<E> ...@@ -1269,12 +1268,12 @@ public class ConcurrentLinkedDeque<E>
* sequential order. The elements will be returned in order from * sequential order. The elements will be returned in order from
* last (tail) to first (head). * last (tail) to first (head).
* *
* <p>The returned {@code Iterator} is a "weakly consistent" iterator that * <p>The returned iterator is a "weakly consistent" iterator that
* will never throw {@link java.util.ConcurrentModificationException * will never throw {@link java.util.ConcurrentModificationException
* ConcurrentModificationException}, * ConcurrentModificationException}, and guarantees to traverse
* and guarantees to traverse elements as they existed upon * elements as they existed upon construction of the iterator, and
* construction of the iterator, and may (but is not guaranteed to) * may (but is not guaranteed to) reflect any modifications
* reflect any modifications subsequent to construction. * subsequent to construction.
* *
* @return an iterator over the elements in this deque in reverse order * @return an iterator over the elements in this deque in reverse order
*/ */
......
...@@ -65,8 +65,8 @@ import java.util.Queue; ...@@ -65,8 +65,8 @@ import java.util.Queue;
* <p>Iterators are <i>weakly consistent</i>, returning elements * <p>Iterators are <i>weakly consistent</i>, returning elements
* reflecting the state of the queue at some point at or since the * reflecting the state of the queue at some point at or since the
* creation of the iterator. They do <em>not</em> throw {@link * creation of the iterator. They do <em>not</em> throw {@link
* ConcurrentModificationException}, and may proceed concurrently with * java.util.ConcurrentModificationException}, and may proceed concurrently
* other operations. Elements contained in the queue since the creation * with other operations. Elements contained in the queue since the creation
* of the iterator will be returned exactly once. * of the iterator will be returned exactly once.
* *
* <p>Beware that, unlike in most collections, the {@code size} method * <p>Beware that, unlike in most collections, the {@code size} method
...@@ -634,12 +634,12 @@ public class ConcurrentLinkedQueue<E> extends AbstractQueue<E> ...@@ -634,12 +634,12 @@ public class ConcurrentLinkedQueue<E> extends AbstractQueue<E>
* Returns an iterator over the elements in this queue in proper sequence. * Returns an iterator over the elements in this queue in proper sequence.
* The elements will be returned in order from first (head) to last (tail). * The elements will be returned in order from first (head) to last (tail).
* *
* <p>The returned {@code Iterator} is a "weakly consistent" iterator that * <p>The returned iterator is a "weakly consistent" iterator that
* will never throw {@link java.util.ConcurrentModificationException * will never throw {@link java.util.ConcurrentModificationException
* ConcurrentModificationException}, * ConcurrentModificationException}, and guarantees to traverse
* and guarantees to traverse elements as they existed upon * elements as they existed upon construction of the iterator, and
* construction of the iterator, and may (but is not guaranteed to) * may (but is not guaranteed to) reflect any modifications
* reflect any modifications subsequent to construction. * subsequent to construction.
* *
* @return an iterator over the elements in this queue in proper sequence * @return an iterator over the elements in this queue in proper sequence
*/ */
......
...@@ -362,12 +362,12 @@ public class ConcurrentSkipListSet<E> ...@@ -362,12 +362,12 @@ public class ConcurrentSkipListSet<E>
public E pollFirst() { public E pollFirst() {
Map.Entry<E,Object> e = m.pollFirstEntry(); Map.Entry<E,Object> e = m.pollFirstEntry();
return e == null? null : e.getKey(); return (e == null) ? null : e.getKey();
} }
public E pollLast() { public E pollLast() {
Map.Entry<E,Object> e = m.pollLastEntry(); Map.Entry<E,Object> e = m.pollLastEntry();
return e == null? null : e.getKey(); return (e == null) ? null : e.getKey();
} }
......
...@@ -547,7 +547,7 @@ public class CopyOnWriteArrayList<E> ...@@ -547,7 +547,7 @@ public class CopyOnWriteArrayList<E>
* @param fromIndex index of first element to be removed * @param fromIndex index of first element to be removed
* @param toIndex index after last element to be removed * @param toIndex index after last element to be removed
* @throws IndexOutOfBoundsException if fromIndex or toIndex out of range * @throws IndexOutOfBoundsException if fromIndex or toIndex out of range
* (@code{fromIndex < 0 || toIndex > size() || toIndex < fromIndex}) * ({@code{fromIndex < 0 || toIndex > size() || toIndex < fromIndex})
*/ */
private void removeRange(int fromIndex, int toIndex) { private void removeRange(int fromIndex, int toIndex) {
final ReentrantLock lock = this.lock; final ReentrantLock lock = this.lock;
...@@ -989,7 +989,7 @@ public class CopyOnWriteArrayList<E> ...@@ -989,7 +989,7 @@ public class CopyOnWriteArrayList<E>
} }
private static class COWIterator<E> implements ListIterator<E> { private static class COWIterator<E> implements ListIterator<E> {
/** Snapshot of the array **/ /** Snapshot of the array */
private final Object[] snapshot; private final Object[] snapshot;
/** Index of element to be returned by subsequent call to next. */ /** Index of element to be returned by subsequent call to next. */
private int cursor; private int cursor;
......
...@@ -59,24 +59,23 @@ import java.util.*; ...@@ -59,24 +59,23 @@ import java.util.*;
* copy-on-write set to maintain a set of Handler objects that * copy-on-write set to maintain a set of Handler objects that
* perform some action upon state updates. * perform some action upon state updates.
* *
* <pre> * <pre> {@code
* class Handler { void handle(); ... } * class Handler { void handle(); ... }
* *
* class X { * class X {
* private final CopyOnWriteArraySet&lt;Handler&gt; handlers * private final CopyOnWriteArraySet<Handler> handlers
* = new CopyOnWriteArraySet&lt;Handler&gt;(); * = new CopyOnWriteArraySet<Handler>();
* public void addHandler(Handler h) { handlers.add(h); } * public void addHandler(Handler h) { handlers.add(h); }
* *
* private long internalState; * private long internalState;
* private synchronized void changeState() { internalState = ...; } * private synchronized void changeState() { internalState = ...; }
* *
* public void update() { * public void update() {
* changeState(); * changeState();
* for (Handler handler : handlers) * for (Handler handler : handlers)
* handler.handle(); * handler.handle();
* } * }
* } * }}</pre>
* </pre>
* *
* <p>This class is a member of the * <p>This class is a member of the
* <a href="{@docRoot}/../technotes/guides/collections/index.html"> * <a href="{@docRoot}/../technotes/guides/collections/index.html">
......
...@@ -175,7 +175,7 @@ public class CountDownLatch { ...@@ -175,7 +175,7 @@ public class CountDownLatch {
} }
protected int tryAcquireShared(int acquires) { protected int tryAcquireShared(int acquires) {
return getState() == 0? 1 : -1; return (getState() == 0) ? 1 : -1;
} }
protected boolean tryReleaseShared(int releases) { protected boolean tryReleaseShared(int releases) {
......
...@@ -482,12 +482,14 @@ public class DelayQueue<E extends Delayed> extends AbstractQueue<E> ...@@ -482,12 +482,14 @@ public class DelayQueue<E extends Delayed> extends AbstractQueue<E>
/** /**
* Returns an iterator over all the elements (both expired and * Returns an iterator over all the elements (both expired and
* unexpired) in this queue. The iterator does not return the * unexpired) in this queue. The iterator does not return the
* elements in any particular order. The returned * elements in any particular order.
* <tt>Iterator</tt> is a "weakly consistent" iterator that will *
* never throw {@link ConcurrentModificationException}, and * <p>The returned iterator is a "weakly consistent" iterator that
* guarantees to traverse elements as they existed upon * will never throw {@link java.util.ConcurrentModificationException
* construction of the iterator, and may (but is not guaranteed * ConcurrentModificationException}, and guarantees to traverse
* to) reflect any modifications subsequent to construction. * elements as they existed upon construction of the iterator, and
* may (but is not guaranteed to) reflect any modifications
* subsequent to construction.
* *
* @return an iterator over the elements in this queue * @return an iterator over the elements in this queue
*/ */
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册