Merge
This commit is contained in:
commit
0f95d11041
7
.hgtags
7
.hgtags
@ -298,3 +298,10 @@ d6224d6021459ac8b3832e822f5acc849fa944af jdk9-b52
|
||||
874d76e4699dfcd61ae1826c9fe0ddc1610ad598 jdk9-b53
|
||||
82cd31c5d6ca8d4c1653f4eb1c09eb2d9a3b2813 jdk9-b54
|
||||
c97e2d1bad9708d379793ba2a4c848eda14c741e jdk9-b55
|
||||
47544495db2d3d2edf0f85862d8715592fdb919f jdk9-b56
|
||||
ddb95d8f169b09544cc17e72a6baaff2400092f5 jdk9-b57
|
||||
f40752db7773ca0c737f2ad88371e35c57fdfed7 jdk9-b58
|
||||
da950f343762a856d69751570a4c07cfa68a415b jdk9-b59
|
||||
38f98cb6b33562a926ec3b79c7b34128be37647d jdk9-b60
|
||||
ac3f5a39d4ff14d70c365e12cf5ec8f2abd52a04 jdk9-b61
|
||||
e7dbbef69d12b6a74dfad331b7188e7f893e8d29 jdk9-b62
|
||||
|
@ -298,3 +298,10 @@ d1f37d39ff2421f956a6ddf316cf763807bc3363 jdk9-b50
|
||||
d6ed47125a76cd1cf8a100568507bfb5e9669d9f jdk9-b53
|
||||
cb7367141e910e265b8344a8facee740bd1e5467 jdk9-b54
|
||||
0c37a832458f0e0b7d2a3f1a6f69aeae311aeb18 jdk9-b55
|
||||
eb7febe45865ba6b81f2ea68082262d0708a0b22 jdk9-b56
|
||||
f25ee9f62427a9ba27418e5531a89754791a305b jdk9-b57
|
||||
6e78dd9b121037719a065fe8fb25b936babdfecb jdk9-b58
|
||||
39e8a131289e8386aa4c3e4b184faa812a7c0421 jdk9-b59
|
||||
9fa2185bee17462d1014538bff60af6e6f0b01e7 jdk9-b60
|
||||
ea38728b4f4bdd8fd0d7a89b18069f521cf05013 jdk9-b61
|
||||
105d045a69174d870b69bfe471b3f2d05a9f8ecc jdk9-b62
|
||||
|
@ -41,7 +41,8 @@
|
||||
The build is now a "<code>configure && make</code>" style build
|
||||
</li>
|
||||
<li>
|
||||
Any GNU make 3.81 or newer should work
|
||||
Any GNU make 3.81 or newer should work, except on
|
||||
Windows where 4.0 or newer is recommended.
|
||||
</li>
|
||||
<li>
|
||||
The build should scale, i.e. more processors should
|
||||
@ -358,8 +359,8 @@
|
||||
For all systems:
|
||||
<ul>
|
||||
<li>
|
||||
Be sure the GNU make utility is version 3.81 or newer,
|
||||
e.g. run "<code>make -version</code>"
|
||||
Be sure the GNU make utility is version 3.81 (4.0 on
|
||||
windows) or newer, e.g. run "<code>make -version</code>"
|
||||
</li>
|
||||
<li>
|
||||
Install a
|
||||
@ -441,7 +442,7 @@
|
||||
</li>
|
||||
<li>
|
||||
Install
|
||||
<a href="#vs2010">Visual Studio 2010</a>
|
||||
<a href="#vs2013">Visual Studio 2013</a>
|
||||
</li>
|
||||
</ul>
|
||||
</td>
|
||||
@ -750,23 +751,23 @@
|
||||
|
||||
</blockquote>
|
||||
|
||||
<h5><a name="vs2010">Visual Studio 2010 Compilers</a></h5>
|
||||
<h5><a name="vs2013">Visual Studio 2013 Compilers</a></h5>
|
||||
<blockquote>
|
||||
<p>
|
||||
The 32-bit and 64-bit OpenJDK Windows build requires
|
||||
Microsoft Visual Studio C++ 2010 (VS2010) Professional
|
||||
Microsoft Visual Studio C++ 2013 (VS2013) Professional
|
||||
Edition or Express compiler.
|
||||
The compiler and other tools are expected to reside
|
||||
in the location defined by the variable
|
||||
<code>VS100COMNTOOLS</code> which
|
||||
<code>VS120COMNTOOLS</code> which
|
||||
is set by the Microsoft Visual Studio installer.
|
||||
</p>
|
||||
<p>
|
||||
Only the C++ part of VS2010 is needed.
|
||||
Only the C++ part of VS2013 is needed.
|
||||
Try to let the installation go to the default
|
||||
install directory.
|
||||
Always reboot your system after installing VS2010.
|
||||
The system environment variable VS100COMNTOOLS
|
||||
Always reboot your system after installing VS2013.
|
||||
The system environment variable VS120COMNTOOLS
|
||||
should be
|
||||
set in your environment.
|
||||
</p>
|
||||
@ -1040,7 +1041,7 @@
|
||||
<br>
|
||||
This is usually picked up automatically
|
||||
from the redist
|
||||
directories of Visual Studio 2010.
|
||||
directories of Visual Studio 2013.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -1726,10 +1727,10 @@
|
||||
A few notes about using GNU make:
|
||||
<ul>
|
||||
<li>
|
||||
You need GNU make version 3.81 or newer.
|
||||
If the GNU make utility on your systems is not
|
||||
3.81 or newer,
|
||||
see <a href="#buildgmake">"Building GNU make"</a>.
|
||||
You need GNU make version 3.81 or newer. On Windows 4.0 or
|
||||
newer is recommended.
|
||||
If the GNU make utility on your systems is not of a suitable
|
||||
version see <a href="#buildgmake">"Building GNU make"</a>.
|
||||
</li>
|
||||
<li>
|
||||
Place the location of the GNU make binary in the
|
||||
@ -1854,54 +1855,54 @@
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Linux X86 (32-bit) and X64 (64-bit)</td>
|
||||
<td>Fedora 9</td>
|
||||
<td>gcc 4.3 </td>
|
||||
<td>JDK 7u7</td>
|
||||
<td>Oracle Enterprise Linux 6.4</td>
|
||||
<td>gcc 4.8.2 </td>
|
||||
<td>JDK 8</td>
|
||||
<td>2 or more</td>
|
||||
<td>1 GB</td>
|
||||
<td>6 GB</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Solaris SPARC (32-bit) and SPARCV9 (64-bit)</td>
|
||||
<td>Solaris 10 Update 6</td>
|
||||
<td>Studio 12 Update 1 + patches</td>
|
||||
<td>JDK 7u7</td>
|
||||
<td>Solaris SPARCV9 (64-bit)</td>
|
||||
<td>Solaris 10 Update 10</td>
|
||||
<td>Studio 12 Update 3 + patches</td>
|
||||
<td>JDK 8</td>
|
||||
<td>4 or more</td>
|
||||
<td>4 GB</td>
|
||||
<td>8 GB</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Solaris X86 (32-bit) and X64 (64-bit)</td>
|
||||
<td>Solaris 10 Update 6</td>
|
||||
<td>Studio 12 Update 1 + patches</td>
|
||||
<td>JDK 7u7</td>
|
||||
<td>Solaris X64 (64-bit)</td>
|
||||
<td>Solaris 10 Update 10</td>
|
||||
<td>Studio 12 Update 3 + patches</td>
|
||||
<td>JDK 8</td>
|
||||
<td>4 or more</td>
|
||||
<td>4 GB</td>
|
||||
<td>8 GB</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Windows X86 (32-bit)</td>
|
||||
<td>Windows XP</td>
|
||||
<td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
|
||||
<td>JDK 7u7</td>
|
||||
<td>Windows Server 2012 R2 x64</td>
|
||||
<td>Microsoft Visual Studio C++ 2013 Professional Edition</td>
|
||||
<td>JDK 8</td>
|
||||
<td>2 or more</td>
|
||||
<td>2 GB</td>
|
||||
<td>6 GB</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Windows X64 (64-bit)</td>
|
||||
<td>Windows Server 2003 - Enterprise x64 Edition</td>
|
||||
<td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
|
||||
<td>JDK 7u7</td>
|
||||
<td>Windows Server 2012 R2 x64</td>
|
||||
<td>Microsoft Visual Studio C++ 2013 Professional Edition</td>
|
||||
<td>JDK 8</td>
|
||||
<td>2 or more</td>
|
||||
<td>2 GB</td>
|
||||
<td>6 GB</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Mac OS X X64 (64-bit)</td>
|
||||
<td>Mac OS X 10.7 "Lion"</td>
|
||||
<td>XCode 4.5.2 or newer</td>
|
||||
<td>JDK 7u7</td>
|
||||
<td>Mac OS X 10.9 "Mavericks"</td>
|
||||
<td>XCode 5.1.1 or newer</td>
|
||||
<td>JDK 8</td>
|
||||
<td>2 or more</td>
|
||||
<td>4 GB</td>
|
||||
<td>6 GB</td>
|
||||
@ -2009,7 +2010,7 @@
|
||||
</blockquote>
|
||||
|
||||
<h4><a name="ubuntu">Ubuntu 12.04</a></h4>
|
||||
<blockquote>
|
||||
<blockquote>
|
||||
After installing <a href="http://ubuntu.org">Ubuntu</a> 12.04
|
||||
you need to install several build dependencies. The simplest
|
||||
way to do it is to execute the following commands:
|
||||
|
@ -478,6 +478,15 @@ AC_DEFUN_ONCE([BASIC_SETUP_PATHS],
|
||||
AUTOCONF_DIR=$TOPDIR/common/autoconf
|
||||
])
|
||||
|
||||
# Evaluates platform specific overrides for devkit variables.
|
||||
# $1: Name of variable
|
||||
AC_DEFUN([BASIC_EVAL_DEVKIT_VARIABLE],
|
||||
[
|
||||
if test "x[$]$1" = x; then
|
||||
eval $1="\${$1_${OPENJDK_TARGET_CPU}}"
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN_ONCE([BASIC_SETUP_DEVKIT],
|
||||
[
|
||||
AC_ARG_WITH([devkit], [AS_HELP_STRING([--with-devkit],
|
||||
@ -487,12 +496,27 @@ AC_DEFUN_ONCE([BASIC_SETUP_DEVKIT],
|
||||
DEVKIT_ROOT="$with_devkit"
|
||||
# Check for a meta data info file in the root of the devkit
|
||||
if test -f "$DEVKIT_ROOT/devkit.info"; then
|
||||
# This potentially sets the following:
|
||||
# DEVKIT_NAME: A descriptive name of the devkit
|
||||
# DEVKIT_TOOLCHAIN_PATH: Corresponds to --with-toolchain-path
|
||||
# DEVKIT_EXTRA_PATH: Corresponds to --with-extra-path
|
||||
# DEVKIT_SYSROOT: Corresponds to --with-sysroot
|
||||
. $DEVKIT_ROOT/devkit.info
|
||||
# This potentially sets the following:
|
||||
# A descriptive name of the devkit
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_NAME])
|
||||
# Corresponds to --with-extra-path
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_EXTRA_PATH])
|
||||
# Corresponds to --with-toolchain-path
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_TOOLCHAIN_PATH])
|
||||
# Corresponds to --with-sysroot
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_SYSROOT])
|
||||
|
||||
# Identifies the Visual Studio version in the devkit
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_VS_VERSION])
|
||||
# The Visual Studio include environment variable
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_VS_INCLUDE])
|
||||
# The Visual Studio lib environment variable
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_VS_LIB])
|
||||
# Corresponds to --with-msvcr-dll
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_MSVCR_DLL])
|
||||
# Corresponds to --with-msvcp-dll
|
||||
BASIC_EVAL_DEVKIT_VARIABLE([DEVKIT_MSVCP_DLL])
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([for devkit])
|
||||
@ -502,9 +526,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_DEVKIT],
|
||||
AC_MSG_RESULT([$DEVKIT_ROOT])
|
||||
fi
|
||||
|
||||
if test "x$DEVKIT_EXTRA_PATH" != x; then
|
||||
BASIC_PREPEND_TO_PATH([EXTRA_PATH],$DEVKIT_EXTRA_PATH)
|
||||
fi
|
||||
BASIC_PREPEND_TO_PATH([EXTRA_PATH],$DEVKIT_EXTRA_PATH)
|
||||
|
||||
# Fallback default of just /bin if DEVKIT_PATH is not defined
|
||||
if test "x$DEVKIT_TOOLCHAIN_PATH" = x; then
|
||||
@ -681,8 +703,12 @@ AC_DEFUN_ONCE([BASIC_SETUP_OUTPUT_DIR],
|
||||
files_present=`$LS $OUTPUT_ROOT`
|
||||
# Configure has already touched config.log and confdefs.h in the current dir when this check
|
||||
# is performed.
|
||||
filtered_files=`$ECHO "$files_present" | $SED -e 's/config.log//g' -e 's/confdefs.h//g' -e 's/ //g' \
|
||||
| $TR -d '\n'`
|
||||
filtered_files=`$ECHO "$files_present" \
|
||||
| $SED -e 's/config.log//g' \
|
||||
-e 's/confdefs.h//g' \
|
||||
-e 's/fixpath.exe//g' \
|
||||
-e 's/ //g' \
|
||||
| $TR -d '\n'`
|
||||
if test "x$filtered_files" != x; then
|
||||
AC_MSG_NOTICE([Current directory is $CURDIR.])
|
||||
AC_MSG_NOTICE([Since this is not the source root, configure will output the configuration here])
|
||||
@ -700,9 +726,13 @@ AC_DEFUN_ONCE([BASIC_SETUP_OUTPUT_DIR],
|
||||
|
||||
BASIC_FIXUP_PATH(OUTPUT_ROOT)
|
||||
|
||||
CONFIGURESUPPORT_OUTPUTDIR="$OUTPUT_ROOT/configure-support"
|
||||
$MKDIR -p "$CONFIGURESUPPORT_OUTPUTDIR"
|
||||
|
||||
AC_SUBST(SPEC, $OUTPUT_ROOT/spec.gmk)
|
||||
AC_SUBST(CONF_NAME, $CONF_NAME)
|
||||
AC_SUBST(OUTPUT_ROOT, $OUTPUT_ROOT)
|
||||
AC_SUBST(CONFIGURESUPPORT_OUTPUTDIR)
|
||||
|
||||
# The spec.gmk file contains all variables for the make system.
|
||||
AC_CONFIG_FILES([$OUTPUT_ROOT/spec.gmk:$AUTOCONF_DIR/spec.gmk.in])
|
||||
@ -727,6 +757,16 @@ AC_DEFUN([BASIC_CHECK_MAKE_VERSION],
|
||||
[
|
||||
MAKE_CANDIDATE="$1"
|
||||
DESCRIPTION="$2"
|
||||
|
||||
# On Cygwin, we require a newer version of make than on other platforms
|
||||
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
|
||||
MAKE_VERSION_EXPR="-e 4\."
|
||||
MAKE_REQUIRED_VERSION="4.0"
|
||||
else
|
||||
MAKE_VERSION_EXPR="-e 3\.8[[12]] -e 4\."
|
||||
MAKE_REQUIRED_VERSION="3.81"
|
||||
fi
|
||||
|
||||
if test "x$MAKE_CANDIDATE" != x; then
|
||||
AC_MSG_NOTICE([Testing potential make at $MAKE_CANDIDATE, found using $DESCRIPTION])
|
||||
MAKE_VERSION_STRING=`$MAKE_CANDIDATE --version | $HEAD -n 1`
|
||||
@ -734,9 +774,9 @@ AC_DEFUN([BASIC_CHECK_MAKE_VERSION],
|
||||
if test "x$IS_GNU_MAKE" = x; then
|
||||
AC_MSG_NOTICE([Found potential make at $MAKE_CANDIDATE, however, this is not GNU Make. Ignoring.])
|
||||
else
|
||||
IS_MODERN_MAKE=`$ECHO $MAKE_VERSION_STRING | $GREP -e '3\.8[[12]]' -e '4\.'`
|
||||
IS_MODERN_MAKE=`$ECHO $MAKE_VERSION_STRING | $GREP $MAKE_VERSION_EXPR`
|
||||
if test "x$IS_MODERN_MAKE" = x; then
|
||||
AC_MSG_NOTICE([Found GNU make at $MAKE_CANDIDATE, however this is not version 3.81 or later. (it is: $MAKE_VERSION_STRING). Ignoring.])
|
||||
AC_MSG_NOTICE([Found GNU make at $MAKE_CANDIDATE, however this is not version $MAKE_REQUIRED_VERSION or later. (it is: $MAKE_VERSION_STRING). Ignoring.])
|
||||
else
|
||||
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
|
||||
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
|
||||
@ -800,7 +840,7 @@ AC_DEFUN([BASIC_CHECK_GNU_MAKE],
|
||||
fi
|
||||
BASIC_CHECK_MAKE_VERSION("$MAKE", [user supplied MAKE=$MAKE])
|
||||
if test "x$FOUND_MAKE" = x; then
|
||||
AC_MSG_ERROR([The specified make (by MAKE=$MAKE) is not GNU make 3.81 or newer.])
|
||||
AC_MSG_ERROR([The specified make (by MAKE=$MAKE) is not GNU make $MAKE_REQUIRED_VERSION or newer.])
|
||||
fi
|
||||
else
|
||||
# Try our hardest to locate a correct version of GNU make
|
||||
@ -828,13 +868,13 @@ AC_DEFUN([BASIC_CHECK_GNU_MAKE],
|
||||
fi
|
||||
|
||||
if test "x$FOUND_MAKE" = x; then
|
||||
AC_MSG_ERROR([Cannot find GNU make 3.81 or newer! Please put it in the path, or add e.g. MAKE=/opt/gmake3.81/make as argument to configure.])
|
||||
AC_MSG_ERROR([Cannot find GNU make $MAKE_REQUIRED_VERSION or newer! Please put it in the path, or add e.g. MAKE=/opt/gmake3.81/make as argument to configure.])
|
||||
fi
|
||||
fi
|
||||
|
||||
MAKE=$FOUND_MAKE
|
||||
AC_SUBST(MAKE)
|
||||
AC_MSG_NOTICE([Using GNU make 3.81 (or later) at $FOUND_MAKE (version: $MAKE_VERSION_STRING)])
|
||||
AC_MSG_NOTICE([Using GNU make at $FOUND_MAKE (version: $MAKE_VERSION_STRING)])
|
||||
|
||||
BASIC_CHECK_MAKE_OUTPUT_SYNC
|
||||
])
|
||||
|
@ -66,7 +66,7 @@ AC_DEFUN([BASIC_MAKE_WINDOWS_SPACE_SAFE_CYGWIN],
|
||||
# Going to short mode and back again did indeed matter. Since short mode is
|
||||
# case insensitive, let's make it lowercase to improve readability.
|
||||
shortmode_path=`$ECHO "$shortmode_path" | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
||||
# Now convert it back to Unix-stile (cygpath)
|
||||
# Now convert it back to Unix-style (cygpath)
|
||||
input_path=`$CYGPATH -u "$shortmode_path"`
|
||||
new_path="$input_path"
|
||||
fi
|
||||
@ -383,45 +383,46 @@ AC_DEFUN_ONCE([BASIC_COMPILE_FIXPATH],
|
||||
if test "x$OPENJDK_BUILD_OS" = xwindows; then
|
||||
AC_MSG_CHECKING([if fixpath can be created])
|
||||
FIXPATH_SRC="$SRC_ROOT/common/src/fixpath.c"
|
||||
FIXPATH_BIN="$OUTPUT_ROOT/fixpath.exe"
|
||||
FIXPATH_BIN="$CONFIGURESUPPORT_OUTPUTDIR/bin/fixpath.exe"
|
||||
FIXPATH_DIR="$CONFIGURESUPPORT_OUTPUTDIR/fixpath"
|
||||
if test "x$OPENJDK_BUILD_OS_ENV" = xwindows.cygwin; then
|
||||
FIXPATH_SRC=`$CYGPATH -m $FIXPATH_SRC`
|
||||
FIXPATH_BIN=`$CYGPATH -m $FIXPATH_BIN`
|
||||
# Important to keep the .exe suffix on Cygwin for Hotspot makefiles
|
||||
FIXPATH="$OUTPUT_ROOT/fixpath.exe -c"
|
||||
FIXPATH="$FIXPATH_BIN -c"
|
||||
elif test "x$OPENJDK_BUILD_OS_ENV" = xwindows.msys; then
|
||||
FIXPATH_SRC=`cmd //c echo $FIXPATH_SRC`
|
||||
FIXPATH_BIN=`cmd //c echo $FIXPATH_BIN`
|
||||
|
||||
# Take all collected prefixes and turn them into a -m/c/foo@/c/bar@... command line
|
||||
# @ was chosen as separator to minimize risk of other tools messing around with it
|
||||
all_unique_prefixes=`echo "${all_fixpath_prefixes@<:@@@:>@}" | tr ' ' '\n' | grep '^/./' | sort | uniq`
|
||||
all_unique_prefixes=`echo "${all_fixpath_prefixes@<:@@@:>@}" \
|
||||
| tr ' ' '\n' | grep '^/./' | sort | uniq`
|
||||
fixpath_argument_list=`echo $all_unique_prefixes | tr ' ' '@'`
|
||||
|
||||
FIXPATH="$OUTPUT_ROOT/fixpath -m$fixpath_argument_list"
|
||||
FIXPATH="$FIXPATH_BIN -m$fixpath_argument_list"
|
||||
fi
|
||||
rm -f $OUTPUT_ROOT/fixpath*
|
||||
cd $OUTPUT_ROOT
|
||||
$CC $FIXPATH_SRC -Fe$FIXPATH_BIN > $OUTPUT_ROOT/fixpath1.log 2>&1
|
||||
FIXPATH_SRC_W="$FIXPATH_SRC"
|
||||
FIXPATH_BIN_W="$FIXPATH_BIN"
|
||||
BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH([FIXPATH_SRC_W])
|
||||
BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH([FIXPATH_BIN_W])
|
||||
$RM -rf $FIXPATH_BIN $FIXPATH_DIR
|
||||
$MKDIR -p $FIXPATH_DIR $CONFIGURESUPPORT_OUTPUTDIR/bin
|
||||
cd $FIXPATH_DIR
|
||||
$CC $FIXPATH_SRC_W -Fe$FIXPATH_BIN_W > $FIXPATH_DIR/fixpath1.log 2>&1
|
||||
cd $CURDIR
|
||||
|
||||
if test ! -x $OUTPUT_ROOT/fixpath.exe; then
|
||||
if test ! -x $FIXPATH_BIN; then
|
||||
AC_MSG_RESULT([no])
|
||||
cat $OUTPUT_ROOT/fixpath1.log
|
||||
AC_MSG_ERROR([Could not create $OUTPUT_ROOT/fixpath.exe])
|
||||
cat $FIXPATH_DIR/fixpath1.log
|
||||
AC_MSG_ERROR([Could not create $FIXPATH_BIN])
|
||||
fi
|
||||
AC_MSG_RESULT([yes])
|
||||
AC_MSG_CHECKING([if fixpath.exe works])
|
||||
cd $OUTPUT_ROOT
|
||||
$FIXPATH $CC $SRC_ROOT/common/src/fixpath.c -Fe$OUTPUT_ROOT/fixpath2.exe > $OUTPUT_ROOT/fixpath2.log 2>&1
|
||||
cd $FIXPATH_DIR
|
||||
$FIXPATH $CC $FIXPATH_SRC -Fe$FIXPATH_DIR/fixpath2.exe \
|
||||
> $FIXPATH_DIR/fixpath2.log 2>&1
|
||||
cd $CURDIR
|
||||
if test ! -x $OUTPUT_ROOT/fixpath2.exe; then
|
||||
if test ! -x $FIXPATH_DIR/fixpath2.exe; then
|
||||
AC_MSG_RESULT([no])
|
||||
cat $OUTPUT_ROOT/fixpath2.log
|
||||
cat $FIXPATH_DIR/fixpath2.log
|
||||
AC_MSG_ERROR([fixpath did not work!])
|
||||
fi
|
||||
AC_MSG_RESULT([yes])
|
||||
rm -f $OUTPUT_ROOT/fixpath?.??? $OUTPUT_ROOT/fixpath.obj
|
||||
fi
|
||||
|
||||
AC_SUBST(FIXPATH)
|
||||
|
@ -336,11 +336,4 @@ AC_DEFUN_ONCE([BPERF_SETUP_SMART_JAVAC],
|
||||
AC_MSG_CHECKING([whether to use sjavac])
|
||||
AC_MSG_RESULT([$ENABLE_SJAVAC])
|
||||
AC_SUBST(ENABLE_SJAVAC)
|
||||
|
||||
if test "x$ENABLE_SJAVAC" = xyes; then
|
||||
SJAVAC_SERVER_DIR="$OUTPUT_ROOT/javacservers"
|
||||
else
|
||||
SJAVAC_SERVER_DIR=
|
||||
fi
|
||||
AC_SUBST(SJAVAC_SERVER_DIR)
|
||||
])
|
||||
|
@ -261,7 +261,7 @@ CUSTOM_LATE_HOOK
|
||||
|
||||
# We're messing a bit with internal autoconf variables to put the config.status
|
||||
# in the output directory instead of the current directory.
|
||||
CONFIG_STATUS="$OUTPUT_ROOT/config.status"
|
||||
CONFIG_STATUS="$CONFIGURESUPPORT_OUTPUTDIR/config.status"
|
||||
|
||||
# Create the actual output files. Now the main work of configure is done.
|
||||
AC_OUTPUT
|
||||
@ -269,7 +269,7 @@ CUSTOM_CONFIG_OUTPUT_GENERATED_HOOK
|
||||
|
||||
# Try to move the config.log file to the output directory.
|
||||
if test -e ./config.log; then
|
||||
$MV -f ./config.log "$OUTPUT_ROOT/config.log" 2> /dev/null
|
||||
$MV -f ./config.log "$CONFIGURESUPPORT_OUTPUTDIR/config.log" 2> /dev/null
|
||||
fi
|
||||
|
||||
# Make the compare script executable
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -59,7 +59,7 @@ SPEC:=@SPEC@
|
||||
MAKE := @MAKE@
|
||||
|
||||
# The default make arguments
|
||||
MAKE_ARGS = $(MAKE_LOG_FLAGS) -R -I $(TOPDIR)/make/common SPEC=$(SPEC) \
|
||||
MAKE_ARGS = $(MAKE_LOG_FLAGS) -r -R -I $(TOPDIR)/make/common SPEC=$(SPEC) \
|
||||
MAKE_LOG_FLAGS="$(MAKE_LOG_FLAGS)" LOG_LEVEL=$(LOG_LEVEL)
|
||||
|
||||
OUTPUT_SYNC_SUPPORTED:=@OUTPUT_SYNC_SUPPORTED@
|
||||
@ -182,6 +182,7 @@ else
|
||||
FULL_VERSION=$(RELEASE)-$(JDK_BUILD_NUMBER)
|
||||
endif
|
||||
JRE_RELEASE_VERSION:=$(FULL_VERSION)
|
||||
JDK_VERSION_FOR_MANIFEST := $(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION).$(if $(JDK_UPDATE_VERSION),$(JDK_UPDATE_VERSION),0).$(COOKED_BUILD_NUMBER)
|
||||
|
||||
# How to compile the code: release, fastdebug or slowdebug
|
||||
DEBUG_LEVEL:=@DEBUG_LEVEL@
|
||||
@ -231,13 +232,14 @@ BUILD_OUTPUT:=@BUILD_OUTPUT@
|
||||
# Colon left out to be able to override IMAGES_OUTPUTDIR for bootcycle-images
|
||||
SUPPORT_OUTPUTDIR=$(BUILD_OUTPUT)/support
|
||||
BUILDTOOLS_OUTPUTDIR=$(BUILD_OUTPUT)/buildtools
|
||||
MAKESUPPORT_OUTPUTDIR=$(BUILD_OUTPUT)/makesupport
|
||||
|
||||
HOTSPOT_OUTPUTDIR=$(BUILD_OUTPUT)/hotspot
|
||||
JDK_OUTPUTDIR=$(BUILD_OUTPUT)/jdk
|
||||
IMAGES_OUTPUTDIR=$(BUILD_OUTPUT)/images
|
||||
TESTMAKE_OUTPUTDIR=$(BUILD_OUTPUT)/test-make
|
||||
MAKESUPPORT_OUTPUTDIR=$(BUILD_OUTPUT)/make-support
|
||||
# This does not get overridden in a bootcycle build
|
||||
CONFIGURESUPPORT_OUTPUTDIR:=@CONFIGURESUPPORT_OUTPUTDIR@
|
||||
|
||||
HOTSPOT_DIST=@HOTSPOT_DIST@
|
||||
|
||||
@ -259,7 +261,7 @@ MEMORY_SIZE:=@MEMORY_SIZE@
|
||||
ENABLE_SJAVAC:=@ENABLE_SJAVAC@
|
||||
# Store sjavac server synchronization files here, and
|
||||
# the sjavac server log files.
|
||||
SJAVAC_SERVER_DIR:=@SJAVAC_SERVER_DIR@
|
||||
SJAVAC_SERVER_DIR=$(MAKESUPPORT_OUTPUTDIR)/javacservers
|
||||
|
||||
# Number of parallel jobs to use for compilation
|
||||
JOBS?=@JOBS@
|
||||
@ -353,10 +355,6 @@ USING_BROKEN_SUSE_LD:=@USING_BROKEN_SUSE_LD@
|
||||
LDFLAGS_JDKLIB:=@LDFLAGS_JDKLIB@
|
||||
LDFLAGS_JDKLIB_SUFFIX:=@LDFLAGS_JDKLIB_SUFFIX@
|
||||
|
||||
# On some platforms the linker cannot be used to create executables, thus
|
||||
# the need for a separate LDEXE command.
|
||||
LDEXE:=@FIXPATH@ @LDEXE@
|
||||
|
||||
# LDFLAGS used to link the jdk native launchers (C-code)
|
||||
LDFLAGS_JDKEXE:=@LDFLAGS_JDKEXE@
|
||||
LDFLAGS_JDKEXE_SUFFIX:=@LDFLAGS_JDKEXE_SUFFIX@
|
||||
@ -369,9 +367,6 @@ LDCXX:=@FIXPATH@ @LDCXX@
|
||||
# The flags for linking libstdc++ linker.
|
||||
LIBCXX:=@LIBCXX@
|
||||
|
||||
# Sometimes a different linker is needed for c++ executables
|
||||
LDEXECXX:=@FIXPATH@ @LDEXECXX@
|
||||
|
||||
# Compiler and linker flags used when building native tests
|
||||
CFLAGS_TESTLIB:=@CFLAGS_TESTLIB@
|
||||
CXXFLAGS_TESTLIB:=@CXXFLAGS_TESTLIB@
|
||||
|
@ -189,11 +189,15 @@ AC_DEFUN_ONCE([TOOLCHAIN_PRE_DETECTION],
|
||||
ORG_CFLAGS="$CFLAGS"
|
||||
ORG_CXXFLAGS="$CXXFLAGS"
|
||||
|
||||
# autoconf magic only relies on PATH, so update it if tools dir is specified
|
||||
OLD_PATH="$PATH"
|
||||
|
||||
# On Windows, we need to detect the visual studio installation first.
|
||||
# This will change the PATH, but we need to keep that new PATH even
|
||||
# after toolchain detection is done, since the compiler (on x86) uses
|
||||
# it for DLL resolution in runtime.
|
||||
if test "x$OPENJDK_BUILD_OS" = "xwindows" && test "x$TOOLCHAIN_TYPE" = "xmicrosoft"; then
|
||||
if test "x$OPENJDK_BUILD_OS" = "xwindows" \
|
||||
&& test "x$TOOLCHAIN_TYPE" = "xmicrosoft"; then
|
||||
TOOLCHAIN_SETUP_VISUAL_STUDIO_ENV
|
||||
# Reset path to VS_PATH. It will include everything that was on PATH at the time we
|
||||
# ran TOOLCHAIN_SETUP_VISUAL_STUDIO_ENV.
|
||||
@ -203,9 +207,6 @@ AC_DEFUN_ONCE([TOOLCHAIN_PRE_DETECTION],
|
||||
export LIB="$VS_LIB"
|
||||
fi
|
||||
|
||||
# autoconf magic only relies on PATH, so update it if tools dir is specified
|
||||
OLD_PATH="$PATH"
|
||||
|
||||
# For solaris we really need solaris tools, and not the GNU equivalent.
|
||||
# The build tools on Solaris reside in /usr/ccs (C Compilation System),
|
||||
# so add that to path before starting to probe.
|
||||
@ -662,13 +663,6 @@ AC_DEFUN_ONCE([TOOLCHAIN_SETUP_LEGACY],
|
||||
USE_CLANG=true
|
||||
fi
|
||||
AC_SUBST(USE_CLANG)
|
||||
|
||||
# LDEXE is the linker to use, when creating executables. Not really used.
|
||||
# FIXME: These should just be removed!
|
||||
LDEXE="$LD"
|
||||
LDEXECXX="$LDCXX"
|
||||
AC_SUBST(LDEXE)
|
||||
AC_SUBST(LDEXECXX)
|
||||
])
|
||||
|
||||
# Do some additional checks on the detected tools.
|
||||
|
@ -24,8 +24,8 @@
|
||||
#
|
||||
|
||||
################################################################################
|
||||
|
||||
VALID_VS_VERSIONS="2010 2012 2013"
|
||||
# The order of these defines the priority by which we try to find them.
|
||||
VALID_VS_VERSIONS="2013 2012 2010"
|
||||
|
||||
VS_DESCRIPTION_2010="Microsoft Visual Studio 2010"
|
||||
VS_VERSION_INTERNAL_2010=100
|
||||
@ -72,7 +72,7 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],
|
||||
else
|
||||
VCVARSFILE="vc/bin/amd64/vcvars64.bat"
|
||||
fi
|
||||
|
||||
|
||||
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(VS_BASE)
|
||||
if test -d "$VS_BASE"; then
|
||||
if test -f "$VS_BASE/$VCVARSFILE"; then
|
||||
@ -210,6 +210,37 @@ AC_DEFUN([TOOLCHAIN_FIND_VISUAL_STUDIO],
|
||||
done
|
||||
|
||||
exit 0
|
||||
elif test "x$DEVKIT_VS_VERSION" != x; then
|
||||
VS_VERSION=$DEVKIT_VS_VERSION
|
||||
TOOLCHAIN_VERSION=$VS_VERSION
|
||||
eval VS_DESCRIPTION="\${VS_DESCRIPTION_${VS_VERSION}}"
|
||||
eval VS_VERSION_INTERNAL="\${VS_VERSION_INTERNAL_${VS_VERSION}}"
|
||||
eval MSVCR_NAME="\${VS_MSVCR_${VS_VERSION}}"
|
||||
eval MSVCP_NAME="\${VS_MSVCP_${VS_VERSION}}"
|
||||
eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}"
|
||||
VS_PATH="$TOOLCHAIN_PATH:$PATH"
|
||||
|
||||
# Convert DEVKIT_VS_INCLUDE into windows style VS_INCLUDE so that it
|
||||
# can still be exported as INCLUDE for compiler invocations without
|
||||
# SYSROOT_CFLAGS
|
||||
OLDIFS="$IFS"
|
||||
IFS=";"
|
||||
for i in $DEVKIT_VS_INCLUDE; do
|
||||
ipath=$i
|
||||
BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH([ipath])
|
||||
VS_INCLUDE="$VS_INCLUDE;$ipath"
|
||||
done
|
||||
# Convert DEVKIT_VS_LIB into VS_LIB so that it can still be exported
|
||||
# as LIB for compiler invocations without SYSROOT_LDFLAGS
|
||||
for i in $DEVKIT_VS_LIB; do
|
||||
libpath=$i
|
||||
BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH([libpath])
|
||||
VS_LIB="$VS_LIB;$libpath"
|
||||
done
|
||||
IFS="$OLDIFS"
|
||||
|
||||
AC_MSG_NOTICE([Found devkit $VS_DESCRIPTION])
|
||||
|
||||
elif test "x$with_toolchain_version" != x; then
|
||||
# User override; check that it is valid
|
||||
if test "x${VALID_VS_VERSIONS/$with_toolchain_version/}" = "x${VALID_VS_VERSIONS}"; then
|
||||
@ -262,71 +293,81 @@ AC_DEFUN([TOOLCHAIN_SETUP_VISUAL_STUDIO_ENV],
|
||||
# First-hand choice is to locate and run the vsvars bat file.
|
||||
TOOLCHAIN_FIND_VISUAL_STUDIO
|
||||
|
||||
if test "x$VS_ENV_CMD" != x; then
|
||||
# We have found a Visual Studio environment on disk, let's extract variables from the vsvars bat file.
|
||||
BASIC_FIXUP_EXECUTABLE(VS_ENV_CMD)
|
||||
# If we have a devkit, skip all of the below.
|
||||
if test "x$DEVKIT_VS_VERSION" = x; then
|
||||
if test "x$VS_ENV_CMD" != x; then
|
||||
# We have found a Visual Studio environment on disk, let's extract variables from the vsvars bat file.
|
||||
BASIC_FIXUP_EXECUTABLE(VS_ENV_CMD)
|
||||
|
||||
# Lets extract the variables that are set by vcvarsall.bat/vsvars32.bat/vsvars64.bat
|
||||
AC_MSG_NOTICE([Trying to extract Visual Studio environment variables])
|
||||
# Lets extract the variables that are set by vcvarsall.bat/vsvars32.bat/vsvars64.bat
|
||||
AC_MSG_NOTICE([Trying to extract Visual Studio environment variables])
|
||||
|
||||
# We need to create a couple of temporary files.
|
||||
VS_ENV_TMP_DIR="$OUTPUT_ROOT/vs-env"
|
||||
$MKDIR -p $VS_ENV_TMP_DIR
|
||||
# We need to create a couple of temporary files.
|
||||
VS_ENV_TMP_DIR="$CONFIGURESUPPORT_OUTPUTDIR/vs-env"
|
||||
$MKDIR -p $VS_ENV_TMP_DIR
|
||||
|
||||
# Cannot use the VS10 setup script directly (since it only updates the DOS subshell environment).
|
||||
# Instead create a shell script which will set the relevant variables when run.
|
||||
WINPATH_VS_ENV_CMD="$VS_ENV_CMD"
|
||||
BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH([WINPATH_VS_ENV_CMD])
|
||||
WINPATH_BASH="$BASH"
|
||||
BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH([WINPATH_BASH])
|
||||
# Cannot use the VS10 setup script directly (since it only updates the DOS subshell environment).
|
||||
# Instead create a shell script which will set the relevant variables when run.
|
||||
WINPATH_VS_ENV_CMD="$VS_ENV_CMD"
|
||||
BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH([WINPATH_VS_ENV_CMD])
|
||||
WINPATH_BASH="$BASH"
|
||||
BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH([WINPATH_BASH])
|
||||
|
||||
# Generate a DOS batch file which runs $VS_ENV_CMD, and then creates a shell
|
||||
# script (executable by bash) that will setup the important variables.
|
||||
EXTRACT_VC_ENV_BAT_FILE="$VS_ENV_TMP_DIR/extract-vs-env.bat"
|
||||
$ECHO "@echo off" > $EXTRACT_VC_ENV_BAT_FILE
|
||||
# This will end up something like:
|
||||
# call C:/progra~2/micros~2.0/vc/bin/amd64/vcvars64.bat
|
||||
$ECHO "call $WINPATH_VS_ENV_CMD $VS_ENV_ARGS" >> $EXTRACT_VC_ENV_BAT_FILE
|
||||
# These will end up something like:
|
||||
# C:/CygWin/bin/bash -c 'echo VS_PATH=\"$PATH\" > localdevenv.sh
|
||||
# The trailing space for everyone except PATH is no typo, but is needed due
|
||||
# to trailing \ in the Windows paths. These will be stripped later.
|
||||
$ECHO "$WINPATH_BASH -c 'echo VS_PATH="'\"$PATH\" > set-vs-env.sh' >> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo VS_INCLUDE="'\"$INCLUDE\;$include \" >> set-vs-env.sh' >> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo VS_LIB="'\"$LIB\;$lib \" >> set-vs-env.sh' >> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo VCINSTALLDIR="'\"$VCINSTALLDIR \" >> set-vs-env.sh' >> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo WindowsSdkDir="'\"$WindowsSdkDir \" >> set-vs-env.sh' >> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo WINDOWSSDKDIR="'\"$WINDOWSSDKDIR \" >> set-vs-env.sh' >> $EXTRACT_VC_ENV_BAT_FILE
|
||||
# Generate a DOS batch file which runs $VS_ENV_CMD, and then creates a shell
|
||||
# script (executable by bash) that will setup the important variables.
|
||||
EXTRACT_VC_ENV_BAT_FILE="$VS_ENV_TMP_DIR/extract-vs-env.bat"
|
||||
$ECHO "@echo off" > $EXTRACT_VC_ENV_BAT_FILE
|
||||
# This will end up something like:
|
||||
# call C:/progra~2/micros~2.0/vc/bin/amd64/vcvars64.bat
|
||||
$ECHO "call $WINPATH_VS_ENV_CMD $VS_ENV_ARGS" >> $EXTRACT_VC_ENV_BAT_FILE
|
||||
# These will end up something like:
|
||||
# C:/CygWin/bin/bash -c 'echo VS_PATH=\"$PATH\" > localdevenv.sh
|
||||
# The trailing space for everyone except PATH is no typo, but is needed due
|
||||
# to trailing \ in the Windows paths. These will be stripped later.
|
||||
$ECHO "$WINPATH_BASH -c 'echo VS_PATH="'\"$PATH\" > set-vs-env.sh' \
|
||||
>> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo VS_INCLUDE="'\"$INCLUDE\;$include \" >> set-vs-env.sh' \
|
||||
>> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo VS_LIB="'\"$LIB\;$lib \" >> set-vs-env.sh' \
|
||||
>> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo VCINSTALLDIR="'\"$VCINSTALLDIR \" >> set-vs-env.sh' \
|
||||
>> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo WindowsSdkDir="'\"$WindowsSdkDir \" >> set-vs-env.sh' \
|
||||
>> $EXTRACT_VC_ENV_BAT_FILE
|
||||
$ECHO "$WINPATH_BASH -c 'echo WINDOWSSDKDIR="'\"$WINDOWSSDKDIR \" >> set-vs-env.sh' \
|
||||
>> $EXTRACT_VC_ENV_BAT_FILE
|
||||
|
||||
# Now execute the newly created bat file.
|
||||
# The | cat is to stop SetEnv.Cmd to mess with system colors on msys.
|
||||
# Change directory so we don't need to mess with Windows paths in redirects.
|
||||
cd $VS_ENV_TMP_DIR
|
||||
cmd /c extract-vs-env.bat | $CAT
|
||||
cd $CURDIR
|
||||
# Now execute the newly created bat file.
|
||||
# The | cat is to stop SetEnv.Cmd to mess with system colors on msys.
|
||||
# Change directory so we don't need to mess with Windows paths in redirects.
|
||||
cd $VS_ENV_TMP_DIR
|
||||
cmd /c extract-vs-env.bat | $CAT
|
||||
cd $CURDIR
|
||||
|
||||
if test ! -s $VS_ENV_TMP_DIR/set-vs-env.sh; then
|
||||
AC_MSG_NOTICE([Could not succesfully extract the envionment variables needed for the VS setup.])
|
||||
AC_MSG_NOTICE([Try setting --with-tools-dir to the VC/bin directory within the VS installation])
|
||||
AC_MSG_NOTICE([or run "bash.exe -l" from a VS command prompt and then run configure from there.])
|
||||
AC_MSG_ERROR([Cannot continue])
|
||||
if test ! -s $VS_ENV_TMP_DIR/set-vs-env.sh; then
|
||||
AC_MSG_NOTICE([Could not succesfully extract the envionment variables needed for the VS setup.])
|
||||
AC_MSG_NOTICE([Try setting --with-tools-dir to the VC/bin directory within the VS installation])
|
||||
AC_MSG_NOTICE([or run "bash.exe -l" from a VS command prompt and then run configure from there.])
|
||||
AC_MSG_ERROR([Cannot continue])
|
||||
fi
|
||||
|
||||
# Now set all paths and other env variables. This will allow the rest of
|
||||
# the configure script to find and run the compiler in the proper way.
|
||||
AC_MSG_NOTICE([Setting extracted environment variables])
|
||||
. $VS_ENV_TMP_DIR/set-vs-env.sh
|
||||
# Now we have VS_PATH, VS_INCLUDE, VS_LIB. For further checking, we
|
||||
# also define VCINSTALLDIR, WindowsSdkDir and WINDOWSSDKDIR.
|
||||
else
|
||||
# We did not find a vsvars bat file, let's hope we are run from a VS command prompt.
|
||||
AC_MSG_NOTICE([Cannot locate a valid Visual Studio installation, checking current environment])
|
||||
fi
|
||||
|
||||
# Now set all paths and other env variables. This will allow the rest of
|
||||
# the configure script to find and run the compiler in the proper way.
|
||||
AC_MSG_NOTICE([Setting extracted environment variables])
|
||||
. $VS_ENV_TMP_DIR/set-vs-env.sh
|
||||
# Now we have VS_PATH, VS_INCLUDE, VS_LIB. For further checking, we
|
||||
# also define VCINSTALLDIR, WindowsSdkDir and WINDOWSSDKDIR.
|
||||
else
|
||||
# We did not find a vsvars bat file, let's hope we are run from a VS command prompt.
|
||||
AC_MSG_NOTICE([Cannot locate a valid Visual Studio installation, checking current environment])
|
||||
fi
|
||||
|
||||
# At this point, we should have correct variables in the environment, or we can't continue.
|
||||
AC_MSG_CHECKING([for Visual Studio variables])
|
||||
|
||||
if test "x$VCINSTALLDIR" != x || test "x$WindowsSDKDir" != x || test "x$WINDOWSSDKDIR" != x; then
|
||||
if test "x$VCINSTALLDIR" != x || test "x$WindowsSDKDir" != x \
|
||||
|| test "x$WINDOWSSDKDIR" != x || test "x$DEVKIT_NAME" != x; then
|
||||
if test "x$VS_INCLUDE" = x || test "x$VS_LIB" = x; then
|
||||
AC_MSG_RESULT([present but broken])
|
||||
AC_MSG_ERROR([Your VC command prompt seems broken, INCLUDE and/or LIB is missing.])
|
||||
@ -403,10 +444,10 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL],
|
||||
POSSIBLE_MSVC_DLL="$2"
|
||||
METHOD="$3"
|
||||
if test -n "$POSSIBLE_MSVC_DLL" -a -e "$POSSIBLE_MSVC_DLL"; then
|
||||
AC_MSG_NOTICE([Found $1 at $POSSIBLE_MSVC_DLL using $METHOD])
|
||||
|
||||
AC_MSG_NOTICE([Found $DLL_NAME at $POSSIBLE_MSVC_DLL using $METHOD])
|
||||
|
||||
# Need to check if the found msvcr is correct architecture
|
||||
AC_MSG_CHECKING([found $1 architecture])
|
||||
AC_MSG_CHECKING([found $DLL_NAME architecture])
|
||||
MSVC_DLL_FILETYPE=`$FILE -b "$POSSIBLE_MSVC_DLL"`
|
||||
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
|
||||
# The MSYS 'file' command returns "PE32 executable for MS Windows (DLL) (GUI) Intel 80386 32-bit"
|
||||
@ -426,19 +467,19 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL],
|
||||
if $ECHO "$MSVC_DLL_FILETYPE" | $GREP "$CORRECT_MSVCR_ARCH" 2>&1 > /dev/null; then
|
||||
AC_MSG_RESULT([ok])
|
||||
MSVC_DLL="$POSSIBLE_MSVC_DLL"
|
||||
AC_MSG_CHECKING([for $1])
|
||||
BASIC_FIXUP_PATH(MSVC_DLL)
|
||||
AC_MSG_CHECKING([for $DLL_NAME])
|
||||
AC_MSG_RESULT([$MSVC_DLL])
|
||||
else
|
||||
AC_MSG_RESULT([incorrect, ignoring])
|
||||
AC_MSG_NOTICE([The file type of the located $1 is $MSVC_DLL_FILETYPE])
|
||||
AC_MSG_NOTICE([The file type of the located $DLL_NAME is $MSVC_DLL_FILETYPE])
|
||||
fi
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN([TOOLCHAIN_SETUP_MSVC_DLL],
|
||||
[
|
||||
VAR_NAME="$1"
|
||||
DLL_NAME="$2"
|
||||
DLL_NAME="$1"
|
||||
MSVC_DLL=
|
||||
|
||||
if test "x$MSVC_DLL" = x; then
|
||||
@ -463,9 +504,9 @@ AC_DEFUN([TOOLCHAIN_SETUP_MSVC_DLL],
|
||||
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL([$DLL_NAME], [$POSSIBLE_MSVC_DLL],
|
||||
[well-known location in Boot JDK])
|
||||
fi
|
||||
|
||||
|
||||
if test "x$MSVC_DLL" = x; then
|
||||
# Probe: Look in the Windows system32 directory
|
||||
# Probe: Look in the Windows system32 directory
|
||||
CYGWIN_SYSTEMROOT="$SYSTEMROOT"
|
||||
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(CYGWIN_SYSTEMROOT)
|
||||
POSSIBLE_MSVC_DLL="$CYGWIN_SYSTEMROOT/system32/$DLL_NAME"
|
||||
@ -489,7 +530,7 @@ AC_DEFUN([TOOLCHAIN_SETUP_MSVC_DLL],
|
||||
[search of VS100COMNTOOLS])
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if test "x$MSVC_DLL" = x; then
|
||||
# Probe: Search wildly in the VCINSTALLDIR. We've probably lost by now.
|
||||
# (This was the original behaviour; kept since it might turn something up)
|
||||
@ -506,21 +547,17 @@ AC_DEFUN([TOOLCHAIN_SETUP_MSVC_DLL],
|
||||
| $HEAD --lines 1`
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL([$DLL_NAME], [$POSSIBLE_MSVC_DLL],
|
||||
[search of VCINSTALLDIR])
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if test "x$MSVC_DLL" = x; then
|
||||
AC_MSG_CHECKING([for $DLL_NAME])
|
||||
AC_MSG_RESULT([no])
|
||||
AC_MSG_ERROR([Could not find $DLL_NAME. Please specify using --with-msvcr-dll.])
|
||||
fi
|
||||
|
||||
$1=$MSVC_DLL
|
||||
BASIC_FIXUP_PATH($1)
|
||||
AC_SUBST($1, [$]$1)
|
||||
])
|
||||
|
||||
AC_DEFUN([TOOLCHAIN_SETUP_VS_RUNTIME_DLLS],
|
||||
@ -530,14 +567,22 @@ AC_DEFUN([TOOLCHAIN_SETUP_VS_RUNTIME_DLLS],
|
||||
|
||||
if test "x$with_msvcr_dll" != x; then
|
||||
# If given explicitely by user, do not probe. If not present, fail directly.
|
||||
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL([$DLL_NAME], [$with_msvcr_dll],
|
||||
[--with-msvcr-dll])
|
||||
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL($MSVCR_NAME, [$with_msvcr_dll], [--with-msvcr-dll])
|
||||
if test "x$MSVC_DLL" = x; then
|
||||
AC_MSG_ERROR([Could not find a proper $MSVCR_NAME as specified by --with-msvcr-dll])
|
||||
fi
|
||||
MSVCR_DLL="$MSVC_DLL"
|
||||
elif test "x$DEVKIT_MSVCR_DLL" != x; then
|
||||
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL($MSVCR_NAME, [$DEVKIT_MSVCR_DLL], [devkit])
|
||||
if test "x$MSVC_DLL" = x; then
|
||||
AC_MSG_ERROR([Could not find a proper $MSVCR_NAME as specified by devkit])
|
||||
fi
|
||||
MSVCR_DLL="$MSVC_DLL"
|
||||
else
|
||||
TOOLCHAIN_SETUP_MSVC_DLL([MSVCR_DLL], [${MSVCR_NAME}])
|
||||
TOOLCHAIN_SETUP_MSVC_DLL([${MSVCR_NAME}])
|
||||
MSVCR_DLL="$MSVC_DLL"
|
||||
fi
|
||||
AC_SUBST(MSVCR_DLL)
|
||||
|
||||
AC_ARG_WITH(msvcp-dll, [AS_HELP_STRING([--with-msvcp-dll],
|
||||
[path to microsoft C++ runtime dll (msvcp*.dll) (Windows only) @<:@probed@:>@])])
|
||||
@ -545,13 +590,21 @@ AC_DEFUN([TOOLCHAIN_SETUP_VS_RUNTIME_DLLS],
|
||||
if test "x$MSVCP_NAME" != "x"; then
|
||||
if test "x$with_msvcp_dll" != x; then
|
||||
# If given explicitely by user, do not probe. If not present, fail directly.
|
||||
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL([$DLL_NAME], [$with_msvcp_dll],
|
||||
[--with-msvcp-dll])
|
||||
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL($MSVCP_NAME, [$with_msvcp_dll], [--with-msvcp-dll])
|
||||
if test "x$MSVC_DLL" = x; then
|
||||
AC_MSG_ERROR([Could not find a proper $MSVCP_NAME as specified by --with-msvcp-dll])
|
||||
fi
|
||||
MSVCP_DLL="$MSVC_DLL"
|
||||
elif test "x$DEVKIT_MSVCP_DLL" != x; then
|
||||
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL($MSVCP_NAME, [$DEVKIT_MSVCP_DLL], [devkit])
|
||||
if test "x$MSVC_DLL" = x; then
|
||||
AC_MSG_ERROR([Could not find a proper $MSVCP_NAME as specified by devkit])
|
||||
fi
|
||||
MSVCP_DLL="$MSVC_DLL"
|
||||
else
|
||||
TOOLCHAIN_SETUP_MSVC_DLL([MSVCP_DLL], [${MSVCP_NAME}])
|
||||
TOOLCHAIN_SETUP_MSVC_DLL([${MSVCP_NAME}])
|
||||
MSVCP_DLL="$MSVC_DLL"
|
||||
fi
|
||||
AC_SUBST(MSVCP_DLL)
|
||||
fi
|
||||
])
|
||||
|
@ -1293,6 +1293,9 @@ jdk/src/jdk.crypto.pkcs11/windows/native/libj2pkcs11/j2secmod_md.h : jdk/src/win
|
||||
jdk/src/jdk.crypto.pkcs11/windows/native/libj2pkcs11/p11_md.c : jdk/src/windows/native/sun/security/pkcs11/wrapper/p11_md.c
|
||||
jdk/src/jdk.crypto.pkcs11/windows/native/libj2pkcs11/p11_md.h : jdk/src/windows/native/sun/security/pkcs11/wrapper/p11_md.h
|
||||
jdk/src/jdk.deploy.osx/macosx/classes/com/apple/concurrent/package.html : jdk/src/macosx/classes/com/apple/concurrent/package.html
|
||||
jdk/src/jdk.deploy.osx/macosx/classes/apple/applescript : jdk/src/macosx/classes/apple/applescript
|
||||
jdk/src/jdk.deploy.osx/macosx/classes/apple/security : jdk/src/macosx/classes/apple/security
|
||||
jdk/src/jdk.deploy.osx/macosx/classes/com/apple/concurrent : jdk/src/macosx/classes/com/apple/concurrent
|
||||
jdk/src/jdk.deploy.osx/macosx/native/libapplescriptengine : jdk/src/macosx/native/apple/applescript
|
||||
jdk/src/jdk.deploy.osx/macosx/native/libosx/CFileManager.m : jdk/src/macosx/native/com/apple/eio/CFileManager.m
|
||||
jdk/src/jdk.deploy.osx/macosx/native/libosx/Dispatch.m : jdk/src/macosx/native/com/apple/concurrent/Dispatch.m
|
||||
|
@ -298,3 +298,10 @@ b8538bbb6f224ab1dabba579137099c166ad4724 jdk9-b52
|
||||
aadc16ca5ab7d56f92ef9dbfa443595a939241b4 jdk9-b53
|
||||
d469c5ad0c763e325a78e0af3016878a57dfc5cc jdk9-b54
|
||||
734ca5311a225711b79618f3e92f47f07c82154a jdk9-b55
|
||||
ef4afd6832b00b8687832c2a36c90e43750ebe40 jdk9-b56
|
||||
d8ebf1a5b18ccbc849f5bf0f80aa3d78583eee68 jdk9-b57
|
||||
86dd5de1f5cb09073019bd629e22cfcd012d8b4b jdk9-b58
|
||||
cda6ae062f85fac5555f4e1318885b0ecd998bd1 jdk9-b59
|
||||
caa330b275f39282793466529f6864766b31d9fd jdk9-b60
|
||||
d690f489ca0bb95a6157d996da2fa72bcbcf02ea jdk9-b61
|
||||
d27f7e0a7aca129969de23e9934408a31b4abf4c jdk9-b62
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1996, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1996, 2015, 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
|
||||
@ -65,6 +65,7 @@ import com.sun.corba.se.spi.presentation.rmi.StubAdapter;
|
||||
import com.sun.corba.se.spi.logging.CORBALogDomains;
|
||||
import com.sun.corba.se.impl.logging.ORBUtilSystemException;
|
||||
import com.sun.corba.se.impl.corba.AsynchInvoke;
|
||||
import com.sun.corba.se.impl.transport.ManagedLocalsThread;
|
||||
|
||||
public class RequestImpl
|
||||
extends Request
|
||||
@ -255,7 +256,7 @@ public class RequestImpl
|
||||
public synchronized void send_deferred()
|
||||
{
|
||||
AsynchInvoke invokeObject = new AsynchInvoke(_orb, this, false);
|
||||
new Thread(invokeObject).start();
|
||||
new ManagedLocalsThread(invokeObject).start();
|
||||
}
|
||||
|
||||
public synchronized boolean poll_response()
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, 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
|
||||
@ -1768,43 +1768,59 @@ public class IIOPInputStream
|
||||
switch (field.getTypeCode()) {
|
||||
case 'B':
|
||||
byte byteValue = orbStream.read_octet();
|
||||
bridge.putByte( o, field.getFieldID(), byteValue ) ;
|
||||
//reflective code: field.getField().setByte( o, byteValue ) ;
|
||||
if (field.getField() != null) {
|
||||
bridge.putByte( o, field.getFieldID(), byteValue ) ;
|
||||
//reflective code: field.getField().setByte( o, byteValue ) ;
|
||||
}
|
||||
break;
|
||||
case 'Z':
|
||||
boolean booleanValue = orbStream.read_boolean();
|
||||
bridge.putBoolean( o, field.getFieldID(), booleanValue ) ;
|
||||
//reflective code: field.getField().setBoolean( o, booleanValue ) ;
|
||||
if (field.getField() != null) {
|
||||
bridge.putBoolean( o, field.getFieldID(), booleanValue ) ;
|
||||
//reflective code: field.getField().setBoolean( o, booleanValue ) ;
|
||||
}
|
||||
break;
|
||||
case 'C':
|
||||
char charValue = orbStream.read_wchar();
|
||||
bridge.putChar( o, field.getFieldID(), charValue ) ;
|
||||
//reflective code: field.getField().setChar( o, charValue ) ;
|
||||
if (field.getField() != null) {
|
||||
bridge.putChar( o, field.getFieldID(), charValue ) ;
|
||||
//reflective code: field.getField().setChar( o, charValue ) ;
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
short shortValue = orbStream.read_short();
|
||||
bridge.putShort( o, field.getFieldID(), shortValue ) ;
|
||||
//reflective code: field.getField().setShort( o, shortValue ) ;
|
||||
if (field.getField() != null) {
|
||||
bridge.putShort( o, field.getFieldID(), shortValue ) ;
|
||||
//reflective code: field.getField().setShort( o, shortValue ) ;
|
||||
}
|
||||
break;
|
||||
case 'I':
|
||||
int intValue = orbStream.read_long();
|
||||
bridge.putInt( o, field.getFieldID(), intValue ) ;
|
||||
//reflective code: field.getField().setInt( o, intValue ) ;
|
||||
if (field.getField() != null) {
|
||||
bridge.putInt( o, field.getFieldID(), intValue ) ;
|
||||
//reflective code: field.getField().setInt( o, intValue ) ;
|
||||
}
|
||||
break;
|
||||
case 'J':
|
||||
long longValue = orbStream.read_longlong();
|
||||
bridge.putLong( o, field.getFieldID(), longValue ) ;
|
||||
//reflective code: field.getField().setLong( o, longValue ) ;
|
||||
if (field.getField() != null) {
|
||||
bridge.putLong( o, field.getFieldID(), longValue ) ;
|
||||
//reflective code: field.getField().setLong( o, longValue ) ;
|
||||
}
|
||||
break;
|
||||
case 'F' :
|
||||
float floatValue = orbStream.read_float();
|
||||
bridge.putFloat( o, field.getFieldID(), floatValue ) ;
|
||||
//reflective code: field.getField().setFloat( o, floatValue ) ;
|
||||
if (field.getField() != null) {
|
||||
bridge.putFloat( o, field.getFieldID(), floatValue ) ;
|
||||
//reflective code: field.getField().setFloat( o, floatValue ) ;
|
||||
}
|
||||
break;
|
||||
case 'D' :
|
||||
double doubleValue = orbStream.read_double();
|
||||
bridge.putDouble( o, field.getFieldID(), doubleValue ) ;
|
||||
//reflective code: field.getField().setDouble( o, doubleValue ) ;
|
||||
if (field.getField() != null) {
|
||||
bridge.putDouble( o, field.getFieldID(), doubleValue ) ;
|
||||
//reflective code: field.getField().setDouble( o, doubleValue ) ;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
// XXX I18N, logging needed.
|
||||
@ -2217,9 +2233,6 @@ public class IIOPInputStream
|
||||
|
||||
if (o != null) {
|
||||
for (int i = 0; i < primFields; ++i) {
|
||||
if (fields[i].getField() == null)
|
||||
continue;
|
||||
|
||||
inputPrimitiveField(o, cl, fields[i]);
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2015, 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
|
||||
@ -32,6 +32,7 @@
|
||||
package com.sun.corba.se.impl.io;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.NotActiveException;
|
||||
import java.io.OutputStream;
|
||||
import java.io.ObjectOutputStream;
|
||||
import java.io.ObjectOutput;
|
||||
@ -154,7 +155,9 @@ public abstract class OutputStreamHook extends ObjectOutputStream
|
||||
|
||||
public ObjectOutputStream.PutField putFields()
|
||||
throws IOException {
|
||||
putFields = new HookPutFields();
|
||||
if (putFields == null) {
|
||||
putFields = new HookPutFields();
|
||||
}
|
||||
return putFields;
|
||||
}
|
||||
|
||||
@ -175,8 +178,11 @@ public abstract class OutputStreamHook extends ObjectOutputStream
|
||||
throws IOException {
|
||||
|
||||
writeObjectState.defaultWriteObject(this);
|
||||
|
||||
putFields.write(this);
|
||||
if (putFields != null) {
|
||||
putFields.write(this);
|
||||
} else {
|
||||
throw new NotActiveException("no current PutField object");
|
||||
}
|
||||
}
|
||||
|
||||
abstract org.omg.CORBA_2_3.portable.OutputStream getOrbStream();
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -112,6 +112,8 @@ import com.sun.corba.se.impl.util.JDKBridge;
|
||||
import com.sun.corba.se.impl.logging.UtilSystemException;
|
||||
import com.sun.corba.se.spi.logging.CORBALogDomains;
|
||||
import sun.corba.SharedSecrets;
|
||||
import com.sun.corba.se.impl.transport.ManagedLocalsThread;
|
||||
|
||||
|
||||
/**
|
||||
* Provides utility methods that can be used by stubs and ties to
|
||||
@ -750,7 +752,7 @@ public class Util implements javax.rmi.CORBA.UtilDelegate
|
||||
}
|
||||
}
|
||||
|
||||
class KeepAlive extends Thread
|
||||
class KeepAlive extends ManagedLocalsThread
|
||||
{
|
||||
boolean quit = false;
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, 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
|
||||
@ -103,6 +103,7 @@ import com.sun.corba.se.impl.orbutil.concurrent.Sync ;
|
||||
import com.sun.corba.se.impl.orbutil.concurrent.SyncUtil ;
|
||||
import com.sun.corba.se.impl.orbutil.concurrent.ReentrantMutex ;
|
||||
import com.sun.corba.se.impl.orbutil.concurrent.CondVar ;
|
||||
import com.sun.corba.se.impl.transport.ManagedLocalsThread;
|
||||
|
||||
/**
|
||||
* POAImpl is the implementation of the Portable Object Adapter. It
|
||||
@ -516,7 +517,7 @@ public class POAImpl extends ObjectAdapterBase implements POA
|
||||
|
||||
// Converted from anonymous class to local class
|
||||
// so that we can call performDestroy() directly.
|
||||
static class DestroyThread extends Thread {
|
||||
static class DestroyThread extends ManagedLocalsThread {
|
||||
private boolean wait ;
|
||||
private boolean etherealize ;
|
||||
private boolean debug ;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, 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
|
||||
@ -48,6 +48,7 @@ import com.sun.corba.se.spi.protocol.PIHandler ;
|
||||
import com.sun.corba.se.impl.logging.POASystemException ;
|
||||
|
||||
import com.sun.corba.se.impl.orbutil.ORBUtility ;
|
||||
import com.sun.corba.se.impl.transport.ManagedLocalsThread;
|
||||
|
||||
/** POAManagerImpl is the implementation of the POAManager interface.
|
||||
* Its public methods are activate(), hold_requests(), discard_requests()
|
||||
@ -357,7 +358,7 @@ public class POAManagerImpl extends org.omg.CORBA.LocalObject implements
|
||||
if (wait_for_completion)
|
||||
deactivator.run() ;
|
||||
else {
|
||||
Thread thr = new Thread(deactivator) ;
|
||||
Thread thr = new ManagedLocalsThread(deactivator) ;
|
||||
thr.start() ;
|
||||
}
|
||||
} finally {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2002, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -26,7 +26,6 @@
|
||||
package com.sun.corba.se.impl.oa.poa ;
|
||||
|
||||
import java.util.Set ;
|
||||
|
||||
import org.omg.CORBA.SystemException ;
|
||||
|
||||
import org.omg.PortableServer.ServantActivator ;
|
||||
@ -50,6 +49,7 @@ import com.sun.corba.se.impl.javax.rmi.CORBA.Util ;
|
||||
|
||||
import com.sun.corba.se.spi.oa.OAInvocationInfo ;
|
||||
import com.sun.corba.se.spi.oa.NullServant ;
|
||||
import com.sun.corba.se.impl.transport.ManagedLocalsThread;
|
||||
|
||||
/** Implementation of POARequesHandler that provides policy specific
|
||||
* operations on the POA.
|
||||
@ -303,13 +303,14 @@ public class POAPolicyMediatorImpl_R_USM extends POAPolicyMediatorBase_R {
|
||||
throw new WrongPolicy();
|
||||
}
|
||||
|
||||
class Etherealizer extends Thread {
|
||||
class Etherealizer extends ManagedLocalsThread {
|
||||
private POAPolicyMediatorImpl_R_USM mediator ;
|
||||
private ActiveObjectMap.Key key ;
|
||||
private AOMEntry entry ;
|
||||
private Servant servant ;
|
||||
private boolean debug ;
|
||||
|
||||
|
||||
public Etherealizer( POAPolicyMediatorImpl_R_USM mediator,
|
||||
ActiveObjectMap.Key key, AOMEntry entry, Servant servant,
|
||||
boolean debug )
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2002, 2015, 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
|
||||
@ -165,6 +165,7 @@ import com.sun.corba.se.impl.util.Utility;
|
||||
import com.sun.corba.se.impl.logging.ORBUtilSystemException;
|
||||
import com.sun.corba.se.impl.copyobject.CopierManagerImpl;
|
||||
import com.sun.corba.se.impl.presentation.rmi.PresentationManagerImpl;
|
||||
import com.sun.corba.se.impl.transport.ManagedLocalsThread;
|
||||
|
||||
/**
|
||||
* The JavaIDL ORB implementation.
|
||||
@ -691,7 +692,7 @@ public class ORBImpl extends com.sun.corba.se.spi.orb.ORB
|
||||
for (int i = 0; i < req.length; i++) {
|
||||
AsynchInvoke invokeObject = new AsynchInvoke( this,
|
||||
(com.sun.corba.se.impl.corba.RequestImpl)req[i], true);
|
||||
new Thread(invokeObject).start();
|
||||
new ManagedLocalsThread(invokeObject).start();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, 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
|
||||
@ -54,6 +54,7 @@ import com.sun.corba.se.spi.monitoring.LongMonitoredAttributeBase;
|
||||
import com.sun.corba.se.impl.logging.ORBUtilSystemException;
|
||||
import com.sun.corba.se.impl.orbutil.ORBConstants;
|
||||
import com.sun.corba.se.spi.logging.CORBALogDomains;
|
||||
import com.sun.corba.se.impl.transport.ManagedLocalsThread;
|
||||
|
||||
public class ThreadPoolImpl implements ThreadPool
|
||||
{
|
||||
@ -459,7 +460,7 @@ public class ThreadPoolImpl implements ThreadPool
|
||||
}
|
||||
|
||||
|
||||
private class WorkerThread extends Thread implements Closeable
|
||||
private class WorkerThread extends ManagedLocalsThread implements Closeable
|
||||
{
|
||||
private Work currentWork;
|
||||
private int threadId = 0; // unique id for the thread
|
||||
|
@ -0,0 +1,116 @@
|
||||
/*
|
||||
* Copyright (c) 2015, 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 com.sun.corba.se.impl.transport;
|
||||
|
||||
import sun.misc.Unsafe;
|
||||
import java.lang.reflect.Field;
|
||||
import java.security.AccessController;
|
||||
import java.security.PrivilegedAction;
|
||||
|
||||
/**
|
||||
* A thread that has it's thread locals, and inheritable thread
|
||||
* locals erased on construction.
|
||||
*/
|
||||
public class ManagedLocalsThread extends Thread {
|
||||
private static final Unsafe UNSAFE;
|
||||
private static final long THREAD_LOCALS;
|
||||
private static final long INHERITABLE_THREAD_LOCALS;
|
||||
|
||||
public ManagedLocalsThread () {
|
||||
super();
|
||||
}
|
||||
|
||||
public ManagedLocalsThread(String name) {
|
||||
super(name);
|
||||
eraseThreadLocals();
|
||||
}
|
||||
public ManagedLocalsThread(Runnable target) {
|
||||
super(target);
|
||||
eraseThreadLocals();
|
||||
}
|
||||
|
||||
public ManagedLocalsThread(Runnable target, String name) {
|
||||
super(target, name);
|
||||
eraseThreadLocals();
|
||||
}
|
||||
|
||||
public ManagedLocalsThread(ThreadGroup group, Runnable target, String name) {
|
||||
super(group, target, name);
|
||||
eraseThreadLocals();
|
||||
}
|
||||
|
||||
public ManagedLocalsThread(ThreadGroup group, String name) {
|
||||
super(group, name);
|
||||
eraseThreadLocals();
|
||||
}
|
||||
|
||||
/**
|
||||
* Drops all thread locals (and inherited thread locals).
|
||||
*/
|
||||
public final void eraseThreadLocals() {
|
||||
UNSAFE.putObject(this, THREAD_LOCALS, null);
|
||||
UNSAFE.putObject(this, INHERITABLE_THREAD_LOCALS, null);
|
||||
}
|
||||
|
||||
private static Unsafe getUnsafe() {
|
||||
PrivilegedAction<Unsafe> pa = () -> {
|
||||
Class<?> unsafeClass = sun.misc.Unsafe.class;
|
||||
try {
|
||||
Field f = unsafeClass.getDeclaredField("theUnsafe");
|
||||
f.setAccessible(true);
|
||||
return (Unsafe) f.get(null);
|
||||
} catch (Exception e) {
|
||||
throw new Error(e);
|
||||
}
|
||||
};
|
||||
return AccessController.doPrivileged(pa);
|
||||
}
|
||||
|
||||
private static long getThreadFieldOffset(String fieldName) {
|
||||
PrivilegedAction<Long> pa = () -> {
|
||||
Class<?> t = Thread.class;
|
||||
long fieldOffset;
|
||||
try {
|
||||
fieldOffset = UNSAFE.objectFieldOffset(t
|
||||
.getDeclaredField("inheritableThreadLocals"));
|
||||
} catch (Exception e) {
|
||||
throw new Error(e);
|
||||
}
|
||||
return fieldOffset;
|
||||
};
|
||||
return AccessController.doPrivileged(pa);
|
||||
}
|
||||
|
||||
static {
|
||||
UNSAFE = getUnsafe();
|
||||
try {
|
||||
THREAD_LOCALS = getThreadFieldOffset("threadLocals");
|
||||
INHERITABLE_THREAD_LOCALS = getThreadFieldOffset("inheritableThreadLocals");
|
||||
} catch (Exception e) {
|
||||
throw new Error(e);
|
||||
}
|
||||
}
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, 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
|
||||
@ -57,7 +57,7 @@ import com.sun.corba.se.impl.orbutil.ORBUtility;
|
||||
*/
|
||||
class SelectorImpl
|
||||
extends
|
||||
Thread
|
||||
ManagedLocalsThread
|
||||
implements
|
||||
com.sun.corba.se.pept.transport.Selector
|
||||
{
|
||||
|
@ -2,7 +2,7 @@
|
||||
<html>
|
||||
<head>
|
||||
<!--
|
||||
Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2004, 2015, 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
|
||||
@ -30,7 +30,7 @@ questions.
|
||||
<body bgcolor="white">
|
||||
Contains Activity service related exceptions thrown by the ORB machinery during
|
||||
unmarshalling.
|
||||
<p>
|
||||
|
||||
@since 1.5
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, 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
|
||||
@ -232,6 +232,8 @@ Tie#deactivate}
|
||||
* and <tt>loader</tt> is non-null, then call <tt>loader.loadClass(className)</tt>.
|
||||
* <LI>If a class was successfully loaded by step 1, 2, 3, or 4, then
|
||||
* return the loaded class, else throw <tt>ClassNotFoundException</tt>.
|
||||
* </UL>
|
||||
*
|
||||
* @param className the name of the class.
|
||||
* @param remoteCodebase a space-separated list of URLs at which
|
||||
* the class might be found. May be null.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, 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
|
||||
@ -52,21 +52,21 @@ import org.omg.CORBA.portable.IDLEntity;
|
||||
* </OL>
|
||||
*
|
||||
* <P>
|
||||
* <a name="anyOps"</a>
|
||||
* <a name="anyOps"></a>
|
||||
* A large part of the <code>Any</code> class consists of pairs of methods
|
||||
* for inserting values into and extracting values from an
|
||||
* <code>Any</code> object.
|
||||
* <P>
|
||||
* For a given primitive type X, these methods are:
|
||||
* <dl>
|
||||
* <dt><code><bold> void insert_X(X x)</bold></code>
|
||||
* <dt><code><b>void insert_X(X x)</b></code>
|
||||
* <dd> This method allows the insertion of
|
||||
* an instance <code>x</code> of primitive type <code>X</code>
|
||||
* into the <code>value</code> field of the <code>Any</code> object.
|
||||
* Note that the method
|
||||
* <code>insert_X</code> also resets the <code>Any</code> object's
|
||||
* <code>type</code> field if necessary.
|
||||
* <dt> <code><bold>X extract_X()</bold></code>
|
||||
* <dt> <code><b>X extract_X()</b></code>
|
||||
* <dd> This method allows the extraction of an instance of
|
||||
* type <code>X</code> from the <code>Any</code> object.
|
||||
* <BR>
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1996, 2000, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1996, 2015, 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
|
||||
@ -40,10 +40,10 @@ package org.omg.CORBA;
|
||||
* <P>
|
||||
* The class also contains two methods:
|
||||
* <UL>
|
||||
* <LI><code>public int <bold>value</bold>()</code> -- which accesses the
|
||||
* <LI><code>public int <b>value</b>()</code> -- which accesses the
|
||||
* <code>value</code> field of a <code>CompletionStatus</code> object
|
||||
* <LI><code>public static CompletionStatus
|
||||
* <bold>from_int</bold>(int i)</code> --
|
||||
* <b>from_int</b>(int i)</code> --
|
||||
* for creating an instance from one of the <code>int</code> members
|
||||
* </UL>
|
||||
* @see org.omg.CORBA.SystemException
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 1999, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, 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
|
||||
@ -35,7 +35,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
{
|
||||
/** Reads an IDL <code>Any</code> value from the input stream.
|
||||
* @return the <code>Any</code> read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -43,7 +43,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL boolean value from the input stream.
|
||||
* @return the boolean read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -51,7 +51,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL character value from the input stream.
|
||||
* @return the character read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -59,7 +59,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL wide character value from the input stream.
|
||||
* @return the wide character read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -67,7 +67,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL octet value from the input stream.
|
||||
* @return the octet value read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -75,7 +75,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL short from the input stream.
|
||||
* @return the short read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -83,7 +83,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL unsigned short from the input stream.
|
||||
* @return the unsigned short read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -91,7 +91,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL long from the input stream.
|
||||
* @return the long read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -99,7 +99,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL unsigned long from the input stream.
|
||||
* @return the unsigned long read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -107,7 +107,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL long long from the input stream.
|
||||
* @return the long long read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -115,7 +115,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an unsigned IDL long long from the input stream.
|
||||
* @return the unsigned long long read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -123,7 +123,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL float from the input stream.
|
||||
* @return the float read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -131,7 +131,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL double from the input stream.
|
||||
* @return the double read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -140,7 +140,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL string from the input stream.
|
||||
* @return the string read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -148,7 +148,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL wide string from the input stream.
|
||||
* @return the wide string read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -156,7 +156,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL CORBA::Object from the input stream.
|
||||
* @return the CORBA::Object read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -164,7 +164,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL Abstract interface from the input stream.
|
||||
* @return the Abstract interface read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -172,7 +172,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL value type from the input stream.
|
||||
* @return the value type read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -180,7 +180,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
|
||||
/** Reads an IDL typecode from the input stream.
|
||||
* @return the typecode read.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -192,7 +192,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -204,7 +204,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -216,7 +216,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -228,7 +228,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -240,7 +240,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -252,7 +252,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -264,7 +264,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -276,7 +276,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -288,7 +288,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -300,7 +300,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -312,7 +312,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -324,7 +324,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
@ -336,7 +336,7 @@ public interface DataInputStream extends org.omg.CORBA.portable.ValueBase
|
||||
* @param offset The index into seq of the first element to read from the
|
||||
* input stream.
|
||||
* @param length The number of elements to read from the input stream.
|
||||
* @throws <code>org.omg.CORBA.MARSHAL</code>
|
||||
* @throws org.omg.CORBA.MARSHAL
|
||||
* If an inconsistency is detected, including not having registered
|
||||
* a streaming policy, then the standard system exception MARSHAL is raised.
|
||||
*/
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, 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
|
||||
@ -71,7 +71,7 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* to attempt determination of whether two distinct object references
|
||||
* refer to the same object, since such determination could be impractically
|
||||
* expensive.
|
||||
* <P>Default implementation of the org.omg.CORBA.Object method. <P>
|
||||
* <P>Default implementation of the org.omg.CORBA.Object method.
|
||||
*
|
||||
* @param that the object reference with which to check for equivalence
|
||||
* @return <code>true</code> if this object reference is known to be
|
||||
@ -87,7 +87,7 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
/**
|
||||
* Always returns <code>false</code>.
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @return <code>false</code>
|
||||
*/
|
||||
@ -99,9 +99,10 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Returns a hash value that is consistent for the
|
||||
* lifetime of the object, using the given number as the maximum.
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @param maximum an <code>int</code> identifying maximum value of
|
||||
* the hashcode
|
||||
* the hashcode
|
||||
* @return this instance's hashcode
|
||||
*/
|
||||
public int _hash(int maximum) {
|
||||
@ -113,7 +114,7 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* the message "This is a locally constrained object." This method
|
||||
* does not apply to local objects and is therefore not implemented.
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @param repository_id a <code>String</code>
|
||||
* @return NO_IMPLEMENT because this is a locally constrained object
|
||||
@ -131,7 +132,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @return a duplicate of this <code>LocalObject</code> instance.
|
||||
* @exception NO_IMPLEMENT
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
@ -145,7 +147,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @exception NO_IMPLEMENT
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
* comments for unimplemented features</a>
|
||||
@ -158,7 +161,7 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @param operation a <code>String</code> giving the name of an operation
|
||||
* to be performed by the request that is returned
|
||||
@ -175,7 +178,7 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @param ctx a <code>Context</code> object containing
|
||||
* a list of properties
|
||||
@ -202,7 +205,7 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @param ctx a <code>Context</code> object containing
|
||||
* a list of properties
|
||||
@ -237,7 +240,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* the message "This is a locally constrained object." This method
|
||||
* does not apply to local objects and is therefore not implemented.
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @return NO_IMPLEMENT because this is a locally constrained object
|
||||
* and this method does not apply to local objects
|
||||
* @exception NO_IMPLEMENT because this is a locally constrained object
|
||||
@ -254,7 +258,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @exception NO_IMPLEMENT
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
* comments for unimplemented features</a>
|
||||
@ -275,7 +280,7 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
* @return the ORB instance that created the Delegate contained in this
|
||||
* <code>ObjectImpl</code>
|
||||
* @exception NO_IMPLEMENT
|
||||
@ -291,7 +296,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* the message "This is a locally constrained object." This method
|
||||
* does not apply to local objects and is therefore not implemented.
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @param policy_type an <code>int</code>
|
||||
* @return NO_IMPLEMENT because this is a locally constrained object
|
||||
* and this method does not apply to local objects
|
||||
@ -310,7 +316,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* the message "This is a locally constrained object." This method
|
||||
* does not apply to local objects and is therefore not implemented.
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @exception NO_IMPLEMENT
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
* comments for unimplemented features</a>
|
||||
@ -347,7 +354,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* Returns <code>true</code> for this <code>LocalObject</code> instance.<P>
|
||||
* Returns <code>true</code> for this <code>LocalObject</code> instance.
|
||||
*
|
||||
* @return <code>true</code> always
|
||||
* @exception NO_IMPLEMENT
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
@ -361,7 +369,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @param operation a <code>String</code> indicating which operation
|
||||
* to preinvoke
|
||||
* @param expectedType the class of the type of operation mentioned above
|
||||
@ -381,7 +390,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* Throws an <code>org.omg.CORBA.NO_IMPLEMENT</code> exception with
|
||||
* the message "This is a locally constrained object."
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @param servant the servant object on which to post-invoke
|
||||
* @exception NO_IMPLEMENT
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
@ -403,8 +413,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
* <P>Called by a stub to obtain an OutputStream for
|
||||
* marshaling arguments. The stub must supply the operation name,
|
||||
* and indicate if a response is expected (i.e is this a oneway
|
||||
* call).<P>
|
||||
* and indicate if a response is expected (i.e is this a oneway call).
|
||||
*
|
||||
* @param operation the name of the operation being requested
|
||||
* @param responseExpected <code>true</code> if a response is expected,
|
||||
* <code>false</code> if it is a one-way call
|
||||
@ -433,7 +443,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* marshaled reply. If an exception occurs, <code>_invoke</code> may throw an
|
||||
* <code>ApplicationException</code> object which contains an
|
||||
* <code>InputStream</code> from
|
||||
* which the user exception state may be unmarshaled.<P>
|
||||
* which the user exception state may be unmarshaled.
|
||||
*
|
||||
* @param output the <code>OutputStream</code> to invoke
|
||||
* @return NO_IMPLEMENT because this is a locally constrained object
|
||||
* and this method does not apply to local objects
|
||||
@ -470,7 +481,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* <code>ApplicationException.getInputStream()</code>.
|
||||
* A null
|
||||
* value may also be passed to <code>_releaseReply</code>, in which case the
|
||||
* method is a no-op.<P>
|
||||
* method is a no-op.
|
||||
*
|
||||
* @param input the reply stream back to the ORB or null
|
||||
* @exception NO_IMPLEMENT
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
@ -485,7 +497,8 @@ public class LocalObject implements org.omg.CORBA.Object
|
||||
* the message "This is a locally constrained object." This method
|
||||
* does not apply to local objects and is therefore not implemented.
|
||||
* This method is the default implementation of the
|
||||
* <code>org.omg.CORBA.Object</code> method.<P>
|
||||
* <code>org.omg.CORBA.Object</code> method.
|
||||
*
|
||||
* @return NO_IMPLEMENT because this is a locally constrained object
|
||||
* and this method does not apply to local objects
|
||||
* @exception NO_IMPLEMENT because this is a locally constrained object
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1996, 2000, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1996, 2015, 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
|
||||
@ -63,7 +63,6 @@ package org.omg.CORBA;
|
||||
* Note also that you can add any number of
|
||||
* <code>NamedValue</code> objects to this list regardless of
|
||||
* its original length.
|
||||
* <P>
|
||||
* <LI><code>org.omg.CORBA.ORB.create_operation_list</code>
|
||||
* <PRE>
|
||||
* org.omg.CORBA.NVList nv = orb.create_operation_list(myOperationDef);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1995, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1995, 2015, 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
|
||||
@ -101,7 +101,7 @@ import sun.reflect.misc.ReflectUtil;
|
||||
* <P>
|
||||
* When an ORB instance is being created, the class name of the ORB
|
||||
* implementation is located using
|
||||
* the following standard search order:<P>
|
||||
* the following standard search order:
|
||||
*
|
||||
* <OL>
|
||||
* <LI>check in Applet parameter or application string array, if any
|
||||
@ -1036,7 +1036,7 @@ abstract public class ORB {
|
||||
* <P>
|
||||
* Recursive types can only appear within sequences which can be empty.
|
||||
* That way marshaling problems, when transmitting the struct in an Any, are avoided.
|
||||
* <P>
|
||||
*
|
||||
* @param id the logical id of the referenced type
|
||||
* @return the requested TypeCode
|
||||
*/
|
||||
@ -1179,7 +1179,7 @@ abstract public class ORB {
|
||||
* value <tt>true</tt>. If no information for the requested
|
||||
* services type is available, the operation returns <tt>false</tt>
|
||||
* (i.e., the service is not supported by this ORB).
|
||||
* <P>
|
||||
*
|
||||
* @param service_type a <code>short</code> indicating the
|
||||
* service type for which information is being requested
|
||||
* @param service_info a <code>ServiceInformationHolder</code> object
|
||||
@ -1203,7 +1203,7 @@ abstract public class ORB {
|
||||
/**
|
||||
* Creates a new <code>DynAny</code> object from the given
|
||||
* <code>Any</code> object.
|
||||
* <P>
|
||||
*
|
||||
* @param value the <code>Any</code> object from which to create a new
|
||||
* <code>DynAny</code> object
|
||||
* @return the new <code>DynAny</code> object created from the given
|
||||
@ -1221,7 +1221,7 @@ abstract public class ORB {
|
||||
/**
|
||||
* Creates a basic <code>DynAny</code> object from the given
|
||||
* <code>TypeCode</code> object.
|
||||
* <P>
|
||||
*
|
||||
* @param type the <code>TypeCode</code> object from which to create a new
|
||||
* <code>DynAny</code> object
|
||||
* @return the new <code>DynAny</code> object created from the given
|
||||
@ -1241,7 +1241,7 @@ abstract public class ORB {
|
||||
/**
|
||||
* Creates a new <code>DynStruct</code> object from the given
|
||||
* <code>TypeCode</code> object.
|
||||
* <P>
|
||||
*
|
||||
* @param type the <code>TypeCode</code> object from which to create a new
|
||||
* <code>DynStruct</code> object
|
||||
* @return the new <code>DynStruct</code> object created from the given
|
||||
@ -1261,7 +1261,7 @@ abstract public class ORB {
|
||||
/**
|
||||
* Creates a new <code>DynSequence</code> object from the given
|
||||
* <code>TypeCode</code> object.
|
||||
* <P>
|
||||
*
|
||||
* @param type the <code>TypeCode</code> object from which to create a new
|
||||
* <code>DynSequence</code> object
|
||||
* @return the new <code>DynSequence</code> object created from the given
|
||||
@ -1282,7 +1282,7 @@ abstract public class ORB {
|
||||
/**
|
||||
* Creates a new <code>DynArray</code> object from the given
|
||||
* <code>TypeCode</code> object.
|
||||
* <P>
|
||||
*
|
||||
* @param type the <code>TypeCode</code> object from which to create a new
|
||||
* <code>DynArray</code> object
|
||||
* @return the new <code>DynArray</code> object created from the given
|
||||
@ -1302,7 +1302,7 @@ abstract public class ORB {
|
||||
/**
|
||||
* Creates a new <code>DynUnion</code> object from the given
|
||||
* <code>TypeCode</code> object.
|
||||
* <P>
|
||||
*
|
||||
* @param type the <code>TypeCode</code> object from which to create a new
|
||||
* <code>DynUnion</code> object
|
||||
* @return the new <code>DynUnion</code> object created from the given
|
||||
@ -1322,7 +1322,7 @@ abstract public class ORB {
|
||||
/**
|
||||
* Creates a new <code>DynEnum</code> object from the given
|
||||
* <code>TypeCode</code> object.
|
||||
* <P>
|
||||
*
|
||||
* @param type the <code>TypeCode</code> object from which to create a new
|
||||
* <code>DynEnum</code> object
|
||||
* @return the new <code>DynEnum</code> object created from the given
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1995, 1999, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1995, 2015, 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
|
||||
@ -53,7 +53,7 @@ package org.omg.CORBA;
|
||||
* <code>org.omg.CORBA.Object</code>
|
||||
* are provided in the class <code>org.omg.CORBA.portable.ObjectImpl</code>,
|
||||
* which is the base class for stubs and object implementations.
|
||||
* <p>
|
||||
*
|
||||
* @see org.omg.CORBA.portable.ObjectImpl
|
||||
*/
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, 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
|
||||
@ -31,7 +31,7 @@ package org.omg.CORBA;
|
||||
* the client, for access control
|
||||
* and other purposes. It contains a single attribute, the name of the
|
||||
* <code>Principal</code>, encoded as a sequence of bytes.
|
||||
* <P>
|
||||
*
|
||||
* @deprecated Deprecated by CORBA 2.2.
|
||||
*/
|
||||
@Deprecated
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1996, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1996, 2015, 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
|
||||
@ -57,7 +57,7 @@ package org.omg.CORBA;
|
||||
* Similarly, type information needs to be provided for the response,
|
||||
* for either the expected result or for an exception, so the methods
|
||||
* <code>result</code> and <code>except</code> take an <code>Any</code>
|
||||
* object as a parameter. <p>
|
||||
* object as a parameter.
|
||||
*
|
||||
* @see org.omg.CORBA.DynamicImplementation
|
||||
* @see org.omg.CORBA.NVList
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1995, 2001, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1995, 2015, 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
|
||||
@ -32,8 +32,8 @@ import org.omg.CORBA.portable.OutputStream;
|
||||
/**
|
||||
* The Holder for <tt>Short</tt>. For more information on
|
||||
* Holder files, see <a href="doc-files/generatedfiles.html#holder">
|
||||
* "Generated Files: Holder Files"</a>.<P
|
||||
* A Holder class for a <code>short</code>
|
||||
* "Generated Files: Holder Files"</a>.
|
||||
* <P>A Holder class for a <code>short</code>
|
||||
* that is used to store "out" and "inout" parameters in IDL operations.
|
||||
* If an IDL operation signature has an IDL <code>short</code> as an "out"
|
||||
* or "inout" parameter, the programmer must pass an instance of
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, 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
|
||||
@ -52,7 +52,7 @@ package org.omg.CORBA;
|
||||
* The variable <code>k</code> represents the <code>TCKind</code>
|
||||
* instance for the IDL type <code>string</code>, which is
|
||||
* <code>tk_string</code>.
|
||||
* <P>
|
||||
*
|
||||
* <LI>the method <code>value</code> for accessing the
|
||||
* <code>_value</code> field of a <code>TCKind</code> constant
|
||||
* <P>Example:
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1996, 2003, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1996, 2015, 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
|
||||
@ -31,7 +31,7 @@ import org.omg.CORBA.portable.IDLEntity;
|
||||
/**
|
||||
* A container for information about a specific CORBA data
|
||||
* type.
|
||||
*<P>
|
||||
* <P>
|
||||
* <code>TypeCode</code> objects are used:
|
||||
* <UL>
|
||||
* <LI>in the Dynamic Invocation Interface -- to indicate the types
|
||||
@ -59,7 +59,7 @@ import org.omg.CORBA.portable.IDLEntity;
|
||||
* with the value
|
||||
* <code>TCKind.tk_sequence</code> and also fields with the values
|
||||
* <code>boolean</code> and <code>10</code> for the
|
||||
* type of sequence elements and the length of the sequence. <p>
|
||||
* type of sequence elements and the length of the sequence.
|
||||
* </UL>
|
||||
*
|
||||
* <code>TypeCode</code> objects can be obtained in various ways:
|
||||
@ -164,8 +164,7 @@ import org.omg.CORBA.portable.IDLEntity;
|
||||
*
|
||||
* Java IDL extends the CORBA specification to allow all operations permitted
|
||||
* on a <code>struct</code> <code>TypeCode</code> to be permitted
|
||||
* on an <code>exception</code> <code>TypeCode</code> as well. <p>
|
||||
*
|
||||
* on an <code>exception</code> <code>TypeCode</code> as well.
|
||||
*/
|
||||
public abstract class TypeCode implements IDLEntity {
|
||||
|
||||
@ -175,23 +174,21 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* they are interchangeable and give identical results when
|
||||
* <code>TypeCode</code> operations are applied to them.
|
||||
*
|
||||
* @param tc the <code>TypeCode</code> object to compare against
|
||||
* @return <code>true</code> if the type codes are equal;
|
||||
* @param tc the <code>TypeCode</code> object to compare against
|
||||
* @return <code>true</code> if the type codes are equal;
|
||||
* <code>false</code> otherwise
|
||||
*/
|
||||
|
||||
public abstract boolean equal(TypeCode tc);
|
||||
|
||||
/**
|
||||
* Tests to see if the given <code>TypeCode</code> object is
|
||||
* equivalent to this <code>TypeCode</code> object.
|
||||
* <P>
|
||||
*
|
||||
*
|
||||
* @param tc the typecode to compare with this typecode
|
||||
*
|
||||
* @return <code>true</code> if the given typecode is equivalent to
|
||||
* this typecode; <code>false</code> otherwise
|
||||
* Tests to see if the given <code>TypeCode</code> object is
|
||||
* equivalent to this <code>TypeCode</code> object.
|
||||
*
|
||||
*
|
||||
* @param tc the typecode to compare with this typecode
|
||||
*
|
||||
* @return <code>true</code> if the given typecode is equivalent to
|
||||
* this typecode; <code>false</code> otherwise
|
||||
*
|
||||
*/
|
||||
public abstract boolean equivalent(TypeCode tc);
|
||||
@ -199,9 +196,9 @@ public abstract class TypeCode implements IDLEntity {
|
||||
/**
|
||||
* Strips out all optional name and member name fields,
|
||||
* but leaves all alias typecodes intact.
|
||||
* @return a <code>TypeCode</code> object with optional name and
|
||||
* member name fields stripped out, except for alias typecodes,
|
||||
* which are left intact
|
||||
* @return a <code>TypeCode</code> object with optional name and
|
||||
* member name fields stripped out, except for alias typecodes,
|
||||
* which are left intact
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
* comments for unimplemented features</a>
|
||||
*/
|
||||
@ -220,7 +217,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* value of the <code>kind</code> field of this
|
||||
* <code>TypeCode</code> object
|
||||
*/
|
||||
|
||||
public abstract TCKind kind();
|
||||
|
||||
/**
|
||||
@ -239,13 +235,12 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* also always have a RepositoryId. If there is no RepositoryId, the
|
||||
* method can return an empty string.
|
||||
*
|
||||
* @return the RepositoryId for this <code>TypeCode</code> object
|
||||
* or an empty string if there is no RepositoryID
|
||||
* @return the RepositoryId for this <code>TypeCode</code> object
|
||||
* or an empty string if there is no RepositoryID
|
||||
* @throws org.omg.CORBA.TypeCodePackage.BadKind if the method
|
||||
* is invoked on an inappropriate kind of<code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract String id() throws BadKind;
|
||||
|
||||
/**
|
||||
@ -268,7 +263,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on an inappropriate kind of<code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract String name() throws BadKind;
|
||||
|
||||
/**
|
||||
@ -287,7 +281,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on an inappropriate kind of <code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract int member_count() throws BadKind;
|
||||
|
||||
/**
|
||||
@ -312,7 +305,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on an inappropriate kind of <code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract String member_name(int index)
|
||||
throws BadKind, org.omg.CORBA.TypeCodePackage.Bounds;
|
||||
|
||||
@ -336,7 +328,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on an inappropriate kind of <code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract TypeCode member_type(int index)
|
||||
throws BadKind, org.omg.CORBA.TypeCodePackage.Bounds;
|
||||
|
||||
@ -344,13 +335,13 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* Retrieves the label of the union member
|
||||
* identified by the given index. For the default member,
|
||||
* the label is the zero octet.
|
||||
*<P>
|
||||
* <P>
|
||||
* The method <code>member_label</code> can only be invoked on union
|
||||
* <code>TypeCode</code> objects.
|
||||
*
|
||||
* @param index index of the union member for which the
|
||||
* @param index index of the union member for which the
|
||||
* label is being requested
|
||||
* @return an <code>Any</code> object describing the label of
|
||||
* @return an <code>Any</code> object describing the label of
|
||||
* the requested union member or the zero octet for
|
||||
* the default member
|
||||
* @throws org.omg.CORBA.TypeCodePackage.Bounds if the index is
|
||||
@ -360,7 +351,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on a non-union <code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract Any member_label(int index)
|
||||
throws BadKind, org.omg.CORBA.TypeCodePackage.Bounds;
|
||||
|
||||
@ -376,7 +366,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on a non-union <code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract TypeCode discriminator_type()
|
||||
throws BadKind;
|
||||
|
||||
@ -393,7 +382,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on a non-union <code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract int default_index() throws BadKind;
|
||||
|
||||
/**
|
||||
@ -412,7 +400,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on an inappropriate kind of <code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract int length() throws BadKind;
|
||||
|
||||
/**
|
||||
@ -424,7 +411,7 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* that multidimensional arrays are represented by nesting
|
||||
* <code>TypeCode</code> objects, one per dimension.
|
||||
* For boxed valuetypes, it returns the boxed type.
|
||||
*<P>
|
||||
* <P>
|
||||
* The method <code>content_type</code> can be invoked on sequence, array,
|
||||
* alias, and boxed valuetype <code>TypeCode</code> objects.
|
||||
*
|
||||
@ -436,37 +423,36 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* is invoked on an inappropriate kind of <code>TypeCode</code>
|
||||
* object
|
||||
*/
|
||||
|
||||
public abstract TypeCode content_type() throws BadKind;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the number of digits in the fixed type described by this
|
||||
* <code>TypeCode</code> object. For example, the typecode for
|
||||
* the number 3000.275d could be <code>fixed<7,3></code>, where
|
||||
* 7 is the precision and 3 is the scale.
|
||||
*
|
||||
* @return the total number of digits
|
||||
* Returns the number of digits in the fixed type described by this
|
||||
* <code>TypeCode</code> object. For example, the typecode for
|
||||
* the number 3000.275d could be <code>fixed<7,3></code>, where
|
||||
* 7 is the precision and 3 is the scale.
|
||||
*
|
||||
* @return the total number of digits
|
||||
* @throws org.omg.CORBA.TypeCodePackage.BadKind if this method
|
||||
* is invoked on an inappropriate kind of <code>TypeCode</code>
|
||||
* object
|
||||
*
|
||||
*
|
||||
*/
|
||||
public abstract short fixed_digits() throws BadKind ;
|
||||
|
||||
/**
|
||||
* Returns the scale of the fixed type described by this
|
||||
* <code>TypeCode</code> object. A positive number indicates the
|
||||
* number of digits to the right of the decimal point.
|
||||
* For example, the number 3000d could have the
|
||||
* typecode <code>fixed<4,0></code>, where the first number is
|
||||
* the precision and the second number is the scale.
|
||||
* A negative number is also possible and adds zeroes to the
|
||||
* left of the decimal point. In this case, <code>fixed<1,-3></code>,
|
||||
* could be the typecode for the number 3000d.
|
||||
*
|
||||
* @return the scale of the fixed type that this
|
||||
* <code>TypeCode</code> object describes
|
||||
* Returns the scale of the fixed type described by this
|
||||
* <code>TypeCode</code> object. A positive number indicates the
|
||||
* number of digits to the right of the decimal point.
|
||||
* For example, the number 3000d could have the
|
||||
* typecode <code>fixed<4,0></code>, where the first number is
|
||||
* the precision and the second number is the scale.
|
||||
* A negative number is also possible and adds zeroes to the
|
||||
* left of the decimal point. In this case, <code>fixed<1,-3></code>,
|
||||
* could be the typecode for the number 3000d.
|
||||
*
|
||||
* @return the scale of the fixed type that this
|
||||
* <code>TypeCode</code> object describes
|
||||
* @throws org.omg.CORBA.TypeCodePackage.BadKind if this method
|
||||
* is invoked on an inappropriate kind of <code>TypeCode</code>
|
||||
* object
|
||||
@ -492,7 +478,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
* comments for unimplemented features</a>
|
||||
*/
|
||||
|
||||
abstract public short member_visibility(int index)
|
||||
throws BadKind, org.omg.CORBA.TypeCodePackage.Bounds ;
|
||||
|
||||
@ -512,7 +497,6 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
* comments for unimplemented features</a>
|
||||
*/
|
||||
|
||||
abstract public short type_modifier() throws BadKind ;
|
||||
|
||||
/**
|
||||
@ -528,6 +512,5 @@ public abstract class TypeCode implements IDLEntity {
|
||||
* @see <a href="package-summary.html#unimpl"><code>CORBA</code> package
|
||||
* comments for unimplemented features</a>
|
||||
*/
|
||||
|
||||
abstract public TypeCode concrete_base_type() throws BadKind ;
|
||||
}
|
||||
|
@ -55,44 +55,30 @@ file.</li>
|
||||
|
||||
<li>
|
||||
CORBA 2.3.1 chapter 4 with the following replacements from the Portable
|
||||
Interceptors specification:</li>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
section 4.2.3.5 <TT>destroy</TT></li>
|
||||
|
||||
<li>
|
||||
section 4.5.2 <TT>CodeFactory</TT> and <TT>PICurrent</TT> are required</li>
|
||||
|
||||
<li>
|
||||
Section 4.5.3.4 as updated for <TT>register_initial_reference</TT></li>
|
||||
</ul>
|
||||
Interceptors specification:
|
||||
<ul>
|
||||
<li>section 4.2.3.5 <TT>destroy</TT></li>
|
||||
<li>section 4.5.2 <TT>CodeFactory</TT> and <TT>PICurrent</TT> are required</li>
|
||||
<li>Section 4.5.3.4 as updated for <TT>register_initial_reference</TT></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
CORBA 2.3.1 chapter 5 with the following update from the Portable Interceptors
|
||||
specification:</li>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
5.5.2 <TT>StringSeq</TT> and <TT>WStringSeq</TT> are required. This adds the
|
||||
following
|
||||
classes
|
||||
to <TT>org.omg.CORBA</TT>:</li>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<TT>StringSeqHolder</TT></li>
|
||||
|
||||
<li>
|
||||
<TT>StringSeqHelper</TT></li>
|
||||
|
||||
<li>
|
||||
<TT>WStringSeqHolder</TT></li>
|
||||
|
||||
<li>
|
||||
<TT>WStringSeqHelper</TT></li>
|
||||
</ul>
|
||||
</ul>
|
||||
specification:
|
||||
<ul>
|
||||
<li>
|
||||
5.5.2 <TT>StringSeq</TT> and <TT>WStringSeq</TT> are required.
|
||||
This adds the following classes to <TT>org.omg.CORBA</TT>:
|
||||
<ul>
|
||||
<li><TT>StringSeqHolder</TT></li>
|
||||
<li><TT>StringSeqHelper</TT></li>
|
||||
<li><TT>WStringSeqHolder</TT></li>
|
||||
<li><TT>WStringSeqHelper</TT></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
CORBA 2.3.1 sections 10.6.1 and 10.6.2 are supported for repository IDs.</li>
|
||||
@ -101,18 +87,13 @@ CORBA 2.3.1 sections 10.6.1 and 10.6.2 are supported for repository IDs.</li>
|
||||
CORBA 2.3.1 section 10.7 for <TT>TypeCode</TT> APIs.</li>
|
||||
|
||||
<li>
|
||||
CORBA 2.3.1 chapter 11, Portable Object Adapter (POA), with the following updates from the Portable Interceptors specification:</li>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Section 11.3.7 POAs must preserve all policies</li>
|
||||
|
||||
<li>
|
||||
Section 11.3.8.2 again states that POAs must preserve all policies</li>
|
||||
|
||||
<li>
|
||||
Section 11.3.8.26 <tt>POA::id</tt> is required.</li>
|
||||
</ul>
|
||||
CORBA 2.3.1 chapter 11, Portable Object Adapter (POA), with the following updates from the Portable Interceptors specification:
|
||||
<ul>
|
||||
<li>Section 11.3.7 POAs must preserve all policies</li>
|
||||
<li>Section 11.3.8.2 again states that POAs must preserve all policies</li>
|
||||
<li>Section 11.3.8.26 <tt>POA::id</tt> is required.</li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
CORBA 2.3.1 chapters 13 and 15 define GIOP 1.0, 1.1, and 1.2. The Java SE 6
|
||||
@ -124,8 +105,7 @@ All of the Interoperable Naming Service is supported.</li>
|
||||
|
||||
<li>
|
||||
Portable Interceptors section 13.8 (the new <TT>Coder</TT>/<TT>Decoder</TT> interfaces)
|
||||
and
|
||||
all of chapter 21 (the interceptor specification).</li>
|
||||
and all of chapter 21 (the interceptor specification).</li>
|
||||
|
||||
<li>Section 1.21.8 of the Revised IDL to Java Language Mapping Specification (ptc/00-11-03)
|
||||
has been changed from the version in the IDL to Java Language Mapping Specification (ptc/00-01-08).</li>
|
||||
@ -135,40 +115,24 @@ has been changed from the version in the IDL to Java Language Mapping Specifica
|
||||
Tools</h2>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
The IDL to Java compiler (<TT>idlj</TT>) complies with:</li>
|
||||
<li>The IDL to Java compiler (<TT>idlj</TT>) complies with:
|
||||
<ul>
|
||||
<li>CORBA 2.3.1 chapter 3 (IDL definition)</li>
|
||||
<li>CORBA 2.3.1 chapters 5 and 6 (semantics of Value types)</li>
|
||||
<li>CORBA 2.3.1 section 10.6.5 (pragmas)</li>
|
||||
<li>The IDL to Java mapping specification</li>
|
||||
<li>The Revised IDL to Java language mapping specification section 1.12.1 "local interfaces"</li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
CORBA 2.3.1 chapter 3 (IDL definition)</li>
|
||||
|
||||
<li>
|
||||
CORBA 2.3.1 chapters 5 and 6 (semantics of Value types)</li>
|
||||
|
||||
<li>
|
||||
CORBA 2.3.1 section 10.6.5 (pragmas)</li>
|
||||
|
||||
<li>
|
||||
The IDL to Java mapping specification</li>
|
||||
|
||||
<li>
|
||||
The Revised IDL to Java language mapping specification section 1.12.1 "local interfaces"</li>
|
||||
</ul>
|
||||
|
||||
<li>
|
||||
The Java to IDL compiler (the IIOP backend for <tt>rmic</tt>) complies with:</li>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
CORBA 2.3.1 chapters 5 and 6 (value types)</li>
|
||||
|
||||
<li>
|
||||
The Java to IDL language mapping. Note that this implicitly references
|
||||
section 1.21 of the IDL to Java language mapping</li>
|
||||
|
||||
<li>
|
||||
IDL generated by the <tt>-idl</tt> flag complies with CORBA 2.3.1 chapter 3.</li>
|
||||
</ul>
|
||||
<li>The Java to IDL compiler (the IIOP backend for <tt>rmic</tt>) complies with:
|
||||
<ul>
|
||||
<li>CORBA 2.3.1 chapters 5 and 6 (value types)</li>
|
||||
<li>The Java to IDL language mapping. Note that this implicitly references
|
||||
section 1.21 of the IDL to Java language mapping</li>
|
||||
<li>IDL generated by the <tt>-idl</tt> flag complies with CORBA 2.3.1 chapter 3.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
|
@ -8,65 +8,101 @@
|
||||
|
||||
<H1>IDL-to-Java Generated Files</H1>
|
||||
|
||||
<P>The files that are generated by the IDL-to-Java compiler, in accordance with the <em><a href="http://www.omg.org/cgi-bin/doc?ptc/00-01-08">IDL-to-Java Language Mapping Specification</a></em>, which is implemented in Java<sup><font size="-2">TM</font></sup> SE 6 according the <a href="compliance.html">compliance</a> document.
|
||||
<P>The files that are generated by the IDL-to-Java compiler, in accordance with
|
||||
the <em><a href="http://www.omg.org/cgi-bin/doc?ptc/00-01-08">IDL-to-Java Language Mapping Specification</a></em>,
|
||||
which is implemented in Java<sup><font size="-2">TM</font></sup> SE 6
|
||||
according the <a href="compliance.html">compliance</a> document.
|
||||
|
||||
|
||||
<P>In general IDL names and identifiers are mapped to Java names and identifiers with no change. Because of the nature of the Java language, a single IDL construct may be mapped to several (differently named) Java constructs. The additional names are constructed by appending a descriptive suffix. For example, the IDL interface <tt>foo</tt> is mapped to the Java interfaces <tt>foo</tt> and <tt>fooOperations</tt>, and additional Java classes <tt>fooHelper</tt>, <tt>fooHolder</tt>, <tt>fooPOA</tt>, and optionally <tt>fooPOATie</tt>.
|
||||
<P>In general IDL names and identifiers are mapped to Java names
|
||||
and identifiers with no change. Because of the nature of the Java language,
|
||||
a single IDL construct may be mapped to several (differently named) Java constructs.
|
||||
The additional names are constructed by appending a descriptive suffix.
|
||||
For example, the IDL interface <tt>foo</tt> is mapped to the Java
|
||||
interfaces <tt>foo</tt> and <tt>fooOperations</tt>, and additional
|
||||
Java classes <tt>fooHelper</tt>, <tt>fooHolder</tt>, <tt>fooPOA</tt>,
|
||||
and optionally <tt>fooPOATie</tt>.
|
||||
|
||||
|
||||
|
||||
<P>The mapping in effect reserves the use of several names for its own purposes. These are:
|
||||
<P>
|
||||
<P>The mapping in effect reserves the use of several names for its own purposes. These are:
|
||||
<UL>
|
||||
<LI>The Java class <tt><a href="#helper"><type>Helper</tt></a>, where <tt><type></tt> is the name of an IDL defined type.
|
||||
<LI>The Java class <tt><a href="#holder"><type>Holder</tt></a>, where <tt><type></tt> is the name of an IDL defined type (with certain exceptions such as <tt>typedef</tt> aliases).
|
||||
<LI>The Java classes <tt><basicJavaType>Holder</tt>, where <tt><basicJavaType></tt> is one of the Java primitive datatypes that is used by one of the IDL basic datatypes.
|
||||
<LI>The Java classes <tt><a href="#operations"><interface>Operations</tt></a>, <tt><interface>POA</tt>, and <tt><interface>POATie</tt>, where <tt><interface></tt> is the name of an IDL interface type.
|
||||
<LI>The nested scope Java package name <tt><interface>Package</tt>, where <tt><interface></tt> is the name of an IDL interface.
|
||||
<LI>The Java class <a href="#helper"><tt><type>Helper</tt></a>, where <tt><type></tt> is the name of an IDL defined type.
|
||||
<LI>The Java class <a href="#holder"><tt><type>Holder</tt></a>, where <tt><type></tt>
|
||||
is the name of an IDL defined type (with certain exceptions such as <tt>typedef</tt> aliases).
|
||||
<LI>The Java classes <tt><basicJavaType>Holder</tt>, where <tt><basicJavaType></tt>
|
||||
is one of the Java primitive datatypes that is used by one of the IDL basic datatypes.
|
||||
<LI>The Java classes <a href="#operations"><tt><interface>Operations</tt></a>, <tt><interface>POA</tt>,
|
||||
and <tt><interface>POATie</tt>, where <tt><interface></tt> is the name of an IDL interface type.
|
||||
<LI>The nested scope Java package name <tt><interface>Package</tt>, where <tt><interface></tt>
|
||||
is the name of an IDL interface.
|
||||
</UL>
|
||||
|
||||
|
||||
<a name="helper">
|
||||
<H2>Helper Files</H2></a>
|
||||
<P>
|
||||
Helper files supply several static methods needed to manipulate the type. These include <tt>Any</tt> insert and extract operations for the type, getting the repository id, getting the typecode, and reading and writing the type from and to a stream.
|
||||
<H2><a name="helper">Helper Files</a></H2>
|
||||
|
||||
<P>The helper class for a mapped IDL interface or abstract interface also include narrow operation(s). The static narrow method allows an <tt>org.omg.CORBA.Object</tt> to be narrowed to the object reference of a more specific type. The IDL exception <tt>CORBA::BAD_PARAM</tt> is thrown if the narrow fails because the object reference does not support the requested type. A different system exception is raised to indicate other kinds of errors. Trying to narrow a null will always succeed with a return value of null.
|
||||
<P>Helper files supply several static methods needed to manipulate the type.
|
||||
These include <tt>Any</tt> insert and extract operations for the type,
|
||||
getting the repository id, getting the typecode, and reading
|
||||
and writing the type from and to a stream.
|
||||
|
||||
<P>The helper class for a mapped IDL interface or abstract interface also
|
||||
include narrow operation(s). The static narrow method allows an <tt>org.omg.CORBA.Object</tt>
|
||||
to be narrowed to the object reference of a more specific type.
|
||||
The IDL exception <tt>CORBA::BAD_PARAM</tt> is thrown if the narrow fails because
|
||||
the object reference does not support the requested type. A different system exception
|
||||
is raised to indicate other kinds of errors. Trying to narrow a null will always succeed with a return value of null.
|
||||
|
||||
<H2><a name="holder">Holder Files</a></H2>
|
||||
|
||||
<P>Support for out and inout parameter passing modes requires the use of additional holder classes.
|
||||
These classes are available for all of the basic IDL datatypes in the <tt>org.omg.CORBA</tt> package
|
||||
and are generated for all named user defined IDL types except those defined by typedefs.
|
||||
(Note that in this context user defined includes types that are defined in OMG specifications
|
||||
such as those for the Interface Repository, and other OMG services.)
|
||||
|
||||
<P>Each holder class has a constructor from an instance, a default constructor, and has
|
||||
a public instance member, <tt>value</tt> which is the typed value. The default constructor
|
||||
sets the value field to the default value for the type as defined by the Java language:
|
||||
false for boolean, 0 for numeric and char types, null for strings, null for object references.
|
||||
|
||||
<P>To support portable stubs and skeletons, holder classes also implement
|
||||
the <tt>org.omg.CORBA.portable.Streamable</tt> interface.
|
||||
|
||||
|
||||
<H2><a name="operations">Operations Files</a></H2>
|
||||
|
||||
<P>
|
||||
<P>A non abstract IDL interface is mapped to two public Java interfaces:
|
||||
a <em>signature</em> interface and an <em>operations</em> interface.
|
||||
The signature interface, which extends <tt>IDLEntity</tt>, has the same
|
||||
name as the IDL interface name and is used as the signature type in method declarations
|
||||
when interfaces of the specified type are used in other interfaces.
|
||||
The operations interface has the same name as the IDL interface with the suffix <tt>Operations</tt>
|
||||
appended to the end and is used in the server-side mapping and as a mechanism
|
||||
for providing optimized calls for collocated client and servers.
|
||||
|
||||
<P>The Java operations interface contains the mapped operation signatures.
|
||||
The Java signature interface extends the operations interface,
|
||||
the (mapped) base <tt>org.omg.CORBA.Object</tt>, as well as <tt>org.omg.portable.IDLEntity</tt>.
|
||||
Methods can be invoked on the signature interface. Interface inheritance
|
||||
expressed in IDL is reflected in both the Java signature interface and operations interface hierarchies.
|
||||
|
||||
|
||||
<a name="holder">
|
||||
<H2>Holder Files</H2></a>
|
||||
<P>
|
||||
Support for out and inout parameter passing modes requires the use of additional holder classes. These classes are available for all of the basic IDL datatypes in the <tt>org.omg.CORBA</tt> package and are generated for all named user defined IDL types except those defined by typedefs. (Note that in this context user defined includes types that are defined in OMG specifications such as those for the Interface Repository, and other OMG services.)
|
||||
<H2><a name="stub">Stubs</a></H2>
|
||||
|
||||
|
||||
<P>Each holder class has a constructor from an instance, a default constructor, and has a public instance member, <tt>value</tt> which is the typed value. The default constructor sets the value field to the default value for the type as defined by the Java language: false for boolean, 0 for numeric and char types, null for strings, null for object references.
|
||||
|
||||
<P>To support portable stubs and skeletons, holder classes also implement the <tt>org.omg.CORBA.portable.Streamable</tt> interface.
|
||||
|
||||
|
||||
<a name="operations">
|
||||
<H2>Operations Files</H2></a>
|
||||
<P>
|
||||
A non abstract IDL interface is mapped to two public Java interfaces: a <em>signature</em> interface and an <em>operations</em> interface. The signature interface, which extends <tt>IDLEntity</tt>, has the same name as the IDL interface name and is used as the signature type in method declarations when interfaces of the specified type are used in other interfaces. The operations interface has the same name as the IDL interface with the suffix <tt>Operations</tt> appended to the end and is used in the server-side mapping and as a mechanism for providing optimized calls for collocated client and servers.
|
||||
|
||||
<P>The Java operations interface contains the mapped operation signatures. The Java signature interface extends the operations interface, the (mapped) base <tt>org.omg.CORBA.Object</tt>, as well as <tt>org.omg.portable.IDLEntity</tt>. Methods can be invoked on the signature interface. Interface inheritance expressed in IDL is reflected in both the Java signature interface and operations interface hierarchies.
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="stub">
|
||||
<H2>Stubs</H2></a>
|
||||
<P>For the mapping of a non-object-oriented language, there will be a programming interface to the stubs for each interface type. Generally, the stubs will present access to the OMG IDL-defined operations on an object in a way that is easy for programmers to predict once they are familiar with OMG IDL and the language mapping for the particular programming language. The stubs make calls on the rest of the ORB using interfaces that are private to, and presumably optimized for, the particular ORB Core. If more than one ORB is available, there may be different stubs corresponding to the different ORBs. In this case, it is necessary for the ORB and language mapping to cooperate to associate the correct stubs with the particular object reference.
|
||||
<P>For the mapping of a non-object-oriented language, there will be
|
||||
a programming interface to the stubs for each interface type. Generally, the stubs
|
||||
will present access to the OMG IDL-defined operations on an object in a way that is easy
|
||||
for programmers to predict once they are familiar with OMG IDL and the language mapping
|
||||
for the particular programming language. The stubs make calls on the rest of the ORB
|
||||
using interfaces that are private to, and presumably optimized for, the particular ORB Core.
|
||||
If more than one ORB is available, there may be different stubs corresponding to the different ORBs.
|
||||
In this case, it is necessary for the ORB and language mapping to cooperate to associate
|
||||
the correct stubs with the particular object reference.
|
||||
|
||||
<P>Object-oriented programming languages, such as Java, C++, and Smalltalk, do not require stub interfaces.
|
||||
<P><P><BR><BR>
|
||||
|
||||
|
||||
|
||||
<BR><BR>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
@ -6,7 +6,7 @@
|
||||
<TITLE>package</TITLE>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, 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
|
||||
@ -73,7 +73,6 @@ a holder class.
|
||||
<TT>ORB</TT> Methods</H3>
|
||||
|
||||
<P>Before an application can enter the CORBA environment, it must first:
|
||||
<P>
|
||||
<UL>
|
||||
<LI>Be initialized into the ORB and possibly the object adapter (POA) environments.
|
||||
<LI>Get references to ORB object (for use in future ORB operations)
|
||||
@ -81,7 +80,6 @@ and perhaps other objects (including the root POA or some Object Adapter objects
|
||||
</UL>
|
||||
<P>The following operations are provided to initialize applications and obtain
|
||||
the appropriate object references:
|
||||
<P>
|
||||
<UL>
|
||||
<LI>Operations providing access to the ORB, which are discussed in this
|
||||
section.
|
||||
@ -107,13 +105,13 @@ identifier for the ORB for which the object reference is required,
|
||||
that provide access to the ORB:
|
||||
<UL>
|
||||
<LI>
|
||||
<TT><bold>init</bold>()</TT>
|
||||
<TT><b>init</b>()</TT>
|
||||
|
||||
<LI>
|
||||
<TT><bold>init</bold>(String [] args, Properties props)</TT>
|
||||
<TT><b>init</b>(String [] args, Properties props)</TT>
|
||||
|
||||
<LI>
|
||||
<TT><bold>init</bold>(Applet app, Properties props)</TT>
|
||||
<TT><b>init</b>(Applet app, Properties props)</TT>
|
||||
</UL>
|
||||
|
||||
<P>Using the <tt>init()</tt> method without parameters initiates
|
||||
@ -142,11 +140,11 @@ the ORB object interface, providing facilities to list and
|
||||
resolve initial object references. These are:
|
||||
<UL>
|
||||
<LI>
|
||||
<TT><bold>resolve_initial_references</bold>(String name)</TT>
|
||||
<TT><b>resolve_initial_references</b>(String name)</TT>
|
||||
<LI>
|
||||
<TT><bold>list_initial_services</bold>()</TT>
|
||||
<TT><b>list_initial_services</b>()</TT>
|
||||
<LI>
|
||||
<TT><bold>register_initial_reference</bold>(String id,
|
||||
<TT><b>register_initial_reference</b>(String id,
|
||||
org.omg.CORBA.Object obj)</TT>
|
||||
</UL>
|
||||
|
||||
@ -278,7 +276,6 @@ that can be modified. To support portable stubs and skeletons, holder classes
|
||||
|
||||
|
||||
<P>Each holder class has:
|
||||
<P>
|
||||
<UL>
|
||||
<LI>a constructor from an instance
|
||||
<LI>a default constructor
|
||||
@ -291,7 +288,6 @@ type's <tt>value</tt> field
|
||||
|
||||
<P>The default constructor sets the value field to the default value for the
|
||||
type as defined by the Java language:
|
||||
<P>
|
||||
<UL>
|
||||
<LI><tt>false</tt> for boolean
|
||||
<LI><tt>0</tt> for numeric and char types
|
||||
@ -391,7 +387,6 @@ in the package <TT>org.omg.CORBA</TT> are:
|
||||
<h2>Helper Classes </h2>
|
||||
<P>Helper files supply several static methods needed to manipulate the type.
|
||||
These include:
|
||||
<P>
|
||||
<UL>
|
||||
<LI><tt>Any</tt> insert and extract operations for the type
|
||||
<LI>getting the repository id
|
||||
@ -455,14 +450,13 @@ both versions of the <code>narrow</code> method.
|
||||
<P>The <A HREF="{@docRoot}/../technotes/guides/idl/jidlExample.html"><em>Hello World</em></A>
|
||||
tutorial uses a <tt>narrow</tt> method that looks
|
||||
like this:
|
||||
<P>
|
||||
<PRE>
|
||||
// create and initialize the ORB
|
||||
ORB orb = ORB.init(args, null);
|
||||
ORB orb = ORB.init(args, null);
|
||||
|
||||
// get the root naming context
|
||||
org.omg.CORBA.Object objRef =
|
||||
orb.resolve_initial_references("NameService");
|
||||
orb.resolve_initial_references("NameService");
|
||||
// Use NamingContextExt instead of NamingContext. This is
|
||||
// part of latest Inter-Operable naming Service.
|
||||
NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef);
|
||||
@ -554,7 +548,6 @@ abstract public class AccountHelper
|
||||
|
||||
}
|
||||
</PRE>
|
||||
<P>
|
||||
|
||||
<h3>Value Type Helper Classes</h3>
|
||||
A helper class for a value type includes different renderings of
|
||||
@ -844,7 +837,7 @@ implementation of an interface repository, the following IR classes and
|
||||
interfaces have been included for the purpose of creating typecodes (see
|
||||
create_value_tc, create_struct_tc, create_union_tc and create_exception_tc
|
||||
methods in interface org.omg.CORBA.ORB):
|
||||
<BR>&nbs
|
||||
<BR>
|
||||
<UL>
|
||||
<LI>
|
||||
IRObject
|
||||
@ -893,20 +886,19 @@ extensions and products.
|
||||
<P>Some of the API included in <TT>org.omg</TT> subpackages throw
|
||||
<tt>NO_IMPLEMENT</tt> exceptions for various reasons. Among these reasons
|
||||
are:
|
||||
<P>
|
||||
<UL>
|
||||
<LI>In some cases, for example <tt>LocalObject</tt>, the complete
|
||||
implementation according to the specification indicates that
|
||||
these API should throw <tt>NO_IMPLEMENT</tt>.
|
||||
<P>
|
||||
<LI>In most cases, for example methods in <tt>ORB.java</tt>,
|
||||
methods that throw
|
||||
<tt>NO_IMPLEMENT</tt> are actually implemented in subclasses
|
||||
elsewhere in the ORB code.
|
||||
<P>
|
||||
<LI>In some cases, for example <tt>_get_interface_def()</tt>
|
||||
and <tt>_get_interface</tt>, API are really not yet implemented.
|
||||
</UL>
|
||||
<UL>
|
||||
<LI>In some cases, for example <tt>LocalObject</tt>, the complete
|
||||
implementation according to the specification indicates that
|
||||
these API should throw <tt>NO_IMPLEMENT</tt>.
|
||||
|
||||
<LI>In most cases, for example methods in <tt>ORB.java</tt>,
|
||||
methods that throw
|
||||
<tt>NO_IMPLEMENT</tt> are actually implemented in subclasses
|
||||
elsewhere in the ORB code.
|
||||
|
||||
<LI>In some cases, for example <tt>_get_interface_def()</tt>
|
||||
and <tt>_get_interface</tt>, API are really not yet implemented.
|
||||
</UL>
|
||||
|
||||
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 1999, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, 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
|
||||
@ -56,7 +56,7 @@ public interface InvokeHandler {
|
||||
* <p>5. Marshal reply into OutputStream returned by
|
||||
* ResponseHandler.
|
||||
* <p>6. Return OutputStream to ORB.
|
||||
* <p>
|
||||
*
|
||||
* @param method The method name.
|
||||
* @param input The <code>InputStream</code> containing the marshalled arguments.
|
||||
* @param handler The <code>ResponseHandler</code> which the servant uses
|
||||
|
@ -2,7 +2,7 @@
|
||||
<html>
|
||||
<head>
|
||||
<!--
|
||||
Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 1998, 2015, 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
|
||||
@ -46,57 +46,51 @@ Some methods throw NO_IMPLEMENT() exceptions by default, but ORB vendors
|
||||
can override them to provide real implementations. The ORB included in
|
||||
Sun's release of the Java[tm] Platform, Standard Edition 6, includes
|
||||
implementations for the following methods.
|
||||
<p>
|
||||
|
||||
<h2>List of Unimplemented Features in Package
|
||||
<code>org.omg.CORBA.portable</code></h2>
|
||||
<p>
|
||||
|
||||
<h3>Unimplemented Interfaces in package <code>org.omg.CORBA.portable</code></h3>
|
||||
<ul>
|
||||
<code>
|
||||
<li>InvokeHandler
|
||||
<li>ResponseHandler
|
||||
</code>
|
||||
<li><code>InvokeHandler</code>
|
||||
<li><code>ResponseHandler</code>
|
||||
</ul>
|
||||
<p>
|
||||
|
||||
<h3>Unimplemented Methods in package <code>org.omg.CORBA.portable</code></h3>
|
||||
<ul>
|
||||
<code>
|
||||
<li>InputStream
|
||||
<li><code>InputStream</code>
|
||||
<ul>
|
||||
<li>public int read()
|
||||
<li>public.math.BigDecimal read_fixed()
|
||||
<li>public org.omg.CORBA.Context read_Context()
|
||||
<li>public org.omg.CORBA.Object read_Object(java.lang.Class clz)
|
||||
<li>public org.omg.CORBA.ORB orb()
|
||||
<li><code>public int read()</code>
|
||||
<li><code>public.math.BigDecimal read_fixed()</code>
|
||||
<li><code>public org.omg.CORBA.Context read_Context()</code>
|
||||
<li><code>public org.omg.CORBA.Object read_Object(java.lang.Class clz)</code>
|
||||
<li><code>public org.omg.CORBA.ORB orb()</code>
|
||||
</ul>
|
||||
<li>OutputStream
|
||||
<li><code>OutputStream</code>
|
||||
<ul>
|
||||
<li>public org.omg.CORBA.ORB orb()
|
||||
<li>public void write_Context(org.omg.CORBA.Context ctx,
|
||||
org.omg.CORBA.ContextList contexts)
|
||||
<li>public void write_fixed(java.math.BigDecimal value)
|
||||
<li>public void write(int b)
|
||||
<li><code>public org.omg.CORBA.ORB orb()</code>
|
||||
<li><code>public void write_Context(org.omg.CORBA.Context ctx,
|
||||
org.omg.CORBA.ContextList contexts)</code>
|
||||
<li><code>public void write_fixed(java.math.BigDecimal value)</code>
|
||||
<li><code>public void write(int b)</code>
|
||||
</ul>
|
||||
<li>Delegate
|
||||
<li><code>Delegate</code>
|
||||
<ul>
|
||||
<li>public void releaseReply(org.omg.CORBA.Object self, InputStream input)
|
||||
<li>public InputStream invoke(org.omg.CORBA.Object self, OutputStream output)
|
||||
<li>public OutputStream request(org.omg.CORBA.Object self, String operation,
|
||||
boolean responseExpected)
|
||||
<li>public org.omg.CORBA.Object set_policy_override(org.omg.CORBA.Object self,
|
||||
<li><code>public void releaseReply(org.omg.CORBA.Object self, InputStream input)</code>
|
||||
<li><code>public InputStream invoke(org.omgl.CORBA.Object self, OutputStream output)</code>
|
||||
<li><code>public OutputStream request(org.omg.CORBA.Object self, String operation,
|
||||
boolean responseExpected)</code>
|
||||
<li><code>public org.omg.CORBA.Object set_policy_override(org.omg.CORBA.Object self,
|
||||
org.omg.CORBA.Policy[] policies,
|
||||
org.omg.CORBA.SetOverrideType set_add)
|
||||
<li>public org.omg.CORBA.DomainManager[] get_domain_managers(
|
||||
org.omg.CORBA.Object
|
||||
self)
|
||||
<li>public org.omg.CORBA.Policy get_policy(org.omg.CORBA.Object self,
|
||||
int policy_type)
|
||||
org.omg.CORBA.SetOverrideType set_add)</code>
|
||||
<li><code>public org.omg.CORBA.DomainManager[] get_domain_managers(
|
||||
org.omg.CORBA.Objectself)</code>
|
||||
<li><code>public org.omg.CORBA.Policy get_policy(org.omg.CORBA.Object self,
|
||||
int policy_type)</code>
|
||||
</ul>
|
||||
</code>
|
||||
</ul>
|
||||
|
||||
@since JDK1.2
|
||||
@serial exclude
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<title>package</title>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (c) 1999, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2015, 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
|
||||
@ -43,23 +43,21 @@ breaking the JCK tests.
|
||||
|
||||
<P>For a precise list of supported sections of official specifications with which
|
||||
the Java[tm] Platform, Standard Edition 6, ORB complies, see <A
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<P>
|
||||
<a name="unimpl"></a>
|
||||
The following methods in the abstract class
|
||||
<code>org.omg.CORBA_2_3.ORB</code> are unimplemented:
|
||||
<UL>
|
||||
<code>
|
||||
<LI>public org.omg.CORBA.portable.ValueFactory
|
||||
<b>register_value_factory(String id, org.omg.CORBA.portable.ValueFactory
|
||||
factory)</b>
|
||||
<LI>public void <b>unregister_value_factory(String id)</b>
|
||||
<LI>public org.omg.CORBA.portable.ValueFactory
|
||||
<b>lookup_value_factory(String id)</b>
|
||||
<LI>public org.omg.CORBA.Object <b>get_value_def(String repid)</b>
|
||||
<LI>public void <b>set_delegate(java.lang.Object wrapper)</b>
|
||||
</code>
|
||||
<LI><code>public org.omg.CORBA.portable.ValueFactory
|
||||
<b>register_value_factory(String id, org.omg.CORBA.portable.ValueFactory
|
||||
factory)</b></code>
|
||||
<LI><code>public void <b>unregister_value_factory(String id)</b></code>
|
||||
<LI><code>public org.omg.CORBA.portable.ValueFactory
|
||||
<b>lookup_value_factory(String id)</b></code>
|
||||
<LI><code>public org.omg.CORBA.Object <b>get_value_def(String repid)</b></code>
|
||||
<LI><code>public void <b>set_delegate(java.lang.Object wrapper)</b></code>
|
||||
</UL>
|
||||
@since JDK 1.3
|
||||
<br>
|
||||
|
@ -77,7 +77,7 @@ public abstract class InputStream extends org.omg.CORBA.portable.InputStream {
|
||||
*
|
||||
* throw SecurityException if SecurityManager is installed and
|
||||
* enableSubclassImplementation SerializablePermission
|
||||
* is not granted or jdk.corba.allowOutputStreamSubclass system
|
||||
* is not granted or jdk.corba.allowInputStreamSubclass system
|
||||
* property is either not set or is set to 'false'
|
||||
*/
|
||||
public InputStream() {
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (c) 1999, 2001, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -26,7 +26,6 @@
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
-->
|
||||
|
||||
</head>
|
||||
@ -34,7 +33,7 @@
|
||||
|
||||
Provides methods for the input and output of value types, and contains
|
||||
other updates to the <code>org/omg/CORBA/portable</code> package.
|
||||
<p>
|
||||
|
||||
@since 1.3
|
||||
@serial exclude
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 2015, 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
|
||||
@ -32,21 +32,20 @@
|
||||
<body bgcolor="white">
|
||||
<P>This package contains the following classes, which are used in
|
||||
<tt>org.omg.CosNaming.NamingContextExt</tt>:
|
||||
<P>
|
||||
<UL>
|
||||
<LI><tt>AddressHelper</tt>
|
||||
<LI><tt>AddressHelper</tt>
|
||||
<LI><tt>StringNameHelper</tt>
|
||||
<LI><tt>URLStringHelper</tt>
|
||||
<LI><tt>InvalidAddress</tt>
|
||||
|
||||
</UL>
|
||||
|
||||
<H3>Package Specification</H3>
|
||||
|
||||
|
||||
<P>For a precise list of supported sections of official specifications with which
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 2015, 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
|
||||
@ -32,7 +32,6 @@
|
||||
<body bgcolor="white">
|
||||
<P>This package contains Exception classes for the <tt>org.omg.CosNaming</tt>
|
||||
package. The list of exception classes are:
|
||||
<P>
|
||||
<UL>
|
||||
<LI><tt>AlreadyBound</tt>
|
||||
<LI><tt>CannotProceed</tt>
|
||||
@ -40,6 +39,7 @@
|
||||
<LI><tt>NotEmpty</tt>
|
||||
<LI><tt>NotFound</tt>
|
||||
<LI><tt>NotFoundReason</tt>
|
||||
</UL>
|
||||
|
||||
|
||||
<H3>Package Specification</H3>
|
||||
@ -48,7 +48,7 @@
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1996, 2015, 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
|
||||
@ -64,12 +64,12 @@ module CosNaming
|
||||
Istring id;
|
||||
Istring kind;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* A name is a sequence of name components.
|
||||
*/
|
||||
typedef sequence <NameComponent> Name;
|
||||
|
||||
|
||||
/**
|
||||
* Specifies whether the given binding is for a object (that is not a
|
||||
* naming context) or for a naming context.
|
||||
@ -79,7 +79,7 @@ module CosNaming
|
||||
nobject, // name is bound to an object
|
||||
ncontext // name is bound to a naming context
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* A name-to-object association is called a Binding.
|
||||
*/
|
||||
@ -89,12 +89,12 @@ module CosNaming
|
||||
BindingType binding_type; // whether name is bound to an object
|
||||
// or a naming context
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* List of Bindings.
|
||||
*/
|
||||
typedef sequence <Binding> BindingList;
|
||||
|
||||
typedef sequence <Binding> BindingList;
|
||||
|
||||
/**
|
||||
* The BindingIterator interface allows a client to iterate through
|
||||
* the bindings using the next_one or next_n operations.
|
||||
@ -112,24 +112,24 @@ module CosNaming
|
||||
* @param b the returned binding
|
||||
*/
|
||||
boolean next_one(out Binding b);
|
||||
|
||||
|
||||
/**
|
||||
* This operation returns at most the requested number of bindings.
|
||||
*
|
||||
* @param how_many the maximum number of bindings tro return <p>
|
||||
* @param how_many the maximum number of bindings to return
|
||||
*
|
||||
* @param bl the returned bindings
|
||||
*/
|
||||
boolean next_n(in unsigned long how_many,
|
||||
out BindingList bl);
|
||||
|
||||
out BindingList bl);
|
||||
|
||||
// Destroy binding iterator
|
||||
/**
|
||||
* This operation destroys the iterator.
|
||||
*/
|
||||
void destroy();
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* A naming context is an object that contains a set of name bindings in
|
||||
* which each name is unique. Different names can be bound to an object
|
||||
@ -151,7 +151,7 @@ module CosNaming
|
||||
not_context,
|
||||
not_object
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Indicates the name does not identify a binding.
|
||||
*/
|
||||
@ -160,7 +160,7 @@ module CosNaming
|
||||
NotFoundReason why;
|
||||
Name rest_of_name;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Indicates that the implementation has given up for some reason.
|
||||
* The client, however, may be able to continue the operation at the
|
||||
@ -171,130 +171,130 @@ module CosNaming
|
||||
NamingContext cxt;
|
||||
Name rest_of_name;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Indicates the name is invalid.
|
||||
*/
|
||||
exception InvalidName
|
||||
{};
|
||||
|
||||
{};
|
||||
|
||||
/**
|
||||
* Indicates an object is already bound to the specified name. Only
|
||||
* one object can be bound to a particular name in a context.
|
||||
*/
|
||||
exception AlreadyBound
|
||||
{};
|
||||
|
||||
|
||||
/**
|
||||
* Indicates that the Naming Context contains bindings.
|
||||
*/
|
||||
exception NotEmpty
|
||||
{};
|
||||
|
||||
|
||||
/**
|
||||
* Creates a binding of a name and an object in the naming context.
|
||||
* Naming contexts that are bound using bind do not participate in name
|
||||
* resolution when compound names are passed to be resolved.
|
||||
*
|
||||
* @param n Name of the object <p>
|
||||
* @param n Name of the object.
|
||||
*
|
||||
* @param obj The Object to bind with the given name<p>
|
||||
* @param obj The Object to bind with the given name.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates
|
||||
* the name does not identify a binding.<p>
|
||||
* the name does not identify a binding.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.CannotProceed
|
||||
* Indicates that the implementation has given up for some reason.
|
||||
* The client, however, may be able to continue the operation
|
||||
* at the returned naming context.<p>
|
||||
* at the returned naming context.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName
|
||||
* Indicates that the name is invalid. <p>
|
||||
* Indicates that the name is invalid.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.AlreadyBound
|
||||
* Indicates an object is already bound to the specified name.<p>
|
||||
* Indicates an object is already bound to the specified name.
|
||||
*/
|
||||
void bind(in Name n,
|
||||
in Object obj)
|
||||
in Object obj)
|
||||
raises(NotFound,
|
||||
CannotProceed,
|
||||
InvalidName,
|
||||
AlreadyBound);
|
||||
|
||||
CannotProceed,
|
||||
InvalidName,
|
||||
AlreadyBound);
|
||||
|
||||
/**
|
||||
* Names an object that is a naming context. Naming contexts that
|
||||
* are bound using bind_context() participate in name resolution
|
||||
* when compound names are passed to be resolved.
|
||||
*
|
||||
* @param n Name of the object <p>
|
||||
* @param n Name of the object.
|
||||
*
|
||||
* @param nc NamingContect object to bind with the given name <p>
|
||||
* @param nc NamingContect object to bind with the given name.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.<p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.CannotProceed Indicates that the implementation has
|
||||
* given up for some reason. The client, however, may be able to
|
||||
* continue the operation at the returned naming context.<p>
|
||||
* continue the operation at the returned naming context.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid. <p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.AlreadyBound Indicates an object is already
|
||||
* bound to the specified name.<p>
|
||||
* bound to the specified name.
|
||||
*/
|
||||
void bind_context(in Name n,
|
||||
in NamingContext nc)
|
||||
in NamingContext nc)
|
||||
raises(NotFound,
|
||||
CannotProceed,
|
||||
InvalidName,
|
||||
AlreadyBound);
|
||||
|
||||
CannotProceed,
|
||||
InvalidName,
|
||||
AlreadyBound);
|
||||
|
||||
/**
|
||||
* Creates a binding of a name and an object in the naming context
|
||||
* even if the name is already bound in the context. Naming contexts
|
||||
* that are bound using rebind do not participate in name resolution
|
||||
* when compound names are passed to be resolved.
|
||||
*
|
||||
* @param n Name of the object <p>
|
||||
* @param n Name of the object.
|
||||
*
|
||||
* @param obj The Object to rebind with the given name <p>
|
||||
* @param obj The Object to rebind with the given name.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.<p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.CannotProceed Indicates that the implementation has
|
||||
* given up for some reason. The client, however, may be able to
|
||||
* continue the operation at the returned naming context.<p>
|
||||
* continue the operation at the returned naming context.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid. <p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid.
|
||||
*/
|
||||
void rebind(in Name n,
|
||||
in Object obj)
|
||||
in Object obj)
|
||||
raises(NotFound,
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
/**
|
||||
* Creates a binding of a name and a naming context in the naming
|
||||
* context even if the name is already bound in the context. Naming
|
||||
* contexts that are bound using rebind_context() participate in name
|
||||
* resolution when compound names are passed to be resolved.
|
||||
*
|
||||
* @param n Name of the object <p>
|
||||
* @param n Name of the object.
|
||||
*
|
||||
* @param nc NamingContect object to rebind with the given name <p>
|
||||
* @param nc NamingContect object to rebind with the given name.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.<p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.CannotProceed Indicates that the implementation has
|
||||
* given up for some reason. The client, however, may be able to
|
||||
* continue the operation at the returned naming context.<p>
|
||||
* continue the operation at the returned naming context.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid. <p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid.
|
||||
*/
|
||||
void rebind_context(in Name n,
|
||||
in NamingContext nc)
|
||||
in NamingContext nc)
|
||||
raises(NotFound,
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
/**
|
||||
* The resolve operation is the process of retrieving an object
|
||||
@ -304,39 +304,39 @@ module CosNaming
|
||||
* to the appropriate type. That is, clients typically cast the returned
|
||||
* object from Object to a more specialized interface.
|
||||
*
|
||||
* @param n Name of the object <p>
|
||||
* @param n Name of the object.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.<p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.CannotProceed Indicates that the implementation has
|
||||
* given up for some reason. The client, however, may be able to
|
||||
* continue the operation at the returned naming context.<p>
|
||||
* continue the operation at the returned naming context.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid. <p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid.
|
||||
*/
|
||||
Object resolve(in Name n)
|
||||
raises(NotFound,
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
/**
|
||||
* The unbind operation removes a name binding from a context.
|
||||
*
|
||||
* @param n Name of the object <p>
|
||||
* @param n Name of the object.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.<p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.CannotProceed Indicates that the implementation has
|
||||
* given up for some reason. The client, however, may be able to
|
||||
* continue the operation at the returned naming context.<p>
|
||||
* continue the operation at the returned naming context.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid. <p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid.
|
||||
*/
|
||||
void unbind(in Name n)
|
||||
raises(NotFound,
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
/**
|
||||
* The list operation allows a client to iterate through a set of
|
||||
* bindings in a naming context. <p>
|
||||
@ -351,15 +351,15 @@ module CosNaming
|
||||
* bindings, the binding iterator is a nil object reference.
|
||||
* </ul>
|
||||
*
|
||||
* @param how_many the maximum number of bindings to return <p>
|
||||
* @param how_many the maximum number of bindings to return.
|
||||
*
|
||||
* @param bl the returned list of bindings <p>
|
||||
* @param bl the returned list of bindings.
|
||||
*
|
||||
* @param bi the returned binding iterator <p>
|
||||
* @param bi the returned binding iterator.
|
||||
*/
|
||||
void list(in unsigned long how_many,
|
||||
out BindingList bl,
|
||||
out BindingIterator bi);
|
||||
out BindingList bl,
|
||||
out BindingIterator bi);
|
||||
|
||||
/**
|
||||
* This operation returns a naming context implemented by the same
|
||||
@ -367,7 +367,7 @@ module CosNaming
|
||||
* The new context is not bound to any name.
|
||||
*/
|
||||
NamingContext new_context();
|
||||
|
||||
|
||||
/**
|
||||
* This operation creates a new context and binds it to the name
|
||||
* supplied as an argument. The newly-created context is implemented
|
||||
@ -375,25 +375,25 @@ module CosNaming
|
||||
* is, the naming server that implements the context denoted by the
|
||||
* name argument excluding the last component).
|
||||
*
|
||||
* @param n Name of the object <p>
|
||||
* @param n Name of the object.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.<p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound Indicates the name does not identify a binding.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.AlreadyBound Indicates an object is already
|
||||
* bound to the specified name.<p>
|
||||
* bound to the specified name.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.CannotProceed Indicates that the implementation has
|
||||
* given up for some reason. The client, however, may be able to
|
||||
* continue the operation at the returned naming context.<p>
|
||||
* continue the operation at the returned naming context.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid. <p>
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidName Indicates that the name is invalid.
|
||||
*/
|
||||
NamingContext bind_new_context(in Name n)
|
||||
raises(NotFound,
|
||||
AlreadyBound,
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
AlreadyBound,
|
||||
CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
/**
|
||||
* The destroy operation deletes a naming context. If the naming
|
||||
* context contains bindings, the NotEmpty exception is raised.
|
||||
@ -402,7 +402,7 @@ module CosNaming
|
||||
*/
|
||||
void destroy()
|
||||
raises(NotEmpty);
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
@ -413,7 +413,7 @@ module CosNaming
|
||||
* part of Interoperable Naming Service.
|
||||
* Different names can be bound to an object in the same or different
|
||||
* contexts at the same time. Using <tt>NamingContextExt</tt>, you can use
|
||||
* URL-based names to bind and resolve. <p>
|
||||
* URL-based names to bind and resolve.
|
||||
*
|
||||
* See <a href="http://www.omg.org/technology/documents/formal/naming_service.htm">
|
||||
* CORBA COS
|
||||
@ -425,86 +425,84 @@ module CosNaming
|
||||
* StringName is the Stringified Name, Array of Name Components
|
||||
* represented as a String.
|
||||
*/
|
||||
typedef string StringName;
|
||||
typedef string StringName;
|
||||
|
||||
/**
|
||||
* Address is the Host and Port information represented as a String.
|
||||
*/
|
||||
typedef string Address;
|
||||
|
||||
typedef string Address;
|
||||
|
||||
/**
|
||||
* URLString is the URL address (corbaloc: or corbaname:) represented as
|
||||
* a String.
|
||||
*/
|
||||
typedef string URLString;
|
||||
typedef string URLString;
|
||||
|
||||
/**
|
||||
* This operation creates a stringified name from the array of Name
|
||||
* components.
|
||||
*
|
||||
* @param n Name of the object <p>
|
||||
* @param n Name of the object.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextExtPackage.InvalidName
|
||||
* Indicates the name does not identify a binding.<p>
|
||||
* Indicates the name does not identify a binding.
|
||||
*
|
||||
*/
|
||||
StringName to_string( in Name n ) raises (InvalidName);
|
||||
StringName to_string( in Name n ) raises (InvalidName);
|
||||
|
||||
/**
|
||||
* This operation converts a Stringified Name into an equivalent array
|
||||
* of Name Components.
|
||||
* of Name Components.
|
||||
*
|
||||
* @param sn Stringified Name of the object <p>
|
||||
* @param sn Stringified Name of the object.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextExtPackage.InvalidName
|
||||
* Indicates the name does not identify a binding.<p>
|
||||
* Indicates the name does not identify a binding.
|
||||
*
|
||||
*/
|
||||
Name to_name( in StringName sn ) raises (InvalidName);
|
||||
Name to_name( in StringName sn ) raises (InvalidName);
|
||||
|
||||
|
||||
/**
|
||||
* Indicates the invalid Stringified name for the object, The
|
||||
* reason could be invalid syntax.
|
||||
*/
|
||||
exception InvalidAddress
|
||||
{ };
|
||||
exception InvalidAddress
|
||||
{ };
|
||||
|
||||
/**
|
||||
* This operation creates a URL based "iiopname://" format name
|
||||
* from the Stringified Name of the object.
|
||||
*
|
||||
* @param addr internet based address of the host machine where Name Service is running <p>
|
||||
* @param sn Stringified Name of the object <p>
|
||||
* @param addr internet based address of the host machine where Name Service is running.
|
||||
* @param sn Stringified Name of the object.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextExtPackage.InvalidName
|
||||
* Indicates the name does not identify a binding.<p>
|
||||
* Indicates the name does not identify a binding.
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.InvalidAddress
|
||||
* Indicates the internet based address of the host machine is
|
||||
* incorrect <p>
|
||||
*
|
||||
*/
|
||||
URLString to_url( in Address addr, in StringName sn )
|
||||
raises( InvalidAddress, InvalidName );
|
||||
* Indicates the internet based address of the host machine is incorrect
|
||||
*/
|
||||
URLString to_url( in Address addr, in StringName sn )
|
||||
raises( InvalidAddress, InvalidName );
|
||||
|
||||
|
||||
/**
|
||||
* This operation resolves the Stringified name into the object
|
||||
* reference.
|
||||
*
|
||||
* @param sn Stringified Name of the object <p>
|
||||
* @param sn Stringified Name of the object.
|
||||
*
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.NotFound
|
||||
* Indicates there is no object reference for the given name. <p>
|
||||
* Indicates there is no object reference for the given name.
|
||||
* @exception org.omg.CosNaming.NamingContextPackage.CannotProceed
|
||||
* Indicates that the given compound name is incorrect <p>
|
||||
* Indicates that the given compound name is incorrect.
|
||||
* @exception org.omg.CosNaming.NamingContextExtPackage.InvalidName
|
||||
* Indicates the name does not identify a binding.<p>
|
||||
* Indicates the name does not identify a binding.
|
||||
*
|
||||
*/
|
||||
Object resolve_str( in StringName sn)
|
||||
raises( NotFound, CannotProceed,
|
||||
InvalidName);
|
||||
Object resolve_str( in StringName sn)
|
||||
raises( NotFound, CannotProceed,
|
||||
InvalidName);
|
||||
|
||||
};
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, 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
|
||||
@ -32,20 +32,20 @@
|
||||
|
||||
Provides a naming service for Java IDL. The Object Request Broker Daemon
|
||||
(ORBD) also includes both a transient and persistent naming service.
|
||||
|
||||
|
||||
|
||||
<P>
|
||||
The package and all its classes and interfaces
|
||||
were generated by running the tool <code>idlj</code> on the file
|
||||
<code>nameservice.idl</code>, which is a module written in OMG IDL.
|
||||
|
||||
|
||||
<H3>Package Specification</H3>
|
||||
|
||||
|
||||
<P>For a precise list of supported sections of official specifications with which
|
||||
the Java[tm] Platform, Standard Edition 6, ORB complies, see <A
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<P>
|
||||
|
||||
<H2>Interfaces</H2>
|
||||
The package <tt>org.omg.CosNaming</tt> contains two public interfaces
|
||||
and several auxiliary classes.
|
||||
@ -62,7 +62,7 @@ support in Java[tm] SE 6</A>.
|
||||
interface supplies the main functionality for the naming service, and
|
||||
<code>BindingIterator</code> provides a means of iterating through a list
|
||||
of name/object reference bindings.
|
||||
<P>
|
||||
|
||||
<H2>Auxiliary Classes</H2>
|
||||
In order to map an OMG IDL interface to the Java programming language,
|
||||
the idlj compiler creates Java classes that can be thought of
|
||||
@ -70,13 +70,13 @@ support in Java[tm] SE 6</A>.
|
||||
Comments for the generated auxiliary classes
|
||||
used by the interfaces <code>NamingContext</code> and
|
||||
<code>BindingIterator</code> are included here.
|
||||
<P>
|
||||
|
||||
<H3>Classes Used by <code>NamingContext</code> and
|
||||
<code>BindingIterator</code></H3>
|
||||
The following are classes used by
|
||||
the naming service. (Helper and holder classes, which are
|
||||
generated for each of the classes listed here, are discussed below.)
|
||||
|
||||
|
||||
<UL>
|
||||
<LI><code>public final class <B>NameComponent</B></code> --
|
||||
a building block for names. (Names are bound to object references
|
||||
@ -89,8 +89,7 @@ support in Java[tm] SE 6</A>.
|
||||
A <code><B>NameComponent</B></code> object consists of two fields:
|
||||
<OL>
|
||||
<LI><code><B>id</B></code> -- a <code>String</code> used as an identifier
|
||||
<LI><code><B>kind</B></code> -- a <code>String</code> that can be used for
|
||||
any
|
||||
<LI><code><B>kind</B></code> -- a <code>String</code> that can be used for any
|
||||
descriptive purpose. Its importance is that it
|
||||
can be used to describe an object without affecting syntax.
|
||||
The C programming language, for example, uses the the syntactic convention
|
||||
@ -102,16 +101,15 @@ any
|
||||
<code>"c_source"</code>, <code>"object_code"</code>,
|
||||
<code>"executable"</code>,
|
||||
<code>"postscript"</code>, and <code>""</code>. It is not unusual
|
||||
for the <code>kind</code> field to be the empty string.
|
||||
for the <code>kind</code> field to be the empty string.
|
||||
</OL>
|
||||
<P>
|
||||
In a name, each <code>NameComponent</code> object except the last denotes
|
||||
a <code>NamingContext</code> object; the last <code>NameComponent</code>
|
||||
object denotes the bound object reference.
|
||||
This is similar to a path name, in which the last name is the
|
||||
file name, and all names before it are directory names.<p>
|
||||
<P>
|
||||
|
||||
file name, and all names before it are directory names.
|
||||
|
||||
<LI><code>public final class <B>Binding</B></code> --
|
||||
an object that associates a name with an object reference or a
|
||||
naming context.
|
||||
@ -125,45 +123,44 @@ any
|
||||
</OL>
|
||||
<P>
|
||||
The interface <code>NamingContext</code> has methods for
|
||||
binding/unbinding names with object references or naming contexts,
|
||||
for listing bindings,
|
||||
binding/unbinding names with object references or naming contexts,
|
||||
for listing bindings,
|
||||
and for resolving bindings (given a name, the method
|
||||
<code>resolve</code> returns the object reference bound to it).
|
||||
|
||||
<P>
|
||||
<LI><code>public final class <B>BindingType</B></code> --
|
||||
|
||||
<LI><code>public final class <B>BindingType</B></code> --
|
||||
an object that specifies whether the given <code>Binding</code>
|
||||
object is a binding between a name and an object reference (that is,
|
||||
not a naming context) or between a name and a naming context.
|
||||
<P>
|
||||
The class<code>BindingType</code> consists of two methods and
|
||||
four constants. Two of these constants are
|
||||
<code>BindingType</code> objects, and two are <code>int</code>s.
|
||||
<P>
|
||||
The <code>BindingType</code> objects
|
||||
four constants. Two of these constants are
|
||||
<code>BindingType</code> objects, and two are <code>int</code>s.
|
||||
<P>
|
||||
The <code>BindingType</code> objects
|
||||
can be passed to the constructor for the class
|
||||
<code>Binding</code> or used as parameters or return values. These
|
||||
<code>BindingType</code> objects are:
|
||||
<code>BindingType</code> objects are:
|
||||
<UL>
|
||||
<LI><code>public static final BindingType <B>nobject</B></code> --
|
||||
to indicate that the binding is with an object reference
|
||||
to indicate that the binding is with an object reference
|
||||
<LI><code>public static final BindingType <B>ncontext</B></code> --
|
||||
to indicate that the binding is with a naming context
|
||||
to indicate that the binding is with a naming context
|
||||
</UL>
|
||||
<P>
|
||||
The <code>int</code> constants can be supplied to the method
|
||||
<code>from_int</code> to create <code>BindingType</code> objects,
|
||||
or they can be return values for the method <code>value</code>.
|
||||
These constants are:
|
||||
<UL>
|
||||
The <code>int</code> constants can be supplied to the method
|
||||
<code>from_int</code> to create <code>BindingType</code> objects,
|
||||
or they can be return values for the method <code>value</code>.
|
||||
These constants are:
|
||||
<UL>
|
||||
<LI><code>public static final int <B>_nobject</B></code>
|
||||
<LI><code>public static final int <B>_ncontext</B></code>
|
||||
</UL>
|
||||
</UL>
|
||||
If the method <code>from_int</code> is supplied with anything other
|
||||
than <code>_nobject</code>
|
||||
than <code>_nobject</code>
|
||||
or <code>_ncontext</code>, it will throw
|
||||
the exception <code>org.omg.CORBA.BAD_PARAM</code>.
|
||||
<P>Usage is as follows:
|
||||
the exception <code>org.omg.CORBA.BAD_PARAM</code>.
|
||||
<P>Usage is as follows:
|
||||
<PRE>
|
||||
BindingType btObject = from_int(_nobject);
|
||||
BindingType btContext = from_int(_ncontext);
|
||||
@ -182,9 +179,9 @@ any
|
||||
int bt = BindingType.value();
|
||||
</PRE>
|
||||
</UL>
|
||||
|
||||
|
||||
<H3>Holder Classes</H3>
|
||||
|
||||
|
||||
OMG IDL uses OUT and INOUT parameters for returning values from operations.
|
||||
The mapping to the Java programming language, which does not have OUT
|
||||
and INOUT parameters, creates a special class for each type, called
|
||||
@ -308,7 +305,6 @@ Context></code>.
|
||||
This associates <code>NameService</code> with the Root Naming
|
||||
Context of the <code>CosNaming</code> implementation that you
|
||||
want to use.
|
||||
<P>
|
||||
<LI>Start the standalone Bootstrap server using the following command:
|
||||
<pre>
|
||||
<code>
|
||||
@ -340,13 +336,13 @@ For an overview and examples of how to use the
|
||||
<code>CosNaming</code> API, please see:
|
||||
<ul>
|
||||
<li><a href="../../../../technotes/guides/idl/tnameserv.html">
|
||||
Naming Service</a>
|
||||
Naming Service</a>
|
||||
</ul>
|
||||
<p>
|
||||
For an overview of Java IDL, please see:
|
||||
<ul>
|
||||
<li><a href="../../../../technotes/guides/idl/index.html">
|
||||
Java IDL home page</a>
|
||||
Java IDL home page</a>
|
||||
</ul>
|
||||
|
||||
@since JDK1.3
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 2015, 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
|
||||
@ -45,7 +45,7 @@ refer to that OMG specification for further details.
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 2015, 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
|
||||
@ -48,7 +48,7 @@ refer to that OMG specification for further details.
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -46,7 +46,7 @@ refer to that OMG specification for further details.
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2000, 2015, 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
|
||||
@ -197,22 +197,14 @@ exported through the <code>Object</code>
|
||||
interface may raise the standard NO_IMPLEMENT exception.
|
||||
An attempt to use a <code>DynAny</code> object with the DII may raise the NO_IMPLEMENT
|
||||
exception.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<P>
|
||||
|
||||
|
||||
<H3>Package Specification</H3>
|
||||
|
||||
|
||||
<P>For a precise list of supported sections of official specifications with which
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -42,7 +42,7 @@ specified in the IOP::CodeFactory interface (as part of the Portable
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -45,7 +45,7 @@ refer to that OMG specification for further details.
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -52,7 +52,7 @@ Portable Interceptors.
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -47,7 +47,7 @@ Portable Interceptors.
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, 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
|
||||
@ -258,14 +258,14 @@ module IOP {
|
||||
* <p>
|
||||
* The <code>TAG_ALTERNATE_IIOP_ADDRESS</code> component has an
|
||||
* associated value of type:
|
||||
* <code>
|
||||
* <pre>
|
||||
* <pre>
|
||||
* <code>
|
||||
* struct {
|
||||
* string HostID,
|
||||
* short Port
|
||||
* };
|
||||
* </pre>
|
||||
* </code>
|
||||
* };
|
||||
* </code>
|
||||
* </pre>
|
||||
* encoded as a CDR encapsulation.
|
||||
* <p>
|
||||
* Zero or more instances of the <code>TAG_ALTERNATE_IIOP_ADDRESS</code>
|
||||
@ -601,7 +601,7 @@ module IOP {
|
||||
|
||||
/**
|
||||
* Create a <code>Codec</code> of the given encoding.
|
||||
* <p>
|
||||
*
|
||||
* @param enc The encoding for which to create a <code>Codec</code>.
|
||||
* @return A <code>Codec</code> obtained with the given encoding.
|
||||
* @exception UnknownEncoding thrown if this factory cannot create a
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, 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
|
||||
@ -479,7 +479,7 @@ module PortableInterceptor {
|
||||
* On the client:
|
||||
* <ul>
|
||||
* <li>Within the <code>receive_reply</code> interception point, this
|
||||
* will only return <code>SUCCESSFUL</code></li>.
|
||||
* will only return <code>SUCCESSFUL</code>.</li>
|
||||
* <li>Within the <code>receive_exception</code> interception point,
|
||||
* this will be either <code>SYSTEM_EXCEPTION</code> or
|
||||
* <code>USER_EXCEPTION</code>.</li>
|
||||
@ -545,7 +545,7 @@ module PortableInterceptor {
|
||||
/**
|
||||
* Returns a copy of the service context with the given ID that
|
||||
* is associated with the request.
|
||||
* <p>
|
||||
*
|
||||
* @param id The <code>IOP.ServiceId</code> of the service context
|
||||
* which is to be returned.
|
||||
* @return The <code>IOP.ServiceContext</code> obtained with the
|
||||
@ -579,7 +579,6 @@ module PortableInterceptor {
|
||||
* validity of each attribute or operation. If it is not valid, attempting
|
||||
* to access it will result in a <code>BAD_INV_ORDER</code> being thrown
|
||||
* with a standard minor code of 14.
|
||||
* <p>
|
||||
*
|
||||
* <table border=1 summary="Shows the validity of each attribute or operation">
|
||||
* <thead>
|
||||
@ -934,7 +933,6 @@ module PortableInterceptor {
|
||||
* of each attribute or operation. If it is not valid, attempting to access
|
||||
* it will result in a <code>BAD_INV_ORDER</code> being thrown with a
|
||||
* standard minor code of 14.
|
||||
* <p>
|
||||
*
|
||||
*
|
||||
* <table border=1 summary="Shows the validity of each attribute or operation">
|
||||
@ -1028,7 +1026,7 @@ module PortableInterceptor {
|
||||
* <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr>
|
||||
*
|
||||
* <tr><td><b>arguments</b></td>
|
||||
* <td>no </td> <td>yes<sub>1</sub</td>
|
||||
* <td>no </td> <td>yes<sub>1</sub></td>
|
||||
* <td>yes</td> <td>no<sub>2</sub></td>
|
||||
* <td>no<sub>2</sub>
|
||||
* </td></tr>
|
||||
@ -1133,7 +1131,7 @@ module PortableInterceptor {
|
||||
* servant, which may no longer be available to the ORB. For example,
|
||||
* if the object's adapter is a POA that uses a
|
||||
* <code>ServantLocator</code>, then the ORB invokes the interception
|
||||
* point after it calls <code>ServantLocator.postinvoke()</code></li>.
|
||||
* point after it calls <code>ServantLocator.postinvoke()</code>.</li>
|
||||
* </ol>
|
||||
*
|
||||
* @see ServerRequestInterceptor
|
||||
@ -1889,7 +1887,7 @@ module PortableInterceptor {
|
||||
* @param type An int specifying the type of policy being created.
|
||||
* @param value An any containing data with which to construct the
|
||||
* <code>CORBA.Policy</code>.
|
||||
* @return A <code>CORBA.Policy<code> object of the specified type and
|
||||
* @return A <code>CORBA.Policy</code> object of the specified type and
|
||||
* value.
|
||||
*/
|
||||
CORBA::Policy create_policy
|
||||
@ -2124,7 +2122,7 @@ module PortableInterceptor {
|
||||
* <p>
|
||||
* A client-side logging service written by company X, for example, may
|
||||
* have the following ORBInitializer implementation:
|
||||
* <code><pre>
|
||||
* <pre><code>
|
||||
* package com.x.logging;
|
||||
*
|
||||
* import org.omg.PortableInterceptor.Interceptor;
|
||||
@ -2144,7 +2142,7 @@ module PortableInterceptor {
|
||||
* // This service does not need two init points.
|
||||
* }
|
||||
* }
|
||||
* </pre></code>
|
||||
* </code></pre>
|
||||
* To run a program called <code>MyApp</code> using this logging
|
||||
* service, the user could type:
|
||||
* <blockquote><code>
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -44,7 +44,7 @@ refer to that OMG specification for further details.
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2000, 2015, 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
|
||||
@ -56,41 +56,39 @@ for how to go about registering interceptors.
|
||||
<h2>Known limitations / unimplemented methods in package
|
||||
<code>org.omg.PortableInterceptor</code></h2>
|
||||
|
||||
<code>
|
||||
<ul>
|
||||
<li>
|
||||
<b>RequestInfo</b>
|
||||
<code><b>RequestInfo</b></code>
|
||||
<ul>
|
||||
<li><b>sync_scope()</b>: Always returns SYNC_WITH_TRANSPORT</li>
|
||||
<li><b>arguments()</b>: Only supported for DII/DSI calls</li>
|
||||
<li><b>exceptions()</b>: Only supported for DII calls on client side.
|
||||
<li><code><b>sync_scope()</b></code>: Always returns SYNC_WITH_TRANSPORT</li>
|
||||
<li><code><b>arguments()</b></code>: Only supported for DII/DSI calls</li>
|
||||
<li><code><b>exceptions()</b></code>: Only supported for DII calls on client side.
|
||||
Not supported on server-side.</li>
|
||||
<li><b>contexts()</b>: Only supported for DII calls on client side.
|
||||
<li><code><b>contexts()</b></code>: Only supported for DII calls on client side.
|
||||
Not supported on server-side since our ORB does not send contexts.
|
||||
</li>
|
||||
<li><b>operation_context()</b>: Only supported for DII calls
|
||||
<li><code><b>operation_context()</b></code>: Only supported for DII calls
|
||||
on client side. Not supported on server-side since ORB
|
||||
does not send contexts.</li>
|
||||
<li><b>result()</b>: Only supported for DII/DSI calls</li>
|
||||
<li><code><b>result()</b></code>: Only supported for DII/DSI calls</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>ClientRequestInfo</b>
|
||||
<code><b>ClientRequestInfo</b></code>
|
||||
<ul>
|
||||
<li><b>received_exception_id()</b>: Always returns null in the
|
||||
<li><code><b>received_exception_id()</b></code>: Always returns null in the
|
||||
DII case</li>
|
||||
<li><b>get_request_policy(int type)</b>: Not implemented.</li>
|
||||
<li><code><b>get_request_policy(int type)</b></code>: Not implemented.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>ServerRequestInfo</b>
|
||||
<code><b>ServerRequestInfo</b></code>
|
||||
<ul>
|
||||
<li><b>sending_exception()</b>: Does not support user exceptions on
|
||||
<li><code><b>sending_exception()</b></code>: Does not support user exceptions on
|
||||
the server side in non-DSI case.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</code>
|
||||
|
||||
<h2>Package Specification</h2>
|
||||
<P>For a precise list of supported sections of official OMG specifications with which
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -53,7 +53,7 @@
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -43,7 +43,7 @@ Encapsulates the processing
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -36,7 +36,6 @@
|
||||
between different ORB products.
|
||||
|
||||
<P>The Portable Object Adaptor (POA) is designed to meet the following goals:
|
||||
<P>
|
||||
<UL>
|
||||
<LI>Allow programmers to construct object implementations that are portable between different ORB products.
|
||||
<LI>Provide support for objects with persistent identities.
|
||||
@ -66,7 +65,7 @@ be invoked by the application programmer, as well as methods which are invoked b
|
||||
the Java[tm] Platform, Standard Edition 6, ORB complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2001, 2015, 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
|
||||
@ -43,13 +43,6 @@ follows exactly the same pattern as the other holder classes for basic types.
|
||||
the Java[tm] Platform, Standard Edition 6 complies, see <A
|
||||
HREF="../../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2000, 2015, 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
|
||||
@ -52,12 +52,10 @@ defined by the <TT>PortableServer</TT> module for the POA. In Java, the
|
||||
the Java[tm] Platform, Standard Edition 6 complies, see <A
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
<H2>POA-related Interfaces</H2>
|
||||
|
||||
<P>The <TT>PortableServer</TT> module defines the following POA-related interfaces:
|
||||
<P>
|
||||
<UL>
|
||||
<LI><TT>POA</TT>
|
||||
<LI><TT>POAManager</TT>
|
||||
@ -79,12 +77,18 @@ support in Java[tm] SE 6</A>.
|
||||
|
||||
<H3>Operations classes</H3>
|
||||
|
||||
<P>Each of the interfaces listed above has an associated <code>Operations</code> interface. The <code>Operations</code> interface is generated by the <code>idlj</code> compiler and contains the method signatures for methods defined in its associated interface. The <code>Operations</code> interface can be accessed by both the client and the server, while its associated interface can only be called by the client.
|
||||
<P>Each of the interfaces listed above has an associated <code>Operations</code> interface.
|
||||
The <code>Operations</code> interface is generated by the <code>idlj</code> compiler and
|
||||
contains the method signatures for methods defined in its associated interface.
|
||||
The <code>Operations</code> interface can be accessed by both the client and the server,
|
||||
while its associated interface can only be called by the client.
|
||||
|
||||
<H3>Value Classes</H3>
|
||||
|
||||
Classes ending in the suffix <code>PolicyValue</code> provide the values used for the <code>create_POA</code> call, which sets the policy for the POA. See the <a href="#sampleserver">sample code</a> below for a demonstration. <code>PolicyValue</code> files include the following:
|
||||
<P>
|
||||
Classes ending in the suffix <code>PolicyValue</code> provide the values used
|
||||
for the <code>create_POA</code> call, which sets the policy for the POA. See
|
||||
the <a href="#sampleserver">sample code</a> below for a demonstration.
|
||||
<code>PolicyValue</code> files include the following:
|
||||
<UL>
|
||||
<LI><code>IdAssignmentPolicyValue</code>
|
||||
<LI><code>IdUniquenessPolicyValue</code>
|
||||
@ -98,8 +102,11 @@ Classes ending in the suffix <code>PolicyValue</code> provide the values used fo
|
||||
<H3>Helper Classes</H3>
|
||||
|
||||
<P>Helper classes, which are generated for all user-defined types in an OMG IDL
|
||||
interface, supply static methods needed to manipulate those types. There is only one method in a helper class that an application programmer uses: the <code>narrow</code> method. Only Java interfaces mapped from IDL interfaces will have a helper class that includes a <code>narrow</code> method, so in the <code>PortableServer</code> package, only the following classes have a <code>narrow</code> method:
|
||||
<P>
|
||||
interface, supply static methods needed to manipulate those types.
|
||||
There is only one method in a helper class that an application programmer uses:
|
||||
the <code>narrow</code> method. Only Java interfaces mapped from IDL interfaces
|
||||
will have a helper class that includes a <code>narrow</code> method, so in
|
||||
the <code>PortableServer</code> package, only the following classes have a <code>narrow</code> method:
|
||||
<UL>
|
||||
<LI><code>ForwardRequestHelper</code>
|
||||
<LI><code>ServantActivatorHelper</code>
|
||||
@ -113,22 +120,31 @@ interface, supply static methods needed to manipulate those types. There is onl
|
||||
<H3>Exceptions</H3>
|
||||
|
||||
<P>The <code>ForwardRequest</code> exception indicates to the ORB
|
||||
that it is responsible for delivering the current request and subsequent <code>ForwardRequest</code> requests to the object denoted in the
|
||||
<code>forward_reference</code> member of the exception.
|
||||
that it is responsible for delivering the current request and
|
||||
subsequent <code>ForwardRequest</code> requests to the object denoted in the
|
||||
<code>forward_reference</code> member of the exception.
|
||||
|
||||
<H3>Interfaces Implemented by the Application Programmer</H3>
|
||||
|
||||
<P>Most of what <code>PortableServer</code> does is transparent to the user. The result is that programmers will use only a few of the interfaces mentioned above. The remaining interfaces will be provided by the ORB implementation. The interfaces of interest to application programmers are the following:
|
||||
<P>
|
||||
<P>Most of what <code>PortableServer</code> does is transparent to the user.
|
||||
The result is that programmers will use only a few of the interfaces mentioned above.
|
||||
The remaining interfaces will be provided by the ORB implementation.
|
||||
The interfaces of interest to application programmers are the following:
|
||||
<ul>
|
||||
<LI><code>AdapterActivator</code>
|
||||
<P>Adapter activators are associated with POAs. An adapter activator supplies a POA with the ability to create child POAs on demand, as a side-effect of receiving a request that names the child POA (or one of its children), or when <code>find_POA</code> is called with an activate parameter value of <code>TRUE</code>. An application server that creates all its needed POAs at the beginning of execution does not need to use or provide an adapter activator; it is necessary only for the case in which POAs need to be created during request processing.
|
||||
<P>
|
||||
<LI><code>ServantLocator</code>
|
||||
<P>When the POA has the <code>NON_RETAIN</code> policy, it uses servant managers that are <code>ServantLocator</code>s.
|
||||
<P>
|
||||
<LI><code>ServantActivator</code>
|
||||
<P>When the POA has the <code>RETAIN</code> policy, it uses servant managers that are <code>ServantActivator</code>s.
|
||||
<LI><code>AdapterActivator</code>
|
||||
<P>Adapter activators are associated with POAs.
|
||||
An adapter activator supplies a POA with the ability to create child POAs on demand,
|
||||
as a side-effect of receiving a request that names the child POA (or one of its children),
|
||||
or when <code>find_POA</code> is called with an activate parameter value of <code>TRUE</code>.
|
||||
An application server that creates all its needed POAs at the beginning of execution
|
||||
does not need to use or provide an adapter activator; it is necessary
|
||||
only for the case in which POAs need to be created during request processing.
|
||||
<LI><code>ServantLocator</code>
|
||||
<P>When the POA has the <code>NON_RETAIN</code> policy,
|
||||
it uses servant managers that are <code>ServantLocator</code>s.
|
||||
<LI><code>ServantActivator</code>
|
||||
<P>When the POA has the <code>RETAIN</code> policy,
|
||||
it uses servant managers that are <code>ServantActivator</code>s.
|
||||
</ul>
|
||||
|
||||
|
||||
@ -141,13 +157,11 @@ follows exactly the same pattern as the other holder classes for basic types.
|
||||
<H2>Related Documentation</H2>
|
||||
|
||||
<P>For an overview of Java IDL, please see:
|
||||
<P>
|
||||
<LI><A HREF="../../../../technotes/guides/idl/index.html">Java IDL home page</A>.
|
||||
<A HREF="../../../../technotes/guides/idl/index.html">Java IDL home page</A>.
|
||||
|
||||
<H2>Example Code</H2>
|
||||
<a name="sampleserver"></a>
|
||||
<H3>Example Server Code</H3>
|
||||
<P>
|
||||
<PRE>
|
||||
import javax.naming.InitialContext;
|
||||
import javax.naming.Context;
|
||||
@ -209,9 +223,6 @@ public class HelloServer {
|
||||
|
||||
|
||||
|
||||
<P>
|
||||
|
||||
|
||||
@since 1.4
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<!--
|
||||
|
||||
Copyright (c) 1999, 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 1999, 2015, 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
|
||||
@ -68,7 +68,7 @@
|
||||
the Java[tm] Platform, Standard Edition 6 ORB complies, see <A
|
||||
HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
|
||||
support in Java[tm] SE 6</A>.
|
||||
<p>
|
||||
|
||||
@since 1.3
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -3,7 +3,7 @@
|
||||
<title>org.omg.stub.java.rmi package</title>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2000, 2015, 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
|
||||
@ -32,7 +32,7 @@
|
||||
<body bgcolor="white">
|
||||
Contains RMI-IIOP Stubs for the Remote types that occur in the
|
||||
<tt>java.rmi</tt> package.
|
||||
<p>
|
||||
|
||||
@since 1.3
|
||||
<br>
|
||||
@serial exclude
|
||||
|
@ -458,3 +458,10 @@ e0947f58c9c1426aa0d98b98ebb78357b27a7b99 jdk9-b50
|
||||
effd5ef0c3eb4bb85aa975c489d6761dbf13ad6a jdk9-b53
|
||||
c3b117fa5bdedfafd9ed236403e6d406911195b1 jdk9-b54
|
||||
be49ab55e5c498c5077bbf58c2737100d1992339 jdk9-b55
|
||||
fd2d5ec7e7b16c7bf4043a7fe7cfd8af96b819e2 jdk9-b56
|
||||
56a85ffe743d3f9d70ba25d6ce82ddd2ad1bf33c jdk9-b57
|
||||
ee878f3d6732856f7725c590312bfbe2ffa52cc7 jdk9-b58
|
||||
96bcaec07cb165782bae1b9a1f28450b37a10e3a jdk9-b59
|
||||
9c916db4bf3bc164a47b5a9cefe5ffd71e111f6a jdk9-b60
|
||||
715d2da5801c410746e92f08066d53bde1496286 jdk9-b61
|
||||
1eab877142cce6ca06e556e2ad0af688f993f00b jdk9-b62
|
||||
|
@ -37,7 +37,9 @@ public class GenCollectedHeap extends SharedHeap {
|
||||
private static CIntegerField nGensField;
|
||||
private static AddressField youngGenField;
|
||||
private static AddressField oldGenField;
|
||||
private static AddressField genSpecsField;
|
||||
|
||||
private static AddressField youngGenSpecField;
|
||||
private static AddressField oldGenSpecField;
|
||||
|
||||
private static GenerationFactory genFactory;
|
||||
|
||||
@ -55,9 +57,12 @@ public class GenCollectedHeap extends SharedHeap {
|
||||
nGensField = type.getCIntegerField("_n_gens");
|
||||
youngGenField = type.getAddressField("_young_gen");
|
||||
oldGenField = type.getAddressField("_old_gen");
|
||||
genSpecsField = type.getAddressField("_gen_specs");
|
||||
|
||||
genFactory = new GenerationFactory();
|
||||
|
||||
Type collectorPolicyType = db.lookupType("GenCollectorPolicy");
|
||||
youngGenSpecField = collectorPolicyType.getAddressField("_young_gen_spec");
|
||||
oldGenSpecField = collectorPolicyType.getAddressField("_old_gen_spec");
|
||||
}
|
||||
|
||||
public GenCollectedHeap(Address addr) {
|
||||
@ -115,21 +120,23 @@ public class GenCollectedHeap extends SharedHeap {
|
||||
/** Package-private access to GenerationSpecs */
|
||||
GenerationSpec spec(int level) {
|
||||
if (Assert.ASSERTS_ENABLED) {
|
||||
Assert.that((level >= 0) && (level < nGens()), "Index " + level +
|
||||
" out of range (should be between 0 and " + nGens() + ")");
|
||||
Assert.that((level == 0) || (level == 1), "Index " + level +
|
||||
" out of range (should be 0 or 1)");
|
||||
}
|
||||
|
||||
if ((level < 0) || (level >= nGens())) {
|
||||
if ((level != 0) && (level != 1)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
Address ptrList = genSpecsField.getValue(addr);
|
||||
if (ptrList == null) {
|
||||
return null;
|
||||
if (level == 0) {
|
||||
return (GenerationSpec)
|
||||
VMObjectFactory.newObject(GenerationSpec.class,
|
||||
youngGenSpecField.getAddress());
|
||||
} else {
|
||||
return (GenerationSpec)
|
||||
VMObjectFactory.newObject(GenerationSpec.class,
|
||||
oldGenSpecField.getAddress());
|
||||
}
|
||||
return (GenerationSpec)
|
||||
VMObjectFactory.newObject(GenerationSpec.class,
|
||||
ptrList.getAddressAt(level * VM.getVM().getAddressSize()));
|
||||
}
|
||||
|
||||
public CollectedHeapName kind() {
|
||||
|
@ -123,6 +123,7 @@ public class VM {
|
||||
|
||||
private static Type intxType;
|
||||
private static Type uintxType;
|
||||
private static Type sizetType;
|
||||
private static CIntegerType boolType;
|
||||
private Boolean sharingEnabled;
|
||||
private Boolean compressedOopsEnabled;
|
||||
@ -175,7 +176,7 @@ public class VM {
|
||||
|
||||
public long getIntx() {
|
||||
if (Assert.ASSERTS_ENABLED) {
|
||||
Assert.that(isIntx(), "not a intx flag!");
|
||||
Assert.that(isIntx(), "not an intx flag!");
|
||||
}
|
||||
return addr.getCIntegerAt(0, intxType.getSize(), false);
|
||||
}
|
||||
@ -191,6 +192,17 @@ public class VM {
|
||||
return addr.getCIntegerAt(0, uintxType.getSize(), true);
|
||||
}
|
||||
|
||||
public boolean isSizet() {
|
||||
return type.equals("size_t");
|
||||
}
|
||||
|
||||
public long getSizet() {
|
||||
if (Assert.ASSERTS_ENABLED) {
|
||||
Assert.that(isSizet(), "not a size_t flag!");
|
||||
}
|
||||
return addr.getCIntegerAt(0, sizetType.getSize(), true);
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
if (isBool()) {
|
||||
return new Boolean(getBool()).toString();
|
||||
@ -198,6 +210,8 @@ public class VM {
|
||||
return new Long(getIntx()).toString();
|
||||
} else if (isUIntx()) {
|
||||
return new Long(getUIntx()).toString();
|
||||
} else if (isSizet()) {
|
||||
return new Long(getSizet()).toString();
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
@ -323,6 +337,7 @@ public class VM {
|
||||
|
||||
intxType = db.lookupType("intx");
|
||||
uintxType = db.lookupType("uintx");
|
||||
sizetType = db.lookupType("size_t");
|
||||
boolType = (CIntegerType) db.lookupType("bool");
|
||||
|
||||
minObjAlignmentInBytes = getObjectAlignmentInBytes();
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, 2015, 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
|
||||
@ -63,10 +63,6 @@ public class PPC64Frame extends Frame {
|
||||
// Entry frames
|
||||
private static int ENTRY_FRAME_CALL_WRAPPER_OFFSET;
|
||||
|
||||
// Native frames
|
||||
private static int NATIVE_FRAME_INITIAL_PARAM_OFFSET;
|
||||
|
||||
|
||||
static {
|
||||
VM.registerVMInitializedObserver(new Observer() {
|
||||
public void update(Observable o, Object data) {
|
||||
@ -76,10 +72,8 @@ public class PPC64Frame extends Frame {
|
||||
}
|
||||
|
||||
private static synchronized void initialize(TypeDataBase db) {
|
||||
int abi_minframe_size = db.lookupIntConstant("frame::abi_minframe_size").intValue();
|
||||
int entry_frame_locals_size = db.lookupIntConstant("frame::entry_frame_locals_size").intValue();
|
||||
int wordLength = (int) VM.getVM().getAddressSize();
|
||||
NATIVE_FRAME_INITIAL_PARAM_OFFSET = -abi_minframe_size/wordLength;
|
||||
ENTRY_FRAME_CALL_WRAPPER_OFFSET = -entry_frame_locals_size/wordLength;
|
||||
}
|
||||
|
||||
@ -389,13 +383,6 @@ public class PPC64Frame extends Frame {
|
||||
// Return address:
|
||||
public Address getSenderPC() { return getSenderSP().getAddressAt(2 * VM.getVM().getAddressSize()); }
|
||||
|
||||
// return address of param, zero origin index.
|
||||
// MPJ note: Appears to be unused.
|
||||
public Address getNativeParamAddr(int idx) {
|
||||
return null;
|
||||
// return addressOfStackSlot(NATIVE_FRAME_INITIAL_PARAM_OFFSET + idx);
|
||||
}
|
||||
|
||||
public Address getSenderSP() { return getFP(); }
|
||||
public Address addressOfInterpreterFrameLocals() {
|
||||
return addressOfStackSlot(INTERPRETER_FRAME_LOCALS_OFFSET);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 2015, 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
|
||||
@ -63,9 +63,6 @@ public class X86Frame extends Frame {
|
||||
// Entry frames
|
||||
private static int ENTRY_FRAME_CALL_WRAPPER_OFFSET;
|
||||
|
||||
// Native frames
|
||||
private static final int NATIVE_FRAME_INITIAL_PARAM_OFFSET = 2;
|
||||
|
||||
private static VMReg rbp;
|
||||
|
||||
static {
|
||||
@ -423,20 +420,12 @@ public class X86Frame extends Frame {
|
||||
return addressOfStackSlot(LINK_OFFSET).getAddressAt(0);
|
||||
}
|
||||
|
||||
// FIXME: not implementable yet
|
||||
//inline void frame::set_link(intptr_t* addr) { *(intptr_t **)addr_at(link_offset) = addr; }
|
||||
|
||||
public Address getUnextendedSP() { return raw_unextendedSP; }
|
||||
|
||||
// Return address:
|
||||
public Address getSenderPCAddr() { return addressOfStackSlot(RETURN_ADDR_OFFSET); }
|
||||
public Address getSenderPC() { return getSenderPCAddr().getAddressAt(0); }
|
||||
|
||||
// return address of param, zero origin index.
|
||||
public Address getNativeParamAddr(int idx) {
|
||||
return addressOfStackSlot(NATIVE_FRAME_INITIAL_PARAM_OFFSET + idx);
|
||||
}
|
||||
|
||||
public Address getSenderSP() { return addressOfStackSlot(SENDER_SP_OFFSET); }
|
||||
|
||||
public Address addressOfInterpreterFrameLocals() {
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 1999, 2015, 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
|
||||
@ -233,7 +233,7 @@ checks: check_os_version check_j2se_version
|
||||
# Solaris 2.5.1, 2.6).
|
||||
# Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
|
||||
|
||||
SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3%
|
||||
SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3% 4%
|
||||
OS_VERSION := $(shell uname -r)
|
||||
EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
|
||||
|
||||
|
@ -207,13 +207,18 @@ ifeq ($(USE_CLANG), true)
|
||||
WARNINGS_ARE_ERRORS += -Wno-return-type -Wno-empty-body
|
||||
endif
|
||||
|
||||
WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wunused-value -Wformat=2 -Wreturn-type
|
||||
WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wunused-value -Wformat=2 -Wreturn-type -Woverloaded-virtual
|
||||
|
||||
ifeq ($(USE_CLANG),)
|
||||
# Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit
|
||||
# conversions which might affect the values. Only enable it in earlier versions.
|
||||
ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
|
||||
WARNING_FLAGS += -Wconversion
|
||||
endif
|
||||
ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 8 \) \))" "1"
|
||||
# This flag is only known since GCC 4.3. Gcc 4.8 contains a fix so that with templates no
|
||||
# warnings are issued: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=11856
|
||||
WARNING_FLAGS += -Wtype-limits
|
||||
endif
|
||||
endif
|
||||
|
||||
|
@ -74,7 +74,8 @@ LP64=1
|
||||
|
||||
!if "$(BUILDARCH)" == "i486"
|
||||
MACHINE=I386
|
||||
CXX_FLAGS=$(CXX_FLAGS) /D "IA32"
|
||||
# VS2013 generates bad l2f without /arch:IA32
|
||||
CXX_FLAGS=$(CXX_FLAGS) /D "IA32" /arch:IA32
|
||||
!endif
|
||||
|
||||
CXX_FLAGS=$(CXX_FLAGS) /D "WIN32" /D "_WINDOWS"
|
||||
|
@ -69,6 +69,7 @@ ProjectCreatorIncludesPRIVATE=\
|
||||
-ignorePath ppc \
|
||||
-ignorePath zero \
|
||||
-ignorePath aix \
|
||||
-ignorePath aarch64 \
|
||||
-hidePath .hg
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -24,11 +24,13 @@ dnl Process this file with m4 aarch64_ad.m4 to generate the arithmetic
|
||||
dnl and shift patterns patterns used in aarch64.ad.
|
||||
dnl
|
||||
// BEGIN This section of the file is automatically generated. Do not edit --------------
|
||||
|
||||
dnl
|
||||
define(`ORL2I', `ifelse($1,I,orL2I)')
|
||||
dnl
|
||||
define(`BASE_SHIFT_INSN',
|
||||
`
|
||||
instruct $2$1_reg_$4_reg(iReg$1NoSp dst,
|
||||
iReg$1 src1, iReg$1 src2,
|
||||
iReg$1`'ORL2I($1) src1, iReg$1`'ORL2I($1) src2,
|
||||
immI src3, rFlagsReg cr) %{
|
||||
match(Set dst ($2$1 src1 ($4$1 src2 src3)));
|
||||
|
||||
@ -48,7 +50,7 @@ instruct $2$1_reg_$4_reg(iReg$1NoSp dst,
|
||||
define(`BASE_INVERTED_INSN',
|
||||
`
|
||||
instruct $2$1_reg_not_reg(iReg$1NoSp dst,
|
||||
iReg$1 src1, iReg$1 src2, imm$1_M1 m1,
|
||||
iReg$1`'ORL2I($1) src1, iReg$1`'ORL2I($1) src2, imm$1_M1 m1,
|
||||
rFlagsReg cr) %{
|
||||
dnl This ifelse is because hotspot reassociates (xor (xor ..)..)
|
||||
dnl into this canonical form.
|
||||
@ -70,7 +72,7 @@ dnl into this canonical form.
|
||||
define(`INVERTED_SHIFT_INSN',
|
||||
`
|
||||
instruct $2$1_reg_$4_not_reg(iReg$1NoSp dst,
|
||||
iReg$1 src1, iReg$1 src2,
|
||||
iReg$1`'ORL2I($1) src1, iReg$1`'ORL2I($1) src2,
|
||||
immI src3, imm$1_M1 src4, rFlagsReg cr) %{
|
||||
dnl This ifelse is because hotspot reassociates (xor (xor ..)..)
|
||||
dnl into this canonical form.
|
||||
@ -92,7 +94,7 @@ dnl into this canonical form.
|
||||
%}')dnl
|
||||
define(`NOT_INSN',
|
||||
`instruct reg$1_not_reg(iReg$1NoSp dst,
|
||||
iReg$1 src1, imm$1_M1 m1,
|
||||
iReg$1`'ORL2I($1) src1, imm$1_M1 m1,
|
||||
rFlagsReg cr) %{
|
||||
match(Set dst (Xor$1 src1 m1));
|
||||
ins_cost(INSN_COST);
|
||||
@ -113,7 +115,7 @@ define(`BOTH_SHIFT_INSNS',
|
||||
BASE_SHIFT_INSN(L, $1, $2, $3, $4)')dnl
|
||||
dnl
|
||||
define(`BOTH_INVERTED_INSNS',
|
||||
`BASE_INVERTED_INSN(I, $1, $2, $3, $4)
|
||||
`BASE_INVERTED_INSN(I, $1, $2w, $3, $4)
|
||||
BASE_INVERTED_INSN(L, $1, $2, $3, $4)')dnl
|
||||
dnl
|
||||
define(`BOTH_INVERTED_SHIFT_INSNS',
|
||||
@ -149,7 +151,7 @@ define(`EXTEND', `($2$1 (LShift$1 $3 $4) $5)')
|
||||
define(`BFM_INSN',`
|
||||
// Shift Left followed by Shift Right.
|
||||
// This idiom is used by the compiler for the i2b bytecode etc.
|
||||
instruct $4$1(iReg$1NoSp dst, iReg$1 src, immI lshift_count, immI rshift_count)
|
||||
instruct $4$1(iReg$1NoSp dst, iReg$1`'ORL2I($1) src, immI lshift_count, immI rshift_count)
|
||||
%{
|
||||
match(Set dst EXTEND($1, $3, src, lshift_count, rshift_count));
|
||||
// Make sure we are not going to exceed what $4 can do.
|
||||
@ -176,7 +178,7 @@ BFM_INSN(I, 31, URShift, ubfmw)
|
||||
dnl
|
||||
// Bitfield extract with shift & mask
|
||||
define(`BFX_INSN',
|
||||
`instruct $3$1(iReg$1NoSp dst, iReg$1 src, immI rshift, imm$1_bitmask mask)
|
||||
`instruct $3$1(iReg$1NoSp dst, iReg$1`'ORL2I($1) src, immI rshift, imm$1_bitmask mask)
|
||||
%{
|
||||
match(Set dst (And$1 ($2$1 src rshift) mask));
|
||||
|
||||
@ -215,7 +217,7 @@ instruct ubfxIConvI2L(iRegLNoSp dst, iRegIorL2I src, immI rshift, immI_bitmask m
|
||||
// Rotations
|
||||
|
||||
define(`EXTRACT_INSN',
|
||||
`instruct extr$3$1(iReg$1NoSp dst, iReg$1 src1, iReg$1 src2, immI lshift, immI rshift, rFlagsReg cr)
|
||||
`instruct extr$3$1(iReg$1NoSp dst, iReg$1`'ORL2I($1) src1, iReg$1`'ORL2I($1) src2, immI lshift, immI rshift, rFlagsReg cr)
|
||||
%{
|
||||
match(Set dst ($3$1 (LShift$1 src1 lshift) (URShift$1 src2 rshift)));
|
||||
predicate(0 == ((n->in(1)->in(2)->get_int() + n->in(2)->in(2)->get_int()) & $2));
|
||||
@ -299,7 +301,7 @@ ROR_INSN(I, 0, ror)
|
||||
// Add/subtract (extended)
|
||||
dnl ADD_SUB_EXTENDED(mode, size, add node, shift node, insn, shift type, wordsize
|
||||
define(`ADD_SUB_CONV', `
|
||||
instruct $3Ext$1(iReg$2NoSp dst, iReg$2 src1, iReg$1orL2I src2, rFlagsReg cr)
|
||||
instruct $3Ext$1(iReg$2NoSp dst, iReg$2`'ORL2I($2) src1, iReg$1`'ORL2I($1) src2, rFlagsReg cr)
|
||||
%{
|
||||
match(Set dst ($3$2 src1 (ConvI2L src2)));
|
||||
ins_cost(INSN_COST);
|
||||
@ -315,7 +317,7 @@ ADD_SUB_CONV(I,L,Add,add,sxtw);
|
||||
ADD_SUB_CONV(I,L,Sub,sub,sxtw);
|
||||
dnl
|
||||
define(`ADD_SUB_EXTENDED', `
|
||||
instruct $3Ext$1_$6(iReg$1NoSp dst, iReg$1 src1, iReg$1 src2, immI_`'eval($7-$2) lshift, immI_`'eval($7-$2) rshift, rFlagsReg cr)
|
||||
instruct $3Ext$1_$6(iReg$1NoSp dst, iReg$1`'ORL2I($1) src1, iReg$1`'ORL2I($1) src2, immI_`'eval($7-$2) lshift, immI_`'eval($7-$2) rshift, rFlagsReg cr)
|
||||
%{
|
||||
match(Set dst ($3$1 src1 EXTEND($1, $4, src2, lshift, rshift)));
|
||||
ins_cost(INSN_COST);
|
||||
@ -337,7 +339,7 @@ ADD_SUB_EXTENDED(L,8,Add,URShift,add,uxtb,64)
|
||||
dnl
|
||||
dnl ADD_SUB_ZERO_EXTEND(mode, size, add node, insn, shift type)
|
||||
define(`ADD_SUB_ZERO_EXTEND', `
|
||||
instruct $3Ext$1_$5_and(iReg$1NoSp dst, iReg$1 src1, iReg$1 src2, imm$1_$2 mask, rFlagsReg cr)
|
||||
instruct $3Ext$1_$5_and(iReg$1NoSp dst, iReg$1`'ORL2I($1) src1, iReg$1`'ORL2I($1) src2, imm$1_$2 mask, rFlagsReg cr)
|
||||
%{
|
||||
match(Set dst ($3$1 src1 (And$1 src2 mask)));
|
||||
ins_cost(INSN_COST);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
@ -136,12 +136,7 @@
|
||||
entry_frame_call_wrapper_offset = -8,
|
||||
|
||||
// we don't need a save area
|
||||
arg_reg_save_area_bytes = 0,
|
||||
|
||||
// TODO - check that this is still correct
|
||||
// Native frames
|
||||
|
||||
native_frame_initial_param_offset = 2
|
||||
arg_reg_save_area_bytes = 0
|
||||
|
||||
};
|
||||
|
||||
@ -195,9 +190,6 @@
|
||||
|
||||
inline address* sender_pc_addr() const;
|
||||
|
||||
// return address of param, zero origin index.
|
||||
inline address* native_param_addr(int idx) const;
|
||||
|
||||
// expression stack tos if we are nested in a java call
|
||||
intptr_t* interpreter_frame_last_sp() const;
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
@ -77,12 +77,6 @@ inline frame::frame(intptr_t* sp, intptr_t* fp, address pc) {
|
||||
inline frame::frame(intptr_t* sp, intptr_t* unextended_sp, intptr_t* fp, address pc) {
|
||||
intptr_t a = intptr_t(sp);
|
||||
intptr_t b = intptr_t(fp);
|
||||
#ifndef PRODUCT
|
||||
if (fp)
|
||||
if (sp > fp || (fp - sp > 0x100000))
|
||||
for(;;)
|
||||
asm("nop");
|
||||
#endif
|
||||
_sp = sp;
|
||||
_unextended_sp = unextended_sp;
|
||||
_fp = fp;
|
||||
@ -104,12 +98,6 @@ inline frame::frame(intptr_t* sp, intptr_t* unextended_sp, intptr_t* fp, address
|
||||
inline frame::frame(intptr_t* sp, intptr_t* fp) {
|
||||
intptr_t a = intptr_t(sp);
|
||||
intptr_t b = intptr_t(fp);
|
||||
#ifndef PRODUCT
|
||||
if (fp)
|
||||
if (sp > fp || (fp - sp > 0x100000))
|
||||
for(;;)
|
||||
asm("nop");
|
||||
#endif
|
||||
_sp = sp;
|
||||
_unextended_sp = sp;
|
||||
_fp = fp;
|
||||
@ -166,7 +154,6 @@ inline bool frame::is_older(intptr_t* id) const { assert(this->id() != NULL &&
|
||||
|
||||
|
||||
inline intptr_t* frame::link() const { return (intptr_t*) *(intptr_t **)addr_at(link_offset); }
|
||||
inline void frame::set_link(intptr_t* addr) { *(intptr_t **)addr_at(link_offset) = addr; }
|
||||
|
||||
|
||||
inline intptr_t* frame::unextended_sp() const { return _unextended_sp; }
|
||||
@ -176,9 +163,6 @@ inline intptr_t* frame::unextended_sp() const { return _unextended_sp; }
|
||||
inline address* frame::sender_pc_addr() const { return (address*) addr_at( return_addr_offset); }
|
||||
inline address frame::sender_pc() const { return *sender_pc_addr(); }
|
||||
|
||||
// return address of param, zero origin index.
|
||||
inline address* frame::native_param_addr(int idx) const { return (address*) addr_at( native_frame_initial_param_offset+idx); }
|
||||
|
||||
#ifdef CC_INTERP
|
||||
|
||||
inline interpreterState frame::get_interpreterState() const {
|
||||
|
@ -39,6 +39,8 @@ class InterpreterMacroAssembler: public MacroAssembler {
|
||||
protected:
|
||||
|
||||
protected:
|
||||
using MacroAssembler::call_VM_leaf_base;
|
||||
|
||||
// Interpreter specific version of call_VM_base
|
||||
virtual void call_VM_leaf_base(address entry_point,
|
||||
int number_of_arguments);
|
||||
|
@ -32,22 +32,14 @@
|
||||
|
||||
#include "compiler/disassembler.hpp"
|
||||
#include "memory/resourceArea.hpp"
|
||||
#include "nativeInst_aarch64.hpp"
|
||||
#include "opto/compile.hpp"
|
||||
#include "opto/node.hpp"
|
||||
#include "runtime/biasedLocking.hpp"
|
||||
#include "runtime/icache.hpp"
|
||||
#include "runtime/interfaceSupport.hpp"
|
||||
#include "runtime/sharedRuntime.hpp"
|
||||
|
||||
// #include "gc_interface/collectedHeap.inline.hpp"
|
||||
// #include "interpreter/interpreter.hpp"
|
||||
// #include "memory/cardTableModRefBS.hpp"
|
||||
// #include "prims/methodHandles.hpp"
|
||||
// #include "runtime/biasedLocking.hpp"
|
||||
// #include "runtime/interfaceSupport.hpp"
|
||||
// #include "runtime/objectMonitor.hpp"
|
||||
// #include "runtime/os.hpp"
|
||||
// #include "runtime/sharedRuntime.hpp"
|
||||
// #include "runtime/stubRoutines.hpp"
|
||||
|
||||
#if INCLUDE_ALL_GCS
|
||||
#include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
|
||||
#include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp"
|
||||
|
@ -60,7 +60,10 @@ class RegisterImpl: public AbstractRegisterImpl {
|
||||
bool has_byte_register() const { return 0 <= (intptr_t)this && (intptr_t)this < number_of_byte_registers; }
|
||||
const char* name() const;
|
||||
int encoding_nocheck() const { return (intptr_t)this; }
|
||||
unsigned long bit(bool yes = true) const { return yes << encoding(); }
|
||||
|
||||
// Return the bit which represents this register. This is intended
|
||||
// to be ORed into a bitmask: for usage see class RegSet below.
|
||||
unsigned long bit(bool should_set = true) const { return should_set ? 1 << encoding() : 0; }
|
||||
};
|
||||
|
||||
// The integer registers of the aarch64 architecture
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
@ -673,7 +673,6 @@ class StubGenerator: public StubCodeGenerator {
|
||||
void gen_write_ref_array_pre_barrier(Register addr, Register count, bool dest_uninitialized) {
|
||||
BarrierSet* bs = Universe::heap()->barrier_set();
|
||||
switch (bs->kind()) {
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
// With G1, don't generate the call if we statically know that the target in uninitialized
|
||||
if (!dest_uninitialized) {
|
||||
@ -719,7 +718,6 @@ class StubGenerator: public StubCodeGenerator {
|
||||
assert_different_registers(start, end, scratch);
|
||||
BarrierSet* bs = Universe::heap()->barrier_set();
|
||||
switch (bs->kind()) {
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
|
||||
{
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
@ -150,7 +150,6 @@ static void do_oop_store(InterpreterMacroAssembler* _masm,
|
||||
assert(val == noreg || val == r0, "parameter is just for looks");
|
||||
switch (barrier) {
|
||||
#if INCLUDE_ALL_GCS
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
{
|
||||
// flatten object address if needed
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2012, 2014 SAP AG. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
@ -49,7 +49,7 @@ define_pd_global(intx, FreqInlineSize, 175);
|
||||
define_pd_global(intx, MinJumpTableSize, 10);
|
||||
define_pd_global(intx, INTPRESSURE, 25);
|
||||
define_pd_global(intx, InteriorEntryAlignment, 16);
|
||||
define_pd_global(intx, NewSizeThreadIncrease, ScaleForWordSize(4*K));
|
||||
define_pd_global(size_t, NewSizeThreadIncrease, ScaleForWordSize(4*K));
|
||||
define_pd_global(intx, RegisterCostAreaRatio, 16000);
|
||||
define_pd_global(bool, UseTLAB, true);
|
||||
define_pd_global(bool, ResizeTLAB, true);
|
||||
@ -85,14 +85,14 @@ define_pd_global(intx, NonNMethodCodeHeapSize, 5*M );
|
||||
define_pd_global(intx, CodeCacheExpansionSize, 64*K);
|
||||
|
||||
// Ergonomics related flags
|
||||
define_pd_global(uint64_t,MaxRAM, 4ULL*G);
|
||||
define_pd_global(uint64_t, MaxRAM, 4ULL*G);
|
||||
define_pd_global(uintx, CodeCacheMinBlockLength, 4);
|
||||
define_pd_global(uintx, CodeCacheMinimumUseSpace, 400*K);
|
||||
|
||||
define_pd_global(bool, TrapBasedRangeChecks, true);
|
||||
|
||||
// Heap related flags
|
||||
define_pd_global(uintx,MetaspaceSize, ScaleForWordSize(16*M));
|
||||
define_pd_global(size_t, MetaspaceSize, ScaleForWordSize(16*M));
|
||||
|
||||
// Ergonomics related flags
|
||||
define_pd_global(bool, NeverActAsServerClassMachine, false);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2012, 2013 SAP AG. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
@ -56,7 +56,7 @@ define_pd_global(bool, RewriteFrequentPairs, true);
|
||||
define_pd_global(bool, UseMembar, false);
|
||||
|
||||
// GC Ergo Flags
|
||||
define_pd_global(uintx, CMSYoungGenPerWorker, 16*M); // Default max size of CMS young gen, per GC worker thread.
|
||||
define_pd_global(size_t, CMSYoungGenPerWorker, 16*M); // Default max size of CMS young gen, per GC worker thread.
|
||||
|
||||
define_pd_global(uintx, TypeProfileLevel, 0);
|
||||
|
||||
|
@ -4416,11 +4416,11 @@ operand immF() %{
|
||||
interface(CONST_INTER);
|
||||
%}
|
||||
|
||||
// constant 'float +0.0'.
|
||||
// Float Immediate: +0.0f.
|
||||
operand immF_0() %{
|
||||
predicate((n->getf() == 0) &&
|
||||
(fpclassify(n->getf()) == FP_ZERO) && (signbit(n->getf()) == 0));
|
||||
predicate(jint_cast(n->getf()) == 0);
|
||||
match(ConF);
|
||||
|
||||
op_cost(0);
|
||||
format %{ %}
|
||||
interface(CONST_INTER);
|
||||
|
@ -608,7 +608,6 @@ class StubGenerator: public StubCodeGenerator {
|
||||
void gen_write_ref_array_pre_barrier(Register from, Register to, Register count, bool dest_uninitialized, Register Rtmp1) {
|
||||
BarrierSet* const bs = Universe::heap()->barrier_set();
|
||||
switch (bs->kind()) {
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
// With G1, don't generate the call if we statically know that the target in uninitialized
|
||||
if (!dest_uninitialized) {
|
||||
@ -665,7 +664,6 @@ class StubGenerator: public StubCodeGenerator {
|
||||
BarrierSet* const bs = Universe::heap()->barrier_set();
|
||||
|
||||
switch (bs->kind()) {
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
{
|
||||
if (branchToEnd) {
|
||||
|
@ -66,7 +66,6 @@ static void do_oop_store(InterpreterMacroAssembler* _masm,
|
||||
|
||||
switch (barrier) {
|
||||
#if INCLUDE_ALL_GCS
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
{
|
||||
// Load and record the previous value.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, 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
|
||||
@ -53,10 +53,10 @@ define_pd_global(intx, NonNMethodCodeHeapSize, 5*M );
|
||||
define_pd_global(intx, CodeCacheExpansionSize, 32*K );
|
||||
define_pd_global(uintx, CodeCacheMinBlockLength, 1);
|
||||
define_pd_global(uintx, CodeCacheMinimumUseSpace, 400*K);
|
||||
define_pd_global(uintx, MetaspaceSize, 12*M );
|
||||
define_pd_global(size_t, MetaspaceSize, 12*M );
|
||||
define_pd_global(bool, NeverActAsServerClassMachine, true );
|
||||
define_pd_global(intx, NewSizeThreadIncrease, 16*K );
|
||||
define_pd_global(uint64_t,MaxRAM, 1ULL*G);
|
||||
define_pd_global(size_t, NewSizeThreadIncrease, 16*K );
|
||||
define_pd_global(uint64_t, MaxRAM, 1ULL*G);
|
||||
define_pd_global(intx, InitialCodeCacheSize, 160*K);
|
||||
#endif // !TIERED
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, 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
|
||||
@ -51,7 +51,7 @@ define_pd_global(intx, FLOATPRESSURE, 52); // C2 on V9 gets to u
|
||||
define_pd_global(intx, FreqInlineSize, 175);
|
||||
define_pd_global(intx, INTPRESSURE, 48); // large register set
|
||||
define_pd_global(intx, InteriorEntryAlignment, 16); // = CodeEntryAlignment
|
||||
define_pd_global(intx, NewSizeThreadIncrease, ScaleForWordSize(4*K));
|
||||
define_pd_global(size_t, NewSizeThreadIncrease, ScaleForWordSize(4*K));
|
||||
define_pd_global(intx, RegisterCostAreaRatio, 12000);
|
||||
define_pd_global(bool, UseTLAB, true);
|
||||
define_pd_global(bool, ResizeTLAB, true);
|
||||
@ -90,7 +90,7 @@ define_pd_global(intx, ProfiledCodeHeapSize, 14*M);
|
||||
define_pd_global(intx, NonNMethodCodeHeapSize, 5*M );
|
||||
define_pd_global(intx, CodeCacheExpansionSize, 32*K);
|
||||
// Ergonomics related flags
|
||||
define_pd_global(uint64_t,MaxRAM, 4ULL*G);
|
||||
define_pd_global(uint64_t, MaxRAM, 4ULL*G);
|
||||
#endif
|
||||
define_pd_global(uintx, CodeCacheMinBlockLength, 4);
|
||||
define_pd_global(uintx, CodeCacheMinimumUseSpace, 400*K);
|
||||
@ -98,7 +98,7 @@ define_pd_global(uintx, CodeCacheMinimumUseSpace, 400*K);
|
||||
define_pd_global(bool, TrapBasedRangeChecks, false); // Not needed on sparc.
|
||||
|
||||
// Heap related flags
|
||||
define_pd_global(uintx,MetaspaceSize, ScaleForWordSize(16*M));
|
||||
define_pd_global(size_t, MetaspaceSize, ScaleForWordSize(16*M));
|
||||
|
||||
// Ergonomics related flags
|
||||
define_pd_global(bool, NeverActAsServerClassMachine, false);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, 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
|
||||
@ -69,8 +69,6 @@ inline int frame::frame_size(RegisterMap* map) const { return sender_sp() - sp()
|
||||
|
||||
inline intptr_t* frame::link() const { return (intptr_t *)(fp()[FP->sp_offset_in_saved_window()] + STACK_BIAS); }
|
||||
|
||||
inline void frame::set_link(intptr_t* addr) { assert(link()==addr, "frame nesting is controlled by hardware"); }
|
||||
|
||||
inline intptr_t* frame::unextended_sp() const { return sp() + _sp_adjustment_by_callee; }
|
||||
|
||||
// return address:
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, 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
|
||||
@ -75,7 +75,7 @@ define_pd_global(bool, RewriteFrequentPairs, true);
|
||||
define_pd_global(bool, UseMembar, false);
|
||||
|
||||
// GC Ergo Flags
|
||||
define_pd_global(uintx, CMSYoungGenPerWorker, 16*M); // default max size of CMS young gen, per GC worker thread
|
||||
define_pd_global(size_t, CMSYoungGenPerWorker, 16*M); // default max size of CMS young gen, per GC worker thread
|
||||
|
||||
define_pd_global(uintx, TypeProfileLevel, 0);
|
||||
|
||||
|
@ -3758,13 +3758,9 @@ operand immD() %{
|
||||
interface(CONST_INTER);
|
||||
%}
|
||||
|
||||
// Double Immediate: +0.0d
|
||||
operand immD0() %{
|
||||
#ifdef _LP64
|
||||
// on 64-bit architectures this comparision is faster
|
||||
predicate(jlong_cast(n->getd()) == 0);
|
||||
#else
|
||||
predicate((n->getd() == 0) && (fpclass(n->getd()) == FP_PZERO));
|
||||
#endif
|
||||
match(ConD);
|
||||
|
||||
op_cost(0);
|
||||
@ -3781,9 +3777,9 @@ operand immF() %{
|
||||
interface(CONST_INTER);
|
||||
%}
|
||||
|
||||
// Float Immediate: 0
|
||||
// Float Immediate: +0.0f
|
||||
operand immF0() %{
|
||||
predicate((n->getf() == 0) && (fpclass(n->getf()) == FP_PZERO));
|
||||
predicate(jint_cast(n->getf()) == 0);
|
||||
match(ConF);
|
||||
|
||||
op_cost(0);
|
||||
|
@ -957,7 +957,6 @@ class StubGenerator: public StubCodeGenerator {
|
||||
void gen_write_ref_array_pre_barrier(Register addr, Register count, bool dest_uninitialized) {
|
||||
BarrierSet* bs = Universe::heap()->barrier_set();
|
||||
switch (bs->kind()) {
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
// With G1, don't generate the call if we statically know that the target in uninitialized
|
||||
if (!dest_uninitialized) {
|
||||
@ -1005,7 +1004,6 @@ class StubGenerator: public StubCodeGenerator {
|
||||
BarrierSet* bs = Universe::heap()->barrier_set();
|
||||
|
||||
switch (bs->kind()) {
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
{
|
||||
// Get some new fresh output registers.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, 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
|
||||
@ -56,7 +56,6 @@ static void do_oop_store(InterpreterMacroAssembler* _masm,
|
||||
assert(index == noreg || offset == 0, "only one offset");
|
||||
switch (barrier) {
|
||||
#if INCLUDE_ALL_GCS
|
||||
case BarrierSet::G1SATBCT:
|
||||
case BarrierSet::G1SATBCTLogging:
|
||||
{
|
||||
// Load and record the previous value.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, 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
|
||||
@ -32,39 +32,39 @@
|
||||
// (see c1_globals.hpp)
|
||||
|
||||
#ifndef TIERED
|
||||
define_pd_global(bool, BackgroundCompilation, true );
|
||||
define_pd_global(bool, UseTLAB, true );
|
||||
define_pd_global(bool, ResizeTLAB, true );
|
||||
define_pd_global(bool, InlineIntrinsics, true );
|
||||
define_pd_global(bool, PreferInterpreterNativeStubs, false);
|
||||
define_pd_global(bool, ProfileTraps, false);
|
||||
define_pd_global(bool, UseOnStackReplacement, true );
|
||||
define_pd_global(bool, TieredCompilation, false);
|
||||
define_pd_global(intx, CompileThreshold, 1500 );
|
||||
define_pd_global(bool, BackgroundCompilation, true );
|
||||
define_pd_global(bool, UseTLAB, true );
|
||||
define_pd_global(bool, ResizeTLAB, true );
|
||||
define_pd_global(bool, InlineIntrinsics, true );
|
||||
define_pd_global(bool, PreferInterpreterNativeStubs, false);
|
||||
define_pd_global(bool, ProfileTraps, false);
|
||||
define_pd_global(bool, UseOnStackReplacement, true );
|
||||
define_pd_global(bool, TieredCompilation, false);
|
||||
define_pd_global(intx, CompileThreshold, 1500 );
|
||||
|
||||
define_pd_global(intx, OnStackReplacePercentage, 933 );
|
||||
define_pd_global(intx, FreqInlineSize, 325 );
|
||||
define_pd_global(intx, NewSizeThreadIncrease, 4*K );
|
||||
define_pd_global(intx, InitialCodeCacheSize, 160*K);
|
||||
define_pd_global(intx, ReservedCodeCacheSize, 32*M );
|
||||
define_pd_global(intx, NonProfiledCodeHeapSize, 13*M );
|
||||
define_pd_global(intx, ProfiledCodeHeapSize, 14*M );
|
||||
define_pd_global(intx, NonNMethodCodeHeapSize, 5*M );
|
||||
define_pd_global(bool, ProfileInterpreter, false);
|
||||
define_pd_global(intx, CodeCacheExpansionSize, 32*K );
|
||||
define_pd_global(uintx, CodeCacheMinBlockLength, 1);
|
||||
define_pd_global(uintx, CodeCacheMinimumUseSpace, 400*K);
|
||||
define_pd_global(uintx, MetaspaceSize, 12*M );
|
||||
define_pd_global(bool, NeverActAsServerClassMachine, true );
|
||||
define_pd_global(uint64_t,MaxRAM, 1ULL*G);
|
||||
define_pd_global(bool, CICompileOSR, true );
|
||||
define_pd_global(intx, OnStackReplacePercentage, 933 );
|
||||
define_pd_global(intx, FreqInlineSize, 325 );
|
||||
define_pd_global(size_t, NewSizeThreadIncrease, 4*K );
|
||||
define_pd_global(intx, InitialCodeCacheSize, 160*K);
|
||||
define_pd_global(intx, ReservedCodeCacheSize, 32*M );
|
||||
define_pd_global(intx, NonProfiledCodeHeapSize, 13*M );
|
||||
define_pd_global(intx, ProfiledCodeHeapSize, 14*M );
|
||||
define_pd_global(intx, NonNMethodCodeHeapSize, 5*M );
|
||||
define_pd_global(bool, ProfileInterpreter, false);
|
||||
define_pd_global(intx, CodeCacheExpansionSize, 32*K );
|
||||
define_pd_global(uintx, CodeCacheMinBlockLength, 1 );
|
||||
define_pd_global(uintx, CodeCacheMinimumUseSpace, 400*K);
|
||||
define_pd_global(size_t, MetaspaceSize, 12*M );
|
||||
define_pd_global(bool, NeverActAsServerClassMachine, true );
|
||||
define_pd_global(uint64_t, MaxRAM, 1ULL*G);
|
||||
define_pd_global(bool, CICompileOSR, true );
|
||||
#endif // !TIERED
|
||||
define_pd_global(bool, UseTypeProfile, false);
|
||||
define_pd_global(bool, RoundFPResults, true );
|
||||
define_pd_global(bool, UseTypeProfile, false);
|
||||
define_pd_global(bool, RoundFPResults, true );
|
||||
|
||||
define_pd_global(bool, LIRFillDelaySlots, false);
|
||||
define_pd_global(bool, OptimizeSinglePrecision, true );
|
||||
define_pd_global(bool, CSEArrayLength, false);
|
||||
define_pd_global(bool, TwoOperandLIRForm, true );
|
||||
define_pd_global(bool, LIRFillDelaySlots, false);
|
||||
define_pd_global(bool, OptimizeSinglePrecision, true );
|
||||
define_pd_global(bool, CSEArrayLength, false);
|
||||
define_pd_global(bool, TwoOperandLIRForm, true );
|
||||
|
||||
#endif // CPU_X86_VM_C1_GLOBALS_X86_HPP
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user