/hg/release/icedtea7-forest-2.3/corba: 2 new changesets
andrew at icedtea.classpath.org
andrew at icedtea.classpath.org
Tue Jun 18 14:19:40 PDT 2013
changeset 6655779a22c3 in /hg/release/icedtea7-forest-2.3/corba
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=6655779a22c3
author: coffeys
date: Fri Apr 26 18:26:12 2013 +0100
8000642: Better handling of objects for transportation
Summary: Also reviewed by alexander.fomin
Reviewed-by: alanb, mchung, skoivu
changeset 8e581b671511 in /hg/release/icedtea7-forest-2.3/corba
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=8e581b671511
author: coffeys
date: Mon Apr 08 23:12:03 2013 +0100
8001032: Restrict object access
Summary: Restrict object access; fix reviewed also by Alexander Fomin
Reviewed-by: alanb, ahgross
diffstat:
make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk | 3 +-
src/share/classes/com/sun/corba/se/impl/activation/ServerManagerImpl.java | 3 +-
src/share/classes/com/sun/corba/se/impl/corba/AnyImpl.java | 12 +-
src/share/classes/com/sun/corba/se/impl/corba/TypeCodeImpl.java | 5 +-
src/share/classes/com/sun/corba/se/impl/encoding/IDLJavaSerializationOutputStream.java | 4 +-
src/share/classes/com/sun/corba/se/impl/encoding/TypeCodeOutputStream.java | 8 +-
src/share/classes/com/sun/corba/se/impl/interceptors/CDREncapsCodec.java | 5 +-
src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java | 3 +-
src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java | 18 +-
src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java | 8 +-
src/share/classes/com/sun/corba/se/impl/io/IIOPOutputStream.java | 10 +-
src/share/classes/com/sun/corba/se/impl/io/InputStreamHook.java | 2 +-
src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java | 2 +-
src/share/classes/com/sun/corba/se/impl/io/ValueUtility.java | 10 +-
src/share/classes/com/sun/corba/se/impl/ior/EncapsulationUtility.java | 3 +-
src/share/classes/com/sun/corba/se/impl/ior/GenericTaggedProfile.java | 5 +-
src/share/classes/com/sun/corba/se/impl/ior/IORImpl.java | 8 +-
src/share/classes/com/sun/corba/se/impl/ior/ObjectKeyImpl.java | 3 +-
src/share/classes/com/sun/corba/se/impl/ior/TaggedComponentFactoryFinderImpl.java | 5 +-
src/share/classes/com/sun/corba/se/impl/ior/iiop/IIOPProfileImpl.java | 5 +-
src/share/classes/com/sun/corba/se/impl/ior/iiop/IIOPProfileTemplateImpl.java | 7 +-
src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java | 11 +-
src/share/classes/com/sun/corba/se/impl/orb/ORBDataParserImpl.java | 3 +-
src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java | 5 +-
src/share/classes/com/sun/corba/se/impl/orb/ORBSingleton.java | 4 +-
src/share/classes/com/sun/corba/se/impl/orb/ParserTable.java | 22 +-
src/share/classes/com/sun/corba/se/impl/orbutil/ORBClassLoader.java | 47 ---
src/share/classes/com/sun/corba/se/impl/orbutil/ORBUtility.java | 8 +-
src/share/classes/com/sun/corba/se/impl/protocol/CorbaMessageMediatorImpl.java | 22 +-
src/share/classes/com/sun/corba/se/impl/protocol/giopmsgheaders/LocateReplyMessage_1_2.java | 3 +-
src/share/classes/com/sun/corba/se/impl/protocol/giopmsgheaders/MessageBase.java | 8 +-
src/share/classes/com/sun/corba/se/impl/protocol/giopmsgheaders/ReplyMessage_1_0.java | 3 +-
src/share/classes/com/sun/corba/se/impl/protocol/giopmsgheaders/ReplyMessage_1_1.java | 3 +-
src/share/classes/com/sun/corba/se/impl/transport/CorbaContactInfoBase.java | 4 +-
src/share/classes/com/sun/corba/se/impl/transport/SharedCDRContactInfoImpl.java | 4 +-
src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelAcceptorImpl.java | 8 +-
src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelConnectionImpl.java | 6 +-
src/share/classes/com/sun/corba/se/spi/ior/TaggedComponentBase.java | 5 +-
src/share/classes/com/sun/corba/se/spi/orb/ORB.java | 6 +-
src/share/classes/com/sun/corba/se/spi/orb/OperationFactory.java | 8 +-
src/share/classes/com/sun/corba/se/spi/servicecontext/ServiceContext.java | 5 +-
src/share/classes/org/omg/CORBA_2_3/portable/OutputStream.java | 40 ++-
src/share/classes/sun/corba/JavaCorbaAccess.java | 3 +-
src/share/classes/sun/corba/OutputStreamFactory.java | 149 ++++++++++
44 files changed, 339 insertions(+), 167 deletions(-)
diffs (truncated from 1336 to 500 lines):
diff -r d483d101f145 -r 8e581b671511 make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk
--- a/make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk Wed May 22 17:42:08 2013 +0100
+++ b/make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2000, 2013, 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
@@ -39,7 +39,6 @@
com/sun/corba/se/impl/orbutil/ObjectStreamClassUtil_1_3.java \
com/sun/corba/se/impl/orbutil/ORBConstants.java \
com/sun/corba/se/impl/orbutil/ORBUtility.java \
- com/sun/corba/se/impl/orbutil/ORBClassLoader.java \
com/sun/corba/se/impl/orbutil/RepIdDelegator.java \
com/sun/corba/se/impl/orbutil/RepositoryIdFactory.java \
com/sun/corba/se/impl/orbutil/RepositoryIdStrings.java \
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/activation/ServerManagerImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/activation/ServerManagerImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/activation/ServerManagerImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2013, 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
@@ -81,7 +81,6 @@
import com.sun.corba.se.impl.oa.poa.BadServerIdHandler;
import com.sun.corba.se.impl.orbutil.ORBConstants;
-import com.sun.corba.se.impl.orbutil.ORBClassLoader;
import com.sun.corba.se.impl.orbutil.ORBUtility;
import com.sun.corba.se.impl.util.Utility;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/corba/AnyImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/corba/AnyImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/corba/AnyImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,8 @@
import java.io.Serializable;
import java.math.BigDecimal;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
import java.util.List ;
import java.util.ArrayList ;
@@ -504,7 +506,13 @@
public org.omg.CORBA.portable.OutputStream create_output_stream()
{
//debug.log ("create_output_stream");
- return new AnyOutputStream(orb);
+ final ORB finalorb = this.orb;
+ return AccessController.doPrivileged(new PrivilegedAction<AnyOutputStream>() {
+ @Override
+ public AnyOutputStream run() {
+ return new AnyOutputStream(finalorb);
+ }
+ });
}
/**
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/corba/TypeCodeImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/corba/TypeCodeImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/corba/TypeCodeImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2013, 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
@@ -600,7 +600,8 @@
}
public static CDROutputStream newOutputStream(ORB orb) {
- TypeCodeOutputStream tcos = new TypeCodeOutputStream((ORB)orb);
+ TypeCodeOutputStream tcos =
+ sun.corba.OutputStreamFactory.newTypeCodeOutputStream(orb);
//if (debug) System.out.println("Created TypeCodeOutputStream " + tcos +
// " with no parent");
return tcos;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/encoding/IDLJavaSerializationOutputStream.java
--- a/src/share/classes/com/sun/corba/se/impl/encoding/IDLJavaSerializationOutputStream.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/encoding/IDLJavaSerializationOutputStream.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2013, 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
@@ -66,7 +66,7 @@
*
* @author Ram Jeyaraman
*/
-public class IDLJavaSerializationOutputStream extends CDROutputStreamBase {
+final class IDLJavaSerializationOutputStream extends CDROutputStreamBase {
private ORB orb;
private byte encodingVersion;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/encoding/TypeCodeOutputStream.java
--- a/src/share/classes/com/sun/corba/se/impl/encoding/TypeCodeOutputStream.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/encoding/TypeCodeOutputStream.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2013, 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
@@ -196,7 +196,8 @@
}
public TypeCodeOutputStream createEncapsulation(org.omg.CORBA.ORB _orb) {
- TypeCodeOutputStream encap = new TypeCodeOutputStream((ORB)_orb, isLittleEndian());
+ TypeCodeOutputStream encap =
+ sun.corba.OutputStreamFactory.newTypeCodeOutputStream((ORB)_orb, isLittleEndian());
encap.setEnclosingOutputStream(this);
encap.makeEncapsulation();
//if (TypeCodeImpl.debug) System.out.println("Created TypeCodeOutputStream " + encap + " with parent " + this);
@@ -211,7 +212,8 @@
public static TypeCodeOutputStream wrapOutputStream(OutputStream os) {
boolean littleEndian = ((os instanceof CDROutputStream) ? ((CDROutputStream)os).isLittleEndian() : false);
- TypeCodeOutputStream tos = new TypeCodeOutputStream((ORB)os.orb(), littleEndian);
+ TypeCodeOutputStream tos =
+ sun.corba.OutputStreamFactory.newTypeCodeOutputStream((ORB)os.orb(), littleEndian);
tos.setEnclosingOutputStream(os);
//if (TypeCodeImpl.debug) System.out.println("Created TypeCodeOutputStream " + tos + " with parent " + os);
return tos;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/interceptors/CDREncapsCodec.java
--- a/src/share/classes/com/sun/corba/se/impl/interceptors/CDREncapsCodec.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/interceptors/CDREncapsCodec.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2013, 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
@@ -155,7 +155,8 @@
// be versioned. This can be handled once this work is complete.
// Create output stream with default endianness.
- EncapsOutputStream cdrOut = new EncapsOutputStream(
+ EncapsOutputStream cdrOut =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream(
(com.sun.corba.se.spi.orb.ORB)orb, giopVersion );
// This is an encapsulation, so put out the endian:
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2013, 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
@@ -77,7 +77,6 @@
import com.sun.corba.se.impl.logging.ORBUtilSystemException;
import com.sun.corba.se.impl.logging.OMGSystemException;
import com.sun.corba.se.impl.corba.RequestImpl;
-import com.sun.corba.se.impl.orbutil.ORBClassLoader;
import com.sun.corba.se.impl.orbutil.ORBConstants;
import com.sun.corba.se.impl.orbutil.ORBUtility;
import com.sun.corba.se.impl.orbutil.StackImpl;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2013, 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
@@ -86,13 +86,14 @@
import com.sun.corba.se.impl.encoding.EncapsOutputStream;
import com.sun.corba.se.impl.orbutil.ORBUtility;
-import com.sun.corba.se.impl.orbutil.ORBClassLoader;
import com.sun.corba.se.impl.util.RepositoryId;
import com.sun.corba.se.impl.logging.InterceptorsSystemException;
import com.sun.corba.se.impl.logging.OMGSystemException;
+import sun.corba.SharedSecrets;
+
/**
* Implementation of the RequestInfo interface as specified in
* orbos/99-12-02 section 5.4.1.
@@ -452,7 +453,8 @@
// Find the read method on the helper class:
String helperClassName = className + "Helper";
- Class helperClass = ORBClassLoader.loadClass( helperClassName );
+ Class<?> helperClass =
+ SharedSecrets.getJavaCorbaAccess().loadClass( helperClassName );
Class[] readParams = new Class[1];
readParams[0] = org.omg.CORBA.portable.InputStream.class;
Method readMethod = helperClass.getMethod( "read", readParams );
@@ -512,7 +514,8 @@
Class exceptionClass = userException.getClass();
String className = exceptionClass.getName();
String helperClassName = className + "Helper";
- Class helperClass = ORBClassLoader.loadClass( helperClassName );
+ Class<?> helperClass =
+ SharedSecrets.getJavaCorbaAccess().loadClass( helperClassName );
// Find insert( Any, class ) method
Class[] insertMethodParams = new Class[2];
@@ -656,7 +659,8 @@
// Convert the "core" service context to an
// "IOP" ServiceContext by writing it to a
// CDROutputStream and reading it back.
- EncapsOutputStream out = new EncapsOutputStream(myORB);
+ EncapsOutputStream out =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream(myORB);
context.write( out, GIOPVersion.V1_2 );
InputStream inputStream = out.create_input_stream();
@@ -692,8 +696,8 @@
{
int id = 0 ;
// Convert IOP.service_context to core.ServiceContext:
- EncapsOutputStream outputStream = new EncapsOutputStream(
- myORB );
+ EncapsOutputStream outputStream =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream(myORB);
InputStream inputStream = null;
UnknownServiceContext coreServiceContext = null;
ServiceContextHelper.write( outputStream, service_context );
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java
--- a/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java Mon Apr 08 23:12:03 2013 +0100
@@ -300,11 +300,11 @@
resetStream();
}
- public final void setOrbStream(org.omg.CORBA_2_3.portable.InputStream os) {
+ final void setOrbStream(org.omg.CORBA_2_3.portable.InputStream os) {
orbStream = os;
}
- public final org.omg.CORBA_2_3.portable.InputStream getOrbStream() {
+ final org.omg.CORBA_2_3.portable.InputStream getOrbStream() {
return orbStream;
}
@@ -327,11 +327,11 @@
return (javax.rmi.CORBA.ValueHandler) vhandler;
}
- public final void increaseRecursionDepth(){
+ final void increaseRecursionDepth(){
recursionDepth++;
}
- public final int decreaseRecursionDepth(){
+ final int decreaseRecursionDepth(){
return --recursionDepth;
}
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/io/IIOPOutputStream.java
--- a/src/share/classes/com/sun/corba/se/impl/io/IIOPOutputStream.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/io/IIOPOutputStream.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2013, 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
@@ -124,19 +124,19 @@
}
}
- public final void setOrbStream(org.omg.CORBA_2_3.portable.OutputStream os) {
+ final void setOrbStream(org.omg.CORBA_2_3.portable.OutputStream os) {
orbStream = os;
}
- public final org.omg.CORBA_2_3.portable.OutputStream getOrbStream() {
+ final org.omg.CORBA_2_3.portable.OutputStream getOrbStream() {
return orbStream;
}
- public final void increaseRecursionDepth(){
+ final void increaseRecursionDepth(){
recursionDepth++;
}
- public final int decreaseRecursionDepth(){
+ final int decreaseRecursionDepth(){
return --recursionDepth;
}
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/io/InputStreamHook.java
--- a/src/share/classes/com/sun/corba/se/impl/io/InputStreamHook.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/io/InputStreamHook.java Mon Apr 08 23:12:03 2013 +0100
@@ -251,7 +251,7 @@
}
protected abstract byte getStreamFormatVersion();
- protected abstract org.omg.CORBA_2_3.portable.InputStream getOrbStream();
+ abstract org.omg.CORBA_2_3.portable.InputStream getOrbStream();
// Description of possible actions
protected static class ReadObjectState {
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java
--- a/src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java Mon Apr 08 23:12:03 2013 +0100
@@ -179,7 +179,7 @@
putFields.write(this);
}
- public abstract org.omg.CORBA_2_3.portable.OutputStream getOrbStream();
+ abstract org.omg.CORBA_2_3.portable.OutputStream getOrbStream();
protected abstract void beginOptionalCustomData();
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/io/ValueUtility.java
--- a/src/share/classes/com/sun/corba/se/impl/io/ValueUtility.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/io/ValueUtility.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2013, 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
@@ -98,6 +98,14 @@
public ValueHandlerImpl newValueHandlerImpl() {
return ValueHandlerImpl.getInstance();
}
+ public Class<?> loadClass(String className) throws ClassNotFoundException {
+ if (Thread.currentThread().getContextClassLoader() != null) {
+ return Thread.currentThread().getContextClassLoader().
+ loadClass(className);
+ } else {
+ return ClassLoader.getSystemClassLoader().loadClass(className);
+ }
+ }
});
}
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/ior/EncapsulationUtility.java
--- a/src/share/classes/com/sun/corba/se/impl/ior/EncapsulationUtility.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/ior/EncapsulationUtility.java Mon Apr 08 23:12:03 2013 +0100
@@ -128,7 +128,8 @@
static public void writeEncapsulation( WriteContents obj,
OutputStream os )
{
- EncapsOutputStream out = new EncapsOutputStream( (ORB)os.orb() ) ;
+ EncapsOutputStream out =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream((ORB)os.orb());
out.putEndian() ;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/ior/GenericTaggedProfile.java
--- a/src/share/classes/com/sun/corba/se/impl/ior/GenericTaggedProfile.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/ior/GenericTaggedProfile.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2013, 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
@@ -95,7 +95,8 @@
public org.omg.IOP.TaggedProfile getIOPProfile()
{
- EncapsOutputStream os = new EncapsOutputStream( orb ) ;
+ EncapsOutputStream os =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream(orb);
write( os ) ;
InputStream is = (InputStream)(os.create_input_stream()) ;
return org.omg.IOP.TaggedProfileHelper.read( is ) ;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/ior/IORImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/ior/IORImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/ior/IORImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2013, 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
@@ -213,7 +213,8 @@
{
StringWriter bs;
- MarshalOutputStream s = new EncapsOutputStream(factory);
+ MarshalOutputStream s =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream(factory);
s.putEndian();
write( (OutputStream)s );
bs = new StringWriter();
@@ -237,7 +238,8 @@
}
public org.omg.IOP.IOR getIOPIOR() {
- EncapsOutputStream os = new EncapsOutputStream(factory);
+ EncapsOutputStream os =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream(factory);
write(os);
InputStream is = (InputStream) (os.create_input_stream());
return org.omg.IOP.IORHelper.read(is);
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/ior/ObjectKeyImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/ior/ObjectKeyImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/ior/ObjectKeyImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -87,7 +87,8 @@
public byte[] getBytes( org.omg.CORBA.ORB orb )
{
- EncapsOutputStream os = new EncapsOutputStream( (ORB)orb ) ;
+ EncapsOutputStream os =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream((ORB)orb);
write( os ) ;
return os.toByteArray() ;
}
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/ior/TaggedComponentFactoryFinderImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/ior/TaggedComponentFactoryFinderImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/ior/TaggedComponentFactoryFinderImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2013, 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
@@ -61,7 +61,8 @@
public TaggedComponent create( org.omg.CORBA.ORB orb,
org.omg.IOP.TaggedComponent comp )
{
- EncapsOutputStream os = new EncapsOutputStream( (ORB)orb ) ;
+ EncapsOutputStream os =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream((ORB)orb);
org.omg.IOP.TaggedComponentHelper.write( os, comp ) ;
InputStream is = (InputStream)(os.create_input_stream() ) ;
// Skip the component ID: we just wrote it out above
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/ior/iiop/IIOPProfileImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/ior/iiop/IIOPProfileImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/ior/iiop/IIOPProfileImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2013, 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
@@ -247,7 +247,8 @@
public org.omg.IOP.TaggedProfile getIOPProfile()
{
- EncapsOutputStream os = new EncapsOutputStream( orb ) ;
+ EncapsOutputStream os =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream(orb);
os.write_long( getId() ) ;
write( os ) ;
InputStream is = (InputStream)(os.create_input_stream()) ;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/ior/iiop/IIOPProfileTemplateImpl.java
--- a/src/share/classes/com/sun/corba/se/impl/ior/iiop/IIOPProfileTemplateImpl.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/ior/iiop/IIOPProfileTemplateImpl.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2013, 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
@@ -132,8 +132,9 @@
// Note that this cannot be accomplished with a codec!
// Use the byte order of the given stream
- OutputStream encapsulatedOS = new EncapsOutputStream( (ORB)os.orb(),
- ((CDROutputStream)os).isLittleEndian() ) ;
+ OutputStream encapsulatedOS =
+ sun.corba.OutputStreamFactory.newEncapsOutputStream(
+ (ORB)os.orb(), ((CDROutputStream)os).isLittleEndian() ) ;
okeyTemplate.write( id, encapsulatedOS ) ;
EncapsulationUtility.writeOutputStream( encapsulatedOS, os ) ;
diff -r d483d101f145 -r 8e581b671511 src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java
--- a/src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java Wed May 22 17:42:08 2013 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java Mon Apr 08 23:12:03 2013 +0100
@@ -1,5 +1,5 @@
More information about the distro-pkg-dev
mailing list