Imported GNU Classpath 0.90
Imported GNU Classpath 0.90
* scripts/makemake.tcl: LocaleData.java moved to gnu/java/locale.
* sources.am: Regenerated.
* gcj/javaprims.h: Regenerated.
* Makefile.in: Regenerated.
* gcj/Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* testsuite/Makefile.in: Regenerated.
* gnu/java/lang/VMInstrumentationImpl.java: New override.
* gnu/java/net/local/LocalSocketImpl.java: Likewise.
* gnu/classpath/jdwp/VMMethod.java: Likewise.
* gnu/classpath/jdwp/VMVirtualMachine.java: Update to latest
interface.
* java/lang/Thread.java: Add UncaughtExceptionHandler.
* java/lang/reflect/Method.java: Implements GenericDeclaration and
isSynthetic(),
* java/lang/reflect/Field.java: Likewise.
* java/lang/reflect/Constructor.java
* java/lang/Class.java: Implements Type, GenericDeclaration,
getSimpleName() and getEnclosing*() methods.
* java/lang/Class.h: Add new public methods.
* java/lang/Math.java: Add signum(), ulp() and log10().
* java/lang/natMath.cc (log10): New function.
* java/security/VMSecureRandom.java: New override.
* java/util/logging/Logger.java: Updated to latest classpath
version.
* java/util/logging/LogManager.java: New override.
From-SVN: r113887
This commit is contained in:
@@ -83,6 +83,7 @@ import org.omg.PortableInterceptor.ClientRequestInterceptorOperations;
|
||||
import org.omg.PortableInterceptor.ForwardRequest;
|
||||
import org.omg.PortableInterceptor.InvalidSlot;
|
||||
|
||||
import java.io.EOFException;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
@@ -593,7 +594,7 @@ public class gnuRequest extends Request implements Cloneable
|
||||
{
|
||||
final gnuRequest cloned = Clone();
|
||||
cloned.oneWay = true;
|
||||
|
||||
|
||||
new Thread()
|
||||
{
|
||||
public void run()
|
||||
@@ -717,12 +718,11 @@ public class gnuRequest extends Request implements Cloneable
|
||||
* property ({@link #setIOR(IOR)} before calling this method.
|
||||
*
|
||||
* @throws BAD_INV_ORDER, minor code 0, if the IOR has not been previously set
|
||||
* or if the direct argument addition is mixed with the direct argument
|
||||
* writing into the output stream.
|
||||
*
|
||||
* or if the direct argument addition is mixed with the direct
|
||||
* argument writing into the output stream.
|
||||
* @return the server response in binary form.
|
||||
*/
|
||||
public synchronized RawReply submit()
|
||||
public synchronized RawReply submit()
|
||||
throws ForwardRequest
|
||||
{
|
||||
gnu.CORBA.GIOP.MessageHeader header = new gnu.CORBA.GIOP.MessageHeader();
|
||||
@@ -788,20 +788,21 @@ public class gnuRequest extends Request implements Cloneable
|
||||
|
||||
if (socket == null)
|
||||
{
|
||||
// The BindException may be thrown under very heavy parallel
|
||||
// The IOException may be thrown under very heavy parallel
|
||||
// load. For some time, just wait, exceptiong the socket to free.
|
||||
Open: for (int i = 0; i < PAUSE_STEPS; i++)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (orb instanceof OrbFunctional)
|
||||
socket = ((OrbFunctional) orb).socketFactory.createClientSocket(
|
||||
ior.Internet.host, ior.Internet.port);
|
||||
socket = ((OrbFunctional) orb).socketFactory.
|
||||
createClientSocket(
|
||||
ior.Internet.host, ior.Internet.port);
|
||||
else
|
||||
socket = new Socket(ior.Internet.host, ior.Internet.port);
|
||||
break Open;
|
||||
}
|
||||
catch (BindException ex)
|
||||
catch (IOException ex)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -833,7 +834,7 @@ public class gnuRequest extends Request implements Cloneable
|
||||
request_part.buffer.writeTo(socketOutput);
|
||||
|
||||
socketOutput.flush();
|
||||
if (!socket.isClosed())
|
||||
if (!socket.isClosed() && !oneWay)
|
||||
{
|
||||
MessageHeader response_header = new MessageHeader();
|
||||
InputStream socketInput = socket.getInputStream();
|
||||
@@ -937,6 +938,10 @@ public class gnuRequest extends Request implements Cloneable
|
||||
throws SystemException, ForwardRequest
|
||||
{
|
||||
RawReply response = submit();
|
||||
|
||||
// If this is a one way message, do not care about the response.
|
||||
if (oneWay && response == EMPTY)
|
||||
return;
|
||||
|
||||
if (m_rph == null)
|
||||
m_rph = response.header.create_reply_header();
|
||||
|
||||
Reference in New Issue
Block a user